Pegasus: Efficient data transfers for PGAS languages on non-cache-coherent many-cores

Publikationstyp
Konferenz
Autor(en)
M. Mohr and C. Tradowsky
Jahr
2017
Seiten
1781-1786
Monat
March
Buchtitel
Design, Automation Test in Europe Conference Exhibition (DATE), 2017
Abstract
To improve scalability, some many-core architectures abandon global cache coherence, but still provide a shared address space. Partitioning the shared memory and communicating via messages is a safe way of programming such machines. However, accessing pointered data structures from a foreign memory partition is expensive due to the required serialization. In this paper, we propose a novel data transfer technique that avoids serialization overhead for pointered data structures by managing cache coherence in software at object granularity. We show that for PGAS programming languages, the compiler and runtime system can completely handle the necessary cache management, thus requiring no changes to application code. Moreover, we explain how cache operations working on address ranges complement our data transfer technique. We propose a novel non-blocking implementation of range-based cache operations by offloading them to an enhanced cache controller. We evaluate our approach on a non-cache-coherent many-core architecture using a distributed-kernel benchmark suite and demonstrate a reduction of communication time of up to 39.8%.
DOI
10.23919/DATE.2017.7927281
Download .bib
Download .bib
Eingetragen von
Carsten Tradowsky