TY - GEN
T1 - Understanding Object-level Memory Access Patterns Across the Spectrum
AU - Ji, Xu
AU - Wang, Chao
AU - El-Sayed, Nosayba
AU - Ma, Xiaosong
AU - Kim, Youngjae
AU - Vazhkudai, Sudharshan S.
AU - Xue, Wei
AU - Sanchez, Daniel
N1 - Publisher Copyright:
© 2017 ACM.
PY - 2017
Y1 - 2017
N2 - Memory accesses limit the performance and scalability of countless applications. Many design and optimization efforts will benefit from an in-depth understanding of memory access behavior, which is not offered by extant access tracing and profiling methods.In this paper, we adopt a holistic memory access profiling approach to enable a better understanding of program-system memory interactions. We have developed a two-pass tool adopting fast online and slow offline profiling, with which we have profiled, at the variable/object level, a collection of 38 representative applications spanning major domains (HPC, personal computing, data analytics, AI, graph processing, and datacenter workloads), at varying problem sizes. We have performed detailed result analysis and code examination. Our findings provide new insights into application memory behavior, including insights on per-object access patterns, adoption of data structures, and memory-access changes at different problem sizes. We find that scientific computation applications exhibit distinct behaviors compared to datacenter workloads, motivating separate memory system design/optimizations.
AB - Memory accesses limit the performance and scalability of countless applications. Many design and optimization efforts will benefit from an in-depth understanding of memory access behavior, which is not offered by extant access tracing and profiling methods.In this paper, we adopt a holistic memory access profiling approach to enable a better understanding of program-system memory interactions. We have developed a two-pass tool adopting fast online and slow offline profiling, with which we have profiled, at the variable/object level, a collection of 38 representative applications spanning major domains (HPC, personal computing, data analytics, AI, graph processing, and datacenter workloads), at varying problem sizes. We have performed detailed result analysis and code examination. Our findings provide new insights into application memory behavior, including insights on per-object access patterns, adoption of data structures, and memory-access changes at different problem sizes. We find that scientific computation applications exhibit distinct behaviors compared to datacenter workloads, motivating separate memory system design/optimizations.
KW - Memory profiling
KW - data types and structures
KW - object access patterns
KW - tracing
KW - workload characterization
UR - http://www.scopus.com/inward/record.url?scp=85142291044&partnerID=8YFLogxK
U2 - 10.1145/3126908.3126917
DO - 10.1145/3126908.3126917
M3 - Conference contribution
AN - SCOPUS:85040185017
T3 - International Conference for High Performance Computing, Networking, Storage and Analysis, SC
BT - SC 2017 - International Conference for High Performance Computing, Networking, Storage and Analysis
PB - IEEE Computer Society
T2 - 2017 International Conference for High Performance Computing, Networking, Storage and Analysis, SC 2017
Y2 - 12 November 2017 through 17 November 2017
ER -