【问题标题】:CUDA Parallelism inside core核心内的 CUDA 并行性
【发布时间】:2015-08-12 18:48:44
【问题描述】:

在 CUDA 中,它是如何管理 GPU 内核中的顺序代码的?

如果我在 for 循环中有一个内核,它以顺序模式管理还是存在逻辑并行性?

【问题讨论】:

    标签: cuda gpu


    【解决方案1】:

    顺序代码仍将按顺序计算,唯一的变化是所有线程将并行计算此代码。

    让我们假设以下简单内核(代码写在这里,未测试):

    __global__ void kernel(int *array, int N)
    {
      if (threadIdx.x < N)
      {
        // complete for loop is computed parallel for different threads
        for (int i=0; i<1000; i++)
        {
          // every single thread perfomes this statement 1000 times
          array[threadIdx.x] += i;
        }
      }
    }
    

    完整的 for 循环将针对同一 warp 中的不同线程并行计算。 但是每个线程都会为自己计算这个 for 循环顺序。

    【讨论】:

      猜你喜欢
      • 2021-05-15
      • 2015-09-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-01-16
      • 1970-01-01
      • 1970-01-01
      • 2018-02-03
      相关资源
      最近更新 更多