DocumentCode
2484578
Title
Towards efficient shared memory communications in MPJ express
Author
Shafi, Aamir ; Manzoor, Jawad
Author_Institution
Sch. of Electr. Eng. & Comput. Sci., Nat. Univ. of Sci. & Technol., Pakistan
fYear
2009
fDate
23-29 May 2009
Firstpage
1
Lastpage
7
Abstract
The need to increase performance while conserving energy lead to the emergence of multi-core processors. These processors provide a feasible option to improve performance of software applications by increasing the number of cores, instead of relying on increased clock speed of a single core. The uptake of multi-core processors by hardware vendors present variety of challenges to the software community. In this context, it is important that messaging libraries based on the message passing interface (MPI) standard support efficient inter-core communication. Typically processing cores of today´s commercial multi-core processors share the main memory. As a result, it is vital to develop devices to exploit this. MPJ Express is our implementation of the MPI-like Java bindings. The software has mainly supported communication with two devices; the first is based on Java New I/O (NIO) and the second is based on Myrinet. In this paper, we present two shared memory implementations meant for providing efficient communication of multi-core and SMP clusters. The first implementation is pure Java and uses Java threads to exploit multiple cores. Each Java thread represents anMPI level OS process and communication between these threads is achieved using shared data structures. The second implementation is based on the System V (SysV) IPC API. Our goal is to achieve better communication performance than already existing devices based on transmission control protocol (TCP) and Myrinet on SMP and multi-core platforms. Another design goal is that existing parallel applications must not be modified for this purpose, thus relieving application developers from extra efforts of porting their applications to such modern clusters. We have benchmarked our implementations and report that threads-based device performs the best on an Intel quad-core Xeon cluster.
Keywords
Java; application program interfaces; message passing; microprocessor chips; parallel processing; shared memory systems; software libraries; workstation clusters; Intel quad-core Xeon cluster; Java New I-O; Java threads; MPI level OS process; MPI-like Java bindings; MPJ express; Myrinet; SMP clusters; System V IPC API; clock speed; intercore communication; message passing interface standard; messaging libraries; multicore clusters; multicore processors; parallel applications; shared data structures; shared memory communications; transmission control protocol; Application software; Clocks; Context; Hardware; Java; Message passing; Multicore processing; Software libraries; Software performance; Yarn; Java HPC; MPJ Express; Multi-core Programming; Shared Memory Communications;
fLanguage
English
Publisher
ieee
Conference_Titel
Parallel & Distributed Processing, 2009. IPDPS 2009. IEEE International Symposium on
Conference_Location
Rome
ISSN
1530-2075
Print_ISBN
978-1-4244-3751-1
Electronic_ISBN
1530-2075
Type
conf
DOI
10.1109/IPDPS.2009.5161083
Filename
5161083
Link To Document