Collaborative Research: SHF: Medium: Collaborative Automatic Parallelization
Northwestern University, Evanston IL
Investigators
Abstract
In the context of the end of Moore's law, the greatest value of multicore is ultimately in its potential to accelerate sequential codes. This potential can only be realized with the reliable extraction of sufficient multicore-appropriate thread-level parallelism (MATLP) from programs. Yet, despite many new tools, languages, and libraries designed for multicore, difficulties in MATLP extraction keep multicore grossly underutilized. The energy and performance impact of this is nearly universal. To address this problem, this project's novelties are in (i) redefining traditional abstractions used within compilers to enable constructive and tight collaborations that aim to coordinate the multiple code analyses and transformations required for MATLP extraction, (ii) producing RAPPORT, the first publicly available compiler with full collaboration support, a necessary element for robust automatic parallelization. This project's impact is in making computing faster and more efficient with reliable MATLP extraction. In conventional compilers, optimizations perform well greedily and independently, enabling easy compiler modularity without much performance impact. However, in MATLP extraction, key parallelization techniques may succeed only if other transformations clear the path, sometimes by de-optimizing the code. Over the last decade, researchers have made steady progress toward the goal of robust and routine automatic MATLP with new MATLP parallelization patterns, stronger memory analyses, and more efficient speculation techniques. This team believes these MATLP technologies are sufficient but lack the coordination necessary to realize their full potential. This work produces the technology necessary for reliable MATLP extraction by redefining compiler abstractions to enable transformations and analyses to work together actively without loss of modularity. This new technology enables a globally beneficial behavior by centralizing, in a modular way, the decentralized and greedy decision-making found in conventional compilers. In this way, it makes the reliable and robust extraction of MATLP possible. This award reflects NSF's statutory mission and has been deemed worthy of support through evaluation using the Foundation's intellectual merit and broader impacts review criteria.
View original record on NSF Award Search →