论文标题

自动与手动并行的NAS基准之间的比较

A comparison between Automatically versus Manually Parallelized NAS Benchmarks

论文作者

Barakhshan, Parinaz, Eigenmann, Rudolf

论文摘要

我们比较自动和手动平行的NAS基准,以识别不同的代码部分。我们讨论了推进自动并行化器的机会。我们发现十种对当前并行化技术构成挑战的模式。我们还测量了可以自动执行所需转换的高级技术的潜在影响。尽管我们的某些发现并不奇怪且难以获得 - 编译器需要更好地识别最外层循环和包含功能呼叫的循环中的并行性,但其他机会也可以触及,并且可以有所作为。它们包括将循环组合到并行区域,避免负载失衡以及改善并行减少。 通过研究手工优化代码来推进编译器是移动编译器研究最前沿的必要途径。但是,最近很少有论文追求这一目标。目前的工作试图填补这一空白。

We compare automatically and manually parallelized NAS Benchmarks in order to identify code sections that differ. We discuss opportunities for advancing automatic parallelizers. We find ten patterns that pose challenges for current parallelization technology. We also measure the potential impact of advanced techniques that could perform the needed transformations automatically. While some of our findings are not surprising and difficult to attain -- compilers need to get better at identifying parallelism in outermost loops and in loops containing function calls -- other opportunities are within reach and can make a difference. They include combining loops into parallel regions, avoiding load imbalance, and improving reduction parallelization. Advancing compilers through the study of hand-optimized code is a necessary path to move the forefront of compiler research. Very few recent papers have pursued this goal, however. The present work tries to fill this void.

扫码加入交流群

加入微信交流群

微信交流群二维码

扫码加入学术交流群,获取更多资源