Show simple item record

dc.contributor.advisor Lumsdaine, Andrew en_US Barrett, Brian William en_US 2010-06-15T16:57:53Z 2012-04-02T14:33:41Z 2010-06-15T16:57:53Z 2009 en_US
dc.description Thesis (Ph.D.) - Indiana University, Computer Sciences, 2009 en_US
dc.description.abstract Parallel programming presents a number of critical challenges to application developers. Traditionally, message passing, in which a process explicitly sends data and another explicitly receives the data, has been used to program parallel applications. With the recent growth in multi-core processors, the level of parallelism necessary for next generation machines is cause for concern in the message passing community. The one-sided programming paradigm, in which only one of the two processes involved in communication actively participates in message transfer, has seen increased interest as a potential replacement for message passing. One-sided communication does not carry the heavy per-message overhead associated with modern message passing libraries. The paradigm offers lower synchronization costs and advanced data manipulation techniques such as remote atomic arithmetic and synchronization operations. These combine to present an appealing interface for applications with random communication patterns, which traditionally present message passing implementations with difficulties. This thesis presents a taxonomy of both the one-sided paradigm and of applications which are ideal for the one-sided interface. Three case studies, based on real-world applications, are used to motivate both taxonomies and verify the applicability of the MPI one-sided communication and Cray SHMEM one-sided interfaces to real-world problems. While our results show a number of short-comings with existing implementations, they also suggest that a number of applications could benefit from the one-sided paradigm. Finally, an implementation of the MPI one-sided interface within Open MPI is presented, which provides a number of unique performance features necessary for efficient use of the one-sided programming paradigm. en_US
dc.language.iso EN en_US
dc.publisher [Bloomington, Ind.] : Indiana University en_US
dc.subject one-sided en_US
dc.subject hpc en_US
dc.subject One-Sided Communication
dc.subject High Performance Computing
dc.subject.classification Computer Science en_US
dc.title One-Sided Communication for High Performance Computing Applications en_US
dc.type Doctoral Dissertation en_US

Files in this item

This item appears in the following Collection(s)

Show simple item record

Search IUScholarWorks

Advanced Search


My Account