opencl

    2热度

    1回答

    我正在使用OpenCl开展我的项目。为了提高我的算法的性能,是否可以管道一个内核?如果一个内核由多个步骤组成,让我们说A,B,C,我希望A在完成它的部分并将它传递给B时接受新数据。我可以在它们之间创建通道,但是我不知道如何执行它详细。 我可以在.cl文件中写入A,B,C(3个内核)吗?但如何入列NDRange? 我正在使用Altera SDK进行FPGA HPC开发。 谢谢。

    2热度

    1回答

    我刚开始学习OpenCL,它看起来像是缓冲器+增加像免费双线性采样的好东西。 这是对的,还是还有其他差异?

    0热度

    1回答

    我想学习OpenCL,但我很难决定使用哪个地址空间,因为我只找到汇编的资源来声明这些地址空间是,但不是它们为什么存在或何时使用它们。资源至少太分散了,所以在这个问题中,我希望汇集所有这些信息:什么是所有的地址空间,它们为什么存在,何时使用哪个地址空间以及关于内存和性能的优点和缺点。 据我了解(这可能是过于简化的),该GPU拥有两个物理类型的存储器:全局内存,远离实际的处理器,因此缓慢的,但相当大的

    3热度

    1回答

    我试图运行下面的脚本: import silx from silx.image import sift from PIL import Image import numpy import scipy.ndimage from silx.opencl import ocl, pyopencl, kernel_workgroup_size img1 = numpy.asarray(Ima

    0热度

    1回答

    我使用#pragma OPENCL EXTENSION cl_khr_fp16 : enable受支持的OpenCL 1.2 GPU。我想通过了变化float精度从32到16。在我的设备内核来检查的性能改善,我转换所有float到half像如下所示: __kernel void copy_kernel(int N, __global half *X, __global half *Y) {

    0热度

    1回答

    我写在OpenCL程序,并已发现我在看所有零的缓冲器出来的时候。潜入英特尔SDK跟踪中,我发现在设置缓冲区参数时我获得了CL_INVALID_ARG_VALUE。 我使用的OpenCL C++绑定(cl.hpp)(设置标量参数不会产生错误)。 因为我的代码是很长,我有一个测试程序复制的问题。 cl::CommandQueue queue(context, devices.front()); c

    0热度

    1回答

    我有个问题。我正在尝试学习OpenCl,所以我一直试图用OpenCl来实现FFT算法。我试图重新创建: void FFT (cmplx* data, int dataSize){ if(dataSize == 1){ return; }else{ cmplx* even = (cmplx*)malloc(dataSize/2*sizeof(cmplx))

    1热度

    1回答

    我在OpenCL技术中实现sha512。我有内核函数 __kernel void _sha512(__global char *message, const uint length, __global char *hash); 的简单定义在主机上我已经实现并测试成功实施SHA512算法。 我有一个从message数组复制数据到临时变量character的问题。 char character =

    1热度

    1回答

    我试图将numpy数组作为opencl向量的数组传递给内核。 (np.int32 - > int3 *的numpy数组) 但结果似乎是weired。 如果有人解释它为什么会发生,我们将非常感激。 在此先感谢。 的源代码: import pyopencl as cl import numpy as np platforms = cl.get_platforms() ctx = cl.Cont

    0热度

    1回答

    我是OpenCL的新手,在FPGA上使用OpenCL进行分组密码加密。我读了一些论文,知道Opencl中有两种内核(单个工作项和NDRange)。 NDRange内核的功能不会由编译器自动流水线化,而单个工作项内核的功能将会自动流水线化。 建议在FPGA上实现单个工作项内核而不是NDRange内核 ?为什么?如果我想让内核在循环中运行直到读取所有数据,那么内核(一次从主机获取一些数据 - 在FPG