acm-header
登录

ACM通信

研究突出了

基于架构-编译器协同设计的非数值程序自动加速


基于架构-编译器协同设计的自动加速非数值程序,插图

来源:盖蒂图片社

由于处理器之间通信的高成本,自动并行化循环的编译器不得不跳过大量的循环,这些循环对性能至关重要,而且具有丰富的潜在并行性。HELIX-RC是一个编译器/微处理器的协同设计,它通过在传统多核体系结构中解耦通信与线程执行来打开那些循环到并行化。将HELIX-RC应用到具有16个Intel atom类核心的处理器上的仿真表明,在六个SPEC CINT2000基准测试中,性能平均提高了6.85×。

回到顶部

1.介绍

在多核处理器上,程序的性能很大程度上取决于它如何利用并行线程。有些计算问题可以用天生并行或容易并行的数值程序来解决。从历史上看,成功的并行化工具能够将这类程序的顺序循环转换为并行形式,显著提高了性能。然而,大多数软件仍然是按顺序设计的,很大程度上是非数字的,控制和数据流不规则。由于这种软件的手动并行化容易出错且耗时,非数值程序的自动并行化仍然是一个重要的开放问题。

在过去的十年中,解决方案取得了令人印象深刻的进展,但是当针对商品处理器时,现有的并行器仍然没有实现循环中的许多潜在并行性。5程序中较大的循环很难精确分析,以至于明显的依赖性常常会淹没核心之间的通信通道。更小的循环更适合精确的分析,我们的工作表明,在SPECint2000基准所代表的非数值程序中,小循环的迭代之间有很多并行性。4但是,即使经过了严格的优化,小循环通常也包含了循环携带的依赖性,因此它们的迭代不能完全独立——它们必须进行通信。因为小循环的迭代很短(SPECint2000平均25个时钟周期),所以它们的通信是频繁的。


没有发现记录

登录阅读全文

登录

如果您是ACM会员、通讯订阅用户或数字图书馆订阅用户,则使用ACM Web帐户用户名和密码登录以访问优质内容。

需要访问吗?

请选择下面的一个选项以访问高级内容和功能。

创建一个网上帐户

如果你已经是ACM会员,通信订阅者或数码图书馆订阅者,请设置网页帐户,以浏览本网站的优质内容。

参加ACM

成为ACM的会员,可以充分利用ACM卓越的计算信息资源、网络机会等优势。

订阅ACM杂志通讯

获得50多年的中华中医药学会内容的完整访问权限,并每月获得杂志印刷版。

购买这篇文章

非会员可以购买这篇文章或刊登这篇文章的杂志。
Baidu
map