A Mess of Memory System Benchmarking, Simulation and Application Profiling
arxiv(2024)
Abstract
The Memory stress (Mess) framework provides a unified view of the memory
system benchmarking, simulation and application profiling. The Mess benchmark
provides a holistic and detailed memory system characterization. It is based on
hundreds of measurements that are represented as a family of bandwidth–latency
curves. The benchmark increases the coverage of all the previous tools and
leads to new findings in the behavior of the actual and simulated memory
systems. We deploy the Mess benchmark to characterize Intel, AMD, IBM, Fujitsu,
Amazon and NVIDIA servers with DDR4, DDR5, HBM2 and HBM2E memory. The Mess
analytical memory simulator uses bandwidth–latency concept for the memory
performance simulation. We integrate Mess with widely-used CPUs simulators
enabling modeling of all high-end memory technologies. The Mess simulator is
fast, easy to integrate and it closely matches the actual system performance.
By design, it enables a quick adoption of new memory technologies in hardware
simulators. Finally, the Mess application profiling positions the application
in the bandwidth–latency space of the target memory system. This information
can be correlated with other application runtime activities and the source
code, leading to a better overall understanding of the application's behavior.
The current Mess benchmark release covers all major CPU and GPU ISAs, x86, ARM,
Power, RISC-V, and NVIDIA's PTX. We also release as open source the ZSim, gem5
and OpenPiton Metro-MPI integrated with the Mess simulator for DDR4, DDR5,
Optane, HBM2, HBM2E and CXL memory expanders. The Mess application profiling is
already integrated into a suite of production HPC performance analysis tools.
MoreTranslated text
AI Read Science
Must-Reading Tree
Example
![](https://originalfileserver.aminer.cn/sys/aminer/pubs/mrt_preview.jpeg)
Generate MRT to find the research sequence of this paper
Chat Paper
Summary is being generated by the instructions you defined