Fence Scoping

Fence Scoping
复制标题

栅栏范围界定

DOI:
--
复制
发表时间:
2014
期刊:
International Conference for High Performance Computing, Networking, Storage and Analysis
影响因子:
--
通讯作者:
Rajiv Gupta
Rajiv Gupta
中科院分区:
--
文献类型:
--
作者:
Changhui Lin;V. Nagarajan;Rajiv Gupta

文献摘要

被引文献

相似文献

我们观察到,程序员使用的围栏指令通常仅用于在有限的范围内订购内存访问。基于此观察结果,我们提出了概念围栏范围,该概念范围定义了围栏执行内存访问顺序的范围,称为示波器围栏(S-Fence)。 S-Fence是一个可自定义的围栏,它使程序员可以通过指定栅栏的范围来表达订购需求,而他们只想订购部分内存访问。在运行时,硬件使用程序员传达的范围信息以比传统围栏更少的方式执行围栏指令,从而提高了程序性能。我们的实验结果表明,S围栏的好处取决于应用和硬件参数的特征。一组无锁的算法达到的峰值速度范围从1.13倍到1.34倍,而全应用达到了1.04倍至1.23倍的加速度。
We observe that fence instructions used by programmers are usually only intended to order memory accesses within a limited scope. Based on this observation, we propose the concept fence scope which defines the scope within which a fence enforces the order of memory accesses, called scoped fence (S-Fence). S-Fence is a customizable fence, which enables programmers to express ordering demands by specifying the scope of fences when they only want to order part of memory accesses. At runtime, hardware uses the scope information conveyed by programmers to execute fence instructions in a manner that imposes fewer memory ordering constraints than a traditional fence, and hence improves program performance. Our experimental results show that the benefit of S-Fence hinges on the characteristics of applications and hardware parameters. A group of lock-free algorithms achieve peak speedups ranging from 1.13x to 1.34x, while full applications achieve speedups ranging from 1.04x to 1.23x.