Taming Control Divergence in GPUs through Control Flow Linearization

Taming Control Divergence in GPUs through Control Flow Linearization
复制标题

通过控制流线性化驯服 GPU 中的控制发散

DOI:
10.1007/978-3-642-54807-9_8
复制
发表时间:
2014
期刊:
2015 ACM/IEEE 42nd Annual International Symposium on Computer Architecture (ISCA)
影响因子:
--
通讯作者:
R. Govindarajan
R. Govindarajan
中科院分区:
--
文献类型:
--
作者:
Jayvant Anantpur;R. Govindarajan

文献摘要

被引文献

相似文献

分支发散是GPGPU中非常常见的性能问题,在GPGPU中,划分分支的执行被序列化以一次执行一个控制流路径。使用堆栈重新验证线程的现有硬件机制导致对非结构化控制流程图的代码重复执行。同样,堆栈机制无法有效利用分歧分支之间的可用并行性。此外,允许的嵌套差异的量也受到分支发散堆栈深度的限制。
Branch divergence is a very commonly occurring performance problem in GPGPU in which the execution of diverging branches is serialized to execute only one control flow path at a time. Existing hardware mechanism to reconverge threads using a stack causes duplicate execution of code for unstructured control flow graphs. Also the stack mechanism cannot effectively utilize the available parallelism among diverging branches. Further, the amount of nested divergence allowed is also limited by depth of the branch divergence stack.