Analyzing memory access patterns of programs on alpha-based architectures
Susanne M. Balle, Simon C. Steely · 1998
The development of efficient algorithms on today’s high-performance computers is far from straightforward. Applications need to take full advantage of the computer system’s deep memory hierarchy, and this implies that the user must know exactly how his or her implementation is executed. The ability to understand or predict the execution path without looking at the machine code can be very difficult with today’s compilers. By using the outputs from an experimental memory access profiling tool, the programmer can compare memory access patterns of different algorithms and gain insight into the algorithm’s behavior, e.g., potential bottlenecks resulting from memory accesses.