本章节翻译by chenchensmail@163.com 原文:Terminology (intel.com)
在本章中, OpenMP 和 SYCL 术语可以互换使用, 以描述部署并行循环的迭代分区。
如 “ SYCL 线程层次结构和映射” 一章所述, 部署到 GPU 上的并行循环(执行范围) 的迭代被划分为 work-group、sub-group 和 work-item。ND-range 表示总执行范围,它被划分为大小相等的 work-group。 一个工 work-group 是一个 1、2 或 3 维的 work-item 集合。 每个 work-group 可以划分为 sub-group。 sub-group 表示一小段连续的 work-item, 它们被一起作为 SIMD 向量处理。
下表显示了 SYCL 概念如何映射到 OpenMP 和 CUDA 概念。
SYCL | OpenMP | CUDA |
---|---|---|
Work-item | OpenMP thread or SIMD lane | CUDA thread |
Work-group | Team | Thread block |
Work-group size | Team size | Thread block size |
Number of work-groups | Number of teams | Number of thread blocks |
Sub-group | SIMD chunk ( | Warp (size = 32) |
Maximum number of work-items per work-group | Thread limit | Maximum number of of CUDA threads per thread block |