Skip to main content



Memory bandwidth

developerWorks

   Results  |   More

64 bit memory bandwidth improvements from Novell/SUSE LINUX Enterprise Server 7 (SLES 7) to SLES 8

Performance tests with SLES 7 on zSeries showed that the 64 bit kernel had some deficiencies concerning memory bandwidth.

The following charts show some microbenchmarks from the LMbench test suite designed for measuring kernel performance.

We used differently scaled y-axes for better reading.

The y-axis shows the memory throughput in MB per second, the x-axis shows the size of the buffers read/written in KB.

The typical chart should show a cascade: A relatively constant value as long as the operations can be done in first level cache, then a lower value as long as the run can be handled in the second level cache, and finally a value when “real” memory has to be used.

Memory Read Bandwidth (SLES 7 LPAR on zSeries 900)

Memory Write Bandwidth (SLES 7 LPAR on zSeries 900)

libc bcopy aligned (SLES 7 LPAR on zSeries 900)

The charts show that in general the bandwidth on the 64 bit system is slightly lower than on the 31 bit system.

Also on 64 bit the cascades happen earlier which indicates that the cache utilization is not as effective as on 31 bit. The libc bcopy aligned test shows some severe degradation in the first level cache range.

Several fixes and performance boosters - including a cache coloring mechanism to specifically handle the cache usage problem - were included in the code. With SLES 8 SP3 we see a completely different results for 64bit can be seen.

The following charts show the test results. The absolute throughput values are higher, because we used different machine types for the tests. (Note: The absolute numbers are higher, but that is mainly due to the different machines types we used for the tests. The cache coloring fix was verified on zSeries 900 with an IBM internal driver.)

A change from IBM eServer zSeries 900 to zSeries 990 did not resolve the cache problem.

Memory Read Bandwidth (SLES 8 LPAR on zSeries 990)

Memory Write Bandwidth (SLES 8 LPAR on zSeries 990)

libc bcopy aligned (SLES 8 LPAR on zSeries 990)

The 64 bit numbers are now slightly better than or at least equal to the 31 bit numbers.

The cascading effect appears at the same buffer sizes for 31 bit and 64 bit so the cache utilization efficiency of the 64 bit kernel caught up with the 31 bit kernel.

Test environment
  • IBM eServer zSeries 900 (2064-216), zSeries 990 (2084-316)
  • SLES 7, SLES 8 SP3 31 bit and 64 bit
  • LPAR with 4 CPUs and 2 GB Memory
  • LMbench 2.0-patch2

Back to top


Document options

Document options requiring JavaScript are not displayed


Team
Please address any comments to the performance team: linux390@de.ibm.com