opencl

    0热度

    1回答

    我尝试编译下面的代码,既要静态库和目标文件: Halide::Func f("f"); Halide::Var x("x"); f(x) = x; f.gpu_tile(x, 4); f.bound(x, 0, 16); Halide::Target target = Halide::get_target_from_environment(); target.set_feature

    0热度

    2回答

    我写了一个简单的OpenCL程序,其目标是使用OpenCL image2d结构复制输入图像。这似乎是一个简单的工作,但我一直坚持下去。 内核具有总是返回零值的“read_imageui”。输入图像是全白色的jpeg图像。 使用OpenCV imread完成图像加载。 这里是内核: const sampler_t smp = CLK_NORMALIZED_COORDS_FALSE | CLK_ADD

    3热度

    1回答

    假设我使用clEnqueueWriteBuffer将数据复制到设备,并且假设数据是RGB值(unsigned char s)的缓冲区。我想先通过操作输入缓冲区(例如通过覆盖R组件)来将图像转换为灰度,然后我想将生成的图像调整为输出缓冲区。然后我会使用clEnqueueReadBuffer将输出复制回主机内存。由于我不能编写一个包含所有逻辑的单个内核(因为OpenCL处理的内在无序性),所以我在考虑

    -1热度

    1回答

    你知道OpenCV库中的Mali OpenCL SDK和OpenCL有什么不同吗?我发现在Mali OpenCL SDK中有一些关于如何创建内存缓冲区,获取输入数据,设置参数的详细示例代码......但是在OpenCL内部的OpenCV库中,我只需要将Mat从更改为UMAT以使OpenCL代码在GPU上运行?它似乎隐藏在API下的OpenCL代码?我如何通过我的应用程序更改OpenCL代码?

    0热度

    1回答

    我想在opencl中使用uint8_t数据类型。我刚刚宣布检查它是否被支持,但是它提供了有关stdint.h的一些错误。当运行编译.CL代码,并得到这个错误 Compilation started In file included from 1:1: In file included from /usr/include/stdint.h:25: In file included from /usr

    0热度

    1回答

    我需要实现针对版本1.2我的开放源代码项目,一个真正的工作平台版本过滤器: https://github.com/tugrul512bit/Cekirdekler 我没有$ 150购买一个OpenCL2.0的显卡现在这样我正在研究一个纯粹的1.2版本系统,并不确定其他(新)系统。 问:怎样的平台的列表看起来当只有OpenCL的2.0的GPU和两个1.2(max)和2.0(最大)的GPU存在于同一个

    2热度

    1回答

    我正在优化pyOpenCL中的Mandelbrot渲染器,并希望将块中的迭代拆分,以便更好地利用我的GPU。 最大迭代次数= 1000和2个“块”的示例: 1.运行mandelbrot转义算法以进行迭代0-500。 2.保存每一点所需要的迭代,其中迭代< 500和所有其他点与500迭代再次运行 - 1000 第一循环的工作原理是预期,但之后每块会导致错误的结果。我真的想更具体,但我不知道真正的问题

    0热度

    1回答

    我目前使用AMD夏威夷GPU并对其有一些疑问。 在AMD夏威夷的说明书中,它具有 2816 Processing Element 44 Computing Units 予理解的是,那么它有2816个线程和44个工作组(每组64个线程) 它是正确的吗? 我对核心,线程,计算单元,工作组和处理元素的概念感到困惑。

    0热度

    1回答

    我将一行矩阵与该行的对角线元素的逆矩阵相乘。我用一维并行代码实现了它。所有线程运行这段代码 1.read the principle diagonal element 2.calculate the inverse of that element 3.multiply inverse with the element indexed at the thread id 问题出现时,第i在第i

    0热度

    1回答

    我想通过与3D音量位置和组ID识别来计算每个组的本地总和。 我的想法是将空间分成组并使用atomic_add来计算local_sum。但是因为我对并行计算并不熟悉,所以很难找到代码和指令之间的相关性。 我现在的内核是这样的: __kernel void TestAtomicAddLocal(__global *int src, int3 size, __global int *res) {