Automated Mapping of Task-Based Programs onto Distributed and Heterogeneous Machines
Author(s)
S. F. X. Teixeira, Thiago; Henzinger, Alexandra; Yadav, Rohan; Aiken, Alex
Download3581784.3607079.pdf (1.450Mb)
Publisher Policy
Publisher Policy
Article is made available in accordance with the publisher's policy and may be subject to US copyright law. Please refer to the publisher's site for terms of use.
Terms of use
Metadata
Show full item recordAbstract
In a parallel and distributed application, a mapping is a selection of a processor for each computation or task and memories for the data collections that each task accesses. Finding high-performance mappings is challenging, particularly on heterogeneous hardware with multiple choices for processors and memories. We show that fast mappings are sensitive to the machine, application, and input. Porting to a new machine, modifying the application, or using a different input size may necessitate re-tuning the mapping to maintain the best possible performance.
We present AutoMap, a system that automatically tunes the mapping to the hardware used and finds fast mappings without user intervention or code modification. In contrast, hand-written mappings often require days of experimentation. AutoMap utilizes a novel constrained coordinate-wise descent search algorithm that balances the trade-off between running computations quickly and minimizing data movement. AutoMap discovers mappings up to 2.41× faster than custom, hand-written mappers.
Date issued
2023-11-12Department
Massachusetts Institute of Technology. Computer Science and Artificial Intelligence LaboratoryPublisher
ACM|The International Conference for High Performance Computing, Networking, Storage and Analysis
Citation
S. F. X. Teixeira, Thiago, Henzinger, Alexandra, Yadav, Rohan and Aiken, Alex. 2023. "Automated Mapping of Task-Based Programs onto Distributed and Heterogeneous Machines."
Version: Final published version
ISBN
979-8-4007-0109-2