Title
On the conditions for efficient interoperability with threads: an experience with PGAS languages using cray communication domains
Abstract
Today's high performance systems are typically built from shared memory nodes connected by a high speed network. That architecture, combined with the trend towards less memory per core, encourages programmers to use a mixture of message passing and multithreaded programming. Unfortunately, the advantages of using threads for in-node programming are hindered by their inability to efficiently communicate between nodes. In this work, we identify some of the performance problems that arise in such hybrid programming environments and characterize conditions needed to achieve high communication performance for multiple threads: addressability of targets, separability of communication paths, and full direct reachability to targets. Using the GASNet communication layer on the Cray XC30 as our experimental platform, we show how to satisfy these conditions. We also discuss how satisfying these conditions is influenced by the communication abstraction, implementation constraints, and the interconnect messaging capabilities. To evaluate these ideas, we compare the communication performance of a thread-based node runtime to a process-based runtime. Without our GASNet extensions, thread communication is significantly slower than processes--up to 21x slower. Once the implementation is modified to address each of our conditions, the two runtimes have comparable communication performance. This allows programmers to more easily mix models like OpenMP, CILK, or pthreads with a GASNet-based model like UPC, with the associated performance, convenience and interoperability advantages that come from using threads within a node.
Year
DOI
Venue
2014
10.1145/2597652.2597657
I4CS
Keywords
Field
DocType
programming languages,interoperability,distributed programming,communication paradigms,processes,threads
Shared memory,Interoperability,Computer science,Parallel computing,Thread (computing),Real-time computing,POSIX Threads,Partitioned global address space,Cilk,Green threads,Message passing,Distributed computing
Conference
Citations 
PageRank 
References 
3
0.44
9
Authors
2
Name
Order
Citations
PageRank
Khaled Z. Ibrahim121521.25
Katherine A. Yelick23494407.23