【发布时间】:2012-10-24 16:50:49
【问题描述】:
在 CUDA 中,可以使用 #pragma unroll 指令展开循环,通过增加指令级并行度来提高性能。 #pragma 后面可以选择跟随一个数字,指定循环必须展开多少次。
不幸的是,文档没有给出何时使用该指令的具体说明。由于具有已知行程计数的小循环已经被编译器展开,#pragma unroll 是否应该用于较大的循环?在带有可变计数器的小循环上?那么可选的展开次数呢?还有关于 cuda 特定循环展开的推荐文档吗?
【问题讨论】:
标签: optimization cuda loop-unrolling