AutoMatch: Automated Matching of Compute Kernels to Heterogeneous HPC Architectures

dc.contributor.authorHelal, Ahmed E.en
dc.contributor.authorFeng, Wu-chunen
dc.contributor.authorJung, Changheeen
dc.contributor.authorHanafy, Yasser Y.en
dc.contributor.departmentComputer Scienceen
dc.date.accessioned2016-12-14T16:20:14Zen
dc.date.available2016-12-14T16:20:14Zen
dc.date.issued2016-12-13en
dc.description.abstractHPC systems contain a wide variety of heterogeneous computing resources, ranging from general-purpose CPUs to specialized accelerators. Porting sequential applications to such systems for achieving high performance requires significant software and hardware expertise as well as extensive manual analysis of both the target architectures and applications to decide the best performing architecture and implementation technique for each application. To streamline this tedious process, this paper presents AutoMatch, a tool for automated matching of compute kernels to heterogeneous HPC architectures. AutoMatch analyzes the sequential application code and automatically predicts the performance of the best parallel implementation of its compute kernels on different hardware architectures. AutoMatch leverages such prediction results to identify the best device for each kernel from a set of devices including multi-core CPUs and many-core GPUs. In addition, it estimates the relative execution cost between the different architectures to drive a workload distribution scheme, which enables end users to efficiently exploit the available compute resources across multiple heterogeneous architectures. We demonstrate the efficacy of AutoMatch, using a set of open-source HPC applications and benchmarks with different parallelism profiles and memory-access patterns. The empirical evaluation shows that AutoMatch is highly accurate across five different heterogeneous architectures, identifying the best architecture for each workload in 96% of the test cases, and its workload distribution scheme has a comparable performance to a profiling-driven oracle.en
dc.identifier.trnumberTR-16-06en
dc.identifier.urihttp://hdl.handle.net/10919/73693en
dc.language.isoenen
dc.publisherDepartment of Computer Science, Virginia Polytechnic Institute & State Universityen
dc.relation.ispartofComputer Science Technical Reportsen
dc.rightsIn Copyrighten
dc.rights.urihttp://rightsstatements.org/vocab/InC/1.0/en
dc.subjectArchitectureen
dc.subjectComputer Systemsen
dc.subjectHigh-Performance Computingen
dc.subjectParallel and Distributed Computingen
dc.titleAutoMatch: Automated Matching of Compute Kernels to Heterogeneous HPC Architecturesen
dc.typeTechnical reporten
dc.type.dcmitypeTexten

Files

Original bundle
Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
AutoMatch.pdf
Size:
1.05 MB
Format:
Adobe Portable Document Format
License bundle
Now showing 1 - 1 of 1
Name:
license.txt
Size:
1.5 KB
Format:
Item-specific license agreed upon to submission
Description: