opencl

    0热度

    1回答

    我想对如何创建在多个设备上运行的openCL测试有疑问 假设我想创建一个openCL程序来计算表达式A B + C d,这是我的意见 创建3个内核,一个用于B,一个用于C d,以及其他为M + N(A B + C d) 创建一个主机代码,并行执行3个任务,每个任务在不同的设备上运行,但我不知道如何指定特定的设备单个任务 请帮我 谢谢

    1热度

    1回答

    我想写一个内核来获取字符串的字符频率。 首先,这里是我的代码有内核现在: _kernel void readParallel(__global char * indata, __global int * outdata) { int startId = get_global_id(0) * 8; int maxId = startId + 7; for (i

    1热度

    1回答

    是否有任何理由让OpenCL标准选择使用参数类型const size_t *而不是仅在clEnqueueNDRangeKernel函数中传递const size_t? 这个决定背后的推理是什么? 如果将标准clEnqueueNDRangeKernel定义为使用const size_t而不是const size_t *,性能或其他指标是否会有任何变化? 谢谢

    0热度

    2回答

    我正在使用2个示例脚本来检查python 3.6是否可以在Windows上使用OpenCv的OpenCL功能。我试图运行几个与样本中提供的CAMSHIFT相关的示例,并检查是否有OpenCL。 我很想知道为什么蟒蛇表明,我没有OpenCL的同时,C++与VS表明我的OpenCL功能的设备 系统信息:使用 opencv的3.2.0从源代码构建OPENCL并添加Python和numpy的库 的Pyth

    1热度

    1回答

    由于本地内存限制,我需要使用全局内存作为我的工作项的缓存。 假设我有1000个工作组,每个工作组有64个工作项目。每个项目需要4K缓存。工作项目完成后,高速缓存不需要保留。 我将分配一个单一的全局内存缓冲区,并将4K块分配给工作项目。 (我是针对AMD的GPU) 什么是我需要保证不会有 工作项目之间的任何并发问题的最小尺寸? 由于AMD具有< = 64 CU,那么我的猜测是 64 * 128 *

    2热度

    3回答

    我有几个不同类型的变量存储在一个char数组中。 int a = 5; memcpy(offset, (char*)&a, sizeof(int)) 然而,memcpy的不OpenCL内核工作:通常我会他们这样写到阵列。如果没有这个功能,最简单的方法是什么?

    0热度

    1回答

    __kernel void kmp(__global char pattern[1*4], __global char* string, __global int failure[1*4], __global int ret[1], int g_length, int l_length, int thread_num){ int pattern_num = 1; int pat

    1热度

    1回答

    我正在用openCL 1.2创建应用程序,这是对更大应用程序的测试。该测试将1与每个内核执行的4x4矩阵的每个值相加。这个想法是获得双缓冲工作。我创建了两个实际上做同样事情的内核,他们共享相同的READ_WRITE缓冲区,因此每个内核执行都可以在最后一个内核执行的地方继续执行,但它们有所不同,因为它们具有不同的输出缓冲区,允许使用输出缓冲区之一内核在阅读其他的数据,就像这样:我认为 Diagram

    1热度

    1回答

    我正在考虑在Intel i7平台上结合OpenCL和AVX来实现并行机会,但我不认为这是可能的。虽然,我知道CPU和iGPU共享相同的内存带宽,但我不确定他们是否共享任何其他硬件? 在iGPU(“Intel Graphics Processor”)或AVX设备(“CPU cores”)上打开OpenCL吗?

    0热度

    1回答

    我有一个OpenCL内核,它在运行时从一个PTX内核字符串与clCreateProgramWithBinary构建,然后构建。现在在稍后的时间,我正在尝试设置内核参数。我在void *的数组中检索这些参数,所以我不知道每个条目的大小/类型。但是,该信息存储在PTX内核字符串中,即。搭配: .visible .entry my_kernel( .param .u64 param_1,