Evaluating thread placement based on memory access patterns for multi-core processors

Matthias Diener, Jörg Schneider, Hans Ulrich Heiß, Felipe L. Madruga, Eduardo R. Rodrigues, Marco A.Z. Alves, Philippe O.A. Navaux

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

Process placement is a technique widely used on parallel machines with heterogeneous interconnects to reduce the overall communication time. For instance, two processes which communicate frequently are mapped close to each other. Finding the optimal mapping between threads and cores in a shared-memory environment (for example, OpenMP and Pthreads) is an even more complex task due to implicit communication. In this work, we examine data sharing patterns between threads in different workloads and use those patterns in a similar way as messages are used to map processes in cluster computers. We evaluated our technique on a state-of-the-art multicore processor and achieved moderate improvements in the common case and considerable improvements in some cases, reducing execution time by up to 45%.

Original languageEnglish (US)
Title of host publicationProceedings - 2010 12th IEEE International Conference on High Performance Computing and Communications, HPCC 2010
Pages491-496
Number of pages6
DOIs
StatePublished - 2010
Externally publishedYes
Event2010 12th IEEE International Conference on High Performance Computing and Communications, HPCC 2010 - Melbourne, VIC, Australia
Duration: Sep 1 2010Sep 3 2010

Publication series

NameProceedings - 2010 12th IEEE International Conference on High Performance Computing and Communications, HPCC 2010

Conference

Conference2010 12th IEEE International Conference on High Performance Computing and Communications, HPCC 2010
Country/TerritoryAustralia
CityMelbourne, VIC
Period9/1/109/3/10

Keywords

  • Memory access patterns
  • Multi-core processor
  • Process mapping
  • Shared cache
  • Thread placement

ASJC Scopus subject areas

  • Computational Theory and Mathematics
  • Theoretical Computer Science

Fingerprint

Dive into the research topics of 'Evaluating thread placement based on memory access patterns for multi-core processors'. Together they form a unique fingerprint.

Cite this