Title :
Impact of Data Structure Layout on Performance
Author :
Faria, N. ; Silva, R. ; Sobral, J.L.
Author_Institution :
CCTC / DI, Univ. do Minho, Braga, Portugal
fDate :
Feb. 27 2013-March 1 2013
Abstract :
One key issue to design parallel applications that scale on multicore systems is how to overcome the memory bottleneck. This paper presents a study of the impact of data structure layouts in locality of memory references, providing insights on strategies to ameliorate the memory bottleneck. The paper compares the performance of Java and C++ STL collections and presents the impact of locality of reference optimisations in a molecular dynamics simulation case study. The case study shows that the selected data structure layout has impact on single core performance, becoming a critical factor in the application scalability on multicore systems. Moreover, data collections provided in the Java language compromise performance due to pointer chasing and lack of spatial locality of memory references.
Keywords :
C++ language; Java; data structures; molecular dynamics method; multiprocessing systems; parallel processing; storage management; C++ STL collections; Java language; application scalability; data collections; data structure layout impact; memory bottleneck; memory references; molecular dynamics simulation case study; multicore systems; parallel applications; reference optimisation locality impact; Arrays; Benchmark testing; Java; Layout; Multicore processing; Scalability; Java; collections; locality; multicore;
Conference_Titel :
Parallel, Distributed and Network-Based Processing (PDP), 2013 21st Euromicro International Conference on
Conference_Location :
Belfast
Print_ISBN :
978-1-4673-5321-2
Electronic_ISBN :
1066-6192
DOI :
10.1109/PDP.2013.24