Static Analysis Tool for Synchronization Analysis, Representation, and Optimizations for Applications Using OpenSHMEM

dc.contributor.advisorChapman, Barbara M.
dc.contributor.committeeMemberSubhlok, Jaspal
dc.contributor.committeeMemberGabriel, Edgar
dc.contributor.committeeMemberShah, Shishir Kirit
dc.contributor.committeeMemberBittner, Eric R.
dc.creatorPophale, Swaroop Suhas 1983-
dc.date.accessioned2014-07-22T12:58:33Z
dc.date.available2014-07-22T12:58:33Z
dc.date.createdMay 2014
dc.date.issued2014-05
dc.date.updated2014-07-22T12:58:33Z
dc.description.abstractProgramming models provide application developers abstraction from the underlying hardware. OpenSHMEM library follows the Partitioned Global Address Space programming model, which is characterized by local and global views of data. The OpenSHMEM library API provides synchronization primitives that require partici- pation of some or all OpenSHMEM processes executing the application (collective). Since most distributed parallel applications spend 30-40% of their execution time performing synchronization, it is a constant struggle for most application programmers to relax the memory consistency constraints while guaranteeing reproducible and correct results. From our experience, we have seen that generally programmers tend to over-synchronize when in doubt, and the best approach towards creating correct, scalable, and performance driven applications is to help programmers leverage opti- mizations based on the semantics of the OpenSHMEM library. Unfortunately, most application developers are not well acquainted with all the nuances of the targeted programming libraries and spend most of their development time focused on the correctness aspect alone. This leads to a need for a framework to provide programmers better understanding of the applications and provide useful feed back making it easier for the application developer to incorporate basic and advanced optimizations into their applications with ease. For this we collaborated with the Oak Ridge National Laboratory (ORNL) to build a compiler-based tool called the OpenSHMEM analyzer (OSA), which makes the OpenUH compiler aware of the OpenSHMEM library semantics. Along with basic semantic checks, the analyzer provides useful feedback at compile time, leading to faster turn around time and lesser wastage of resources in terms of debugging time or failed execution runs.
dc.description.departmentComputer Science, Department of
dc.format.digitalOriginborn digital
dc.format.mimetypeapplication/pdf
dc.identifier.urihttp://hdl.handle.net/10657/701
dc.language.isoeng
dc.rightsThe author of this work is the copyright owner. UH Libraries and the Texas Digital Library have their permission to store and provide access to this work. Further transmission, reproduction, or presentation of this work is prohibited except with permission of the author(s).
dc.subjectCompiler-based tool
dc.subjectPGAS
dc.subjectOpenSHMEM
dc.subject.lcshComputer science
dc.titleStatic Analysis Tool for Synchronization Analysis, Representation, and Optimizations for Applications Using OpenSHMEM
dc.type.dcmiText
dc.type.genreThesis
thesis.degree.collegeCollege of Natural Sciences and Mathematics
thesis.degree.departmentComputer Science, Department of
thesis.degree.disciplineComputer Science
thesis.degree.grantorUniversity of Houston
thesis.degree.levelDoctoral
thesis.degree.nameDoctor of Philosophy

Files

Original bundle

Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
POPHALE-DISSERTATION-2014.pdf
Size:
1.59 MB
Format:
Adobe Portable Document Format

License bundle

Now showing 1 - 1 of 1
No Thumbnail Available
Name:
LICENSE.txt
Size:
1.84 KB
Format:
Plain Text
Description: