OpenCL:NVIDIA 的矢量寄存器(float4、float8、..) VS Intel 的矢量寄存器
我知道对于 Intel,矢量寄存器已经过优化,例如 SandyBridge 微架构(SSE+AVX),但是对于 NVIDIA 的 GPU 又如何呢? 我在某处读到的一些资料(我忘了…
OpenCL CPU 设备与 GPU 设备
考虑一个简单的例子:向量加法。 如果我为 CL_DEVICE_TYPE_GPU 构建一个程序,并为 CL_DEVICE_TYPE_CPU 构建相同的程序,它们之间有什么区别(除了“C…
OpenCL:long、long4、long16...什么时候使用?
我试图理解仅使用 long、long2、long3、long4、long8、long16 之间的区别。假设我的 CL_DEVICE_PREFERRED_VECTOR_WIDTH_LONG 为 2。 我什么时候应该使…
OpenCL:GPU 上的 32 位和 64 位 popcnt 指令?
我想为 GPU(最好是 OpenCL)编写一个程序,并且很大一部分计算包括计算位数组(打包为 long 或 int)中 1 的数量。 因此,在现代 CPU 上,我显然只会…
cl_khr_fp64 和 cl_amd_fp64 之间的区别?
我刚刚发现在我的(相当昂贵的)Radeon 6970 上,仅支持 cl_amd_fp64 扩展。使用 cl_amd_fp64 运行时,我在代码的某些部分得到奇怪的结果(访问 0.005…
cl::vector 与 std::vector:不同的迭代器行为
编辑:按照 PlasmaHH 的建议添加了带有内存位置的调试输出。 我不明白 cl::vector<> 的不同行为在 OpenCL 的 C++ 绑定中。考虑以下代码: 标头 Top.hp…
nVidia Tesla 卡有什么好处吗?
我打算购买一个真正的 GPU 来运行并行算法(预算 2k-4k)。现在,我随处可见配备“专为 GPGPU 制造”的 nVidia Tesla GPU 卡的超级计算机。 虽然乍一…
OpenCL 适合什么类型的代码域?
我阅读了 OpenCL 概述,它指出它适合运行 CPU、GPGPU、DSP 等的代码。但是,从命令参考来看,它似乎都是数学和图像类型操作。我没有看到任何关于字符…
为什么会有 CL_DEVICE_MAX_WORK_GROUP_SIZE?
我试图了解 OpenCL 设备(例如 GPU)的体系结构,但我不明白为什么本地工作组中的工作项数量有明确的限制,即常量 CL_DEVICE_MAX_WORK_GROUP_SIZE。 …
有什么方法可以阻止 OpenCL 内核的执行吗?
有什么方法可以阻止 OpenCL 内核的执行吗? 例如,我启动内核,进行一些计算,然后如果满足某些条件则停止它,否则,我会等到它完成: clEnqueueNDRan…