如何在GPU上执行omp simd for循环?

时间:2015-02-02 18:59:29

标签: gpu openmp gpgpu simd

如何为GPU目标设备翻译#pragma omp simd指令?

GPU的内核每个都处理一个单独的线程。线程以32个线程组(单个warp)组合,并分配给32个核心,以执行单个指令。但是SIMD是一个子线程术语,意味着单个核心应该有一个向量寄存器,并且能够在单个线程的上下文中处理几个数据块。这在GPU核心上是不可能的(每个核心以标量方式处理单独的线程)。

这是否意味着无法为GPU翻译simd指令?

或者可能 - 每个线程的处理方式就好像它有一条SIMD通道一样?

或者也许 - SIMD迭代分布在32个线程的整个warp上(但那么内存访问呢?)?

0 个答案:

没有答案