Extension of the ECT Benchmark (Extended Copy Transfer Characterization)

Roland Scheidegger

Semester Thesis Winter 2001/2002
Supervisors: C. Kurmann, Prof. T. Stricker
Institute for Computer Systems, ETH Zürich


ECT is a method used to characterize the performance of a memory system. Two aspects of the memory hierarchy are captured: first, the temporal locality (by varying the size of the working set) and second, the spatial locality (by varying the access pattern). With the results gained from the ECT-memperf benchmark it is possible to compare different memory systems as well as optimizing applications.

The memperf benchmark is extended in three ways in this project. First, the benchmark could not run the benchmarking loops multiple times to improve the reliability of the results, so it was necessary to do this manually (by running it several times and then analyzing the output files). Second, the benchmark could use a hardware time counter on some systems instead of a operating system call to improve the precision of the measurements, but it was unable to detect the frequency of those counters, forcing the user to manually typing in the clock frequency of the system. Third, newer cpus have special instructions to improve memory throughput, and the benchmark should be extended to use them to show the benefits of these instructions. In this project, only optimizations for the x86 architecture are considered.


The memperf benchmark can now run the benchmarking loops multiple times and outputs some basic statistical information about the results obtained (so it's possible to verify the correctness of the results). Methods are implemented to detect the frequency reliably on some systems, but for others only a general method is available which might not be reliable. The optimizations done for the x86 architecture show large performance gains in some cases, especially for non-sequential memory write accesses with large working sets (considering the architecture of the memory system, this is however not unexpected).

[ CS-Department | Up ]
ETH Zürich: Department of Computer Science
Comments to Christian Kurmann <kurmann@inf.ethz.ch>