首页 文章
  • 54 votes
     answers
     views

    与OpenGL TextureSampling相比,糟糕的OpenCL ImageSampling性能

    我最近将我的volumeraycaster从OpenGL移植到OpenCL,这使得raycaster的性能降低了大约90% . 我跟踪了OpenCL的图像采样功能的性能下降,这比相应的OpenGL纹理采样功能慢得多 . 通过删除图像采样功能和纹理采样功能,两个raycaster实现具有大致相同的速度 . 为了轻松地在不同的硬件上使用功能,并在其余的RT代码中排除一些愚蠢的错误,我写了一个小的基准测...
  • 2 votes
     answers
     views

    Opengl和opencl只能在一个共享上下文中使用1个内核

    (解决了) 安装其中一个时出现问题: {OpenTK,JIT(C#),错误的依赖项,错误的DLL,GPU驱动程序,我} 现在同样的事情在Java jocl lwjgl中没有问题 . 在一个简单的opencl-opengl互操作程序中,内核使用GL缓冲区(顶点,颜色,...)和CL缓冲区(以毫秒为单位的时间和过滤数据)来改变网格的顶点 . 当共享上下文中只有一个内核时,它可以工作 . Questio...
  • 0 votes
     answers
     views

    使用GPU上的基元数量在OpenGL中绘图

    我已经计算了顶点以及它们应该如何使用OpenCL连接到彼此(指数)并且它们已经在GPU中 . 所以,据我所知,可以与opengl共享这些缓冲区 . 但是要调用glDrawElements,我需要绘制当前在gpu上的基元数量,我不喜欢从GPU读取这些数字因为它会降低我的应用程序性能,所以我正在寻找一些绘制调用函数我可以通过当前在GPU上的变量来指定基元的数量 . 有人知道吗?
  • 1 votes
     answers
     views

    将OpenCL / CUDA转换为Metal

    我准备将我的项目的一些GPU内核从OpenCL / Cuda转换为Metal,以便在Apple设备上运行我的应用程序 . 目前,我的项目完全用C / C编写 . 在做了一些研究之后,我想我需要用Swift或Objective-C弄脏我的手 . 但说实话,我不确定这些东西,因为用于计算和深度学习的金属语言是相当新的 . 我知道有一个名为“ CoreML ”的库,但我的应用程序需要一些自定义内核 . ...
  • 24 votes
     answers
     views

    如何获取OpenCL SDK?

    我正在浏览http://www.khronos.org/网站,只发现OpenCL的 Headers (不是我不关心的OpenGL) . 我如何获得OpenCL SDK?
  • 101 votes
     answers
     views

    NVIDIA与AMD:GPGPU性能

    我想听听有两种编码经验的人的意见 . 我自己,我只有NVIDIA的经验 . NVIDIA CUDA似乎比竞争对手更受欢迎 . (只计算这个论坛上的问题标签,'cuda'优于'opencl'3:1,'nvidia'优于'ati '15:1,并且根本没有'ati-stream'标签 . 另一方面,根据维基百科,ATI / AMD显卡应该具有更大的潜力,特别是每美元 . 目前市场上最快的NVIDIA显...
  • 8 votes
     answers
     views

    OpenCL AMD与NVIDIA的表现

    我实现了一个简单的内核,它是某种卷积 . 我在NVIDIA GT 240上进行了测量 . 在CUDA上写入时需要70 ms,在OpenCL上写入时需要100 ms . 好吧,我想,NVIDIA编译器更适合CUDA(或者我做错了) . 我需要在AMD GPU上运行它,所以我迁移到了AMD APP SDK . 完全相同的内核代码 . 我做了两次测试,他们的结果让我感到沮丧:HD 6670为200 ms...
  • 8 votes
     answers
     views

    在Nvidia和AMD硬件上使用OpenCL FFT?

    我正在开发一个需要在Nvidia和AMD显卡上使用FFT的项目 . 我最初寻找一个可以同时工作的库(认为这将是OpenCL方式),但我没有运气 . 有人向我建议我必须使用每个供应商的FFT实现并编写一个包装器,根据平台选择做什么 . 我很容易发现AMD的实现,但实际上我正在使用Nvidia卡(这对我的特定应用来说更重要) . 我能找到的唯一Nvidia实现是CUFFT实现 . 有谁知道我如何实际使...
  • 9 votes
     answers
     views

    PyOpenCL入门

    我最近发现了GP-GPU(通用图形处理单元)的强大功能,并希望利用它在一台机器上执行“繁重”的科学和数学计算(否则需要大型CPU集群) . 我知道有几个接口可以在GPU上运行,其中最突出的是CUDA和OpenCL . 后者具有防止CUDA在大多数显卡(NVIDIA,AMD,Intel)上运行的优势,而不仅仅是NVIDA卡 . 在我的情况下,我有一个普通的Intel 4000 GPU似乎与OpenC...
  • 2 votes
     answers
     views

    AMD OpenCL异步执行效率

    例如,我有三个任务A,B和C.其中B和C依赖于A.并且有足够的CU同时运行B和C.然后我在队列0上排队A和C,在队列1上排队B.在A完成之后和B启动之前有一个巨大的延迟,这使得整个工作比仅使用一个队列花费更长的时间 . 这是正常的吗?或者我可能做错了什么? 如果需要,我将编写一个示例代码,原始代码被大量封装 . 但实际上我只是在将A排队并将其传递给B的入队时创建一个事件,并且两个队列在顺序队列中都...
  • 5 votes
     answers
     views

    建议实时图像处理

    我真的需要一些帮助和建议,因为我是实时图像处理的新手 . 我正在尝试为相机获得1000fps的系统实现算法,我需要获取所有图像中每个像素的值,并对N个图像中像素[i] [j]的演变进行不同的计算,对于图像中的所有像素 . 我有(unsigned char * ptr)我想将它们传输到GPU并开始使用CUDA实现算法并将数据返回给CPU . 但我不确定什么是实时处理的最佳选择 . 我的系统:CPU ...
  • 9 votes
     answers
     views

    在AMD Radeon上尝试使用OpenCL Theano时,获取“pygpu已配置但无法导入”错误

    我遵循了以下说明: https://gist.github.com/jarutis/ff28bca8cfb9ce0c8b1a 但是当我尝试时:THEANO_FLAGS = device = opencl0:0 python test.py在测试文件上我收到错误: 错误(theano.sandbox.gpuarray):pygpu已配置但无法导入Traceback(最近一次调用最后一次):文件“/h...
  • 1 votes
     answers
     views

    'Wrong major API version for gpuarray:',-9997,'Make sure Theano and libgpuarray/pygpu are in sync.'

    错误(theano.sandbox.gpuarray):无法初始化pygpu,支持禁用 Traceback(最近一次调用最后一次): 文件“/home/mesayantan/.local/lib/python2.7/site-packages/theano/sandbox/gpuarray/ init .py”,第95行,in init_dev(config.device) 在init_de...
  • 0 votes
     answers
     views

    在Intel Xeon Phi上使用OpenCL进行并发仿真

    我有一个OpenCL应用程序,它利用了英特尔至强融核的功能 . 内核使用数据库进行一些统计计算 . 因此,我在想是否可以添加第二个使用相同数据库的内核并在Phi上同时运行它们 . 例如,内核1使用n / 2个线程,内核2使用n / 2个线程等 . 有什么建议 ?
  • 2 votes
     answers
     views

    Xeon Phi的最新OpenCL驱动程序

    我正在努力为Intel Xeon Phi获取最新的OpenCL驱动程序 . 我有一个骑士角(KNC),我只找到了已弃用的OpenCL Runtime 14.2(从2014年开始?) . 我在哪里可以找到未弃用的版本? 网站:https://software.intel.com/en-us/articles/opencl-drivers 如果我下载最新的英特尔OpenCL SDK for Appli...
  • 3 votes
     answers
     views

    在NVIDIA硬件上运行OpenCL程序

    我已经构建了一个简单的基于OpenCL的程序(在C中),并在使用AMD FirePro V4900卡的Windows 8系统上进行了测试 . 我使用的是AMD APP SDK . 当我将我的二进制文件复制到另一台机器(带有NVIDIA Quadro 4000卡的Windows 8)时,我得到“程序入口点clReleaseDevice无法位于动态链接库(我的程序的exe文件)”中 . 第二台机器安装...
  • 2 votes
     answers
     views

    OpenCL中的HyperQ支持

    我想运行在异步上在单个GPU上执行的异构内核 . 我认为这可以在Nvidia Kepler K20(或具有计算能力3.5的任何设备)中通过将每个内核启动到不同的流并且运行时系统基于资源可用性将它们映射到不同的硬件队列来实现 . OpenCL中是否可以访问此功能?如果是这样,那么OpenCL中的CUDA“Stream”相当于什么? Nvidia驱动程序是否通过OpenCL支持在K20卡上执行此类操...
  • 1 votes
     answers
     views

    无法在动态链接库中找到过程入口点clCreateCommandQueueWithProperties

    我一直在努力让OpenCL与visual studio合作 . 我按照this指南配置AMD OpenCL SDK. 这是我的简短示例程序 #include "stdafx.h" #include <CL/cl.h> #include <stdio.h> #include <iostream> using namespace std; c...
  • 0 votes
     answers
     views

    有关GPGPU库的建议

    我正在编写一个应用程序,最终它可以很好地并行化: two dimensional float initialData and result arrays for each cell (a, b) in result array: for each cell (i, j) in initialData: result(a, b) += someComputation(init...
  • 1 votes
     answers
     views

    如何在MQL5中获取错误消息而不是整数?

    我试图在 MQL5 中使用 OpenCl 获取错误消息 . int cl_ctx; if ( ( cl_ctx = CLContextCreate( CL_USE_ANY ) ) == INVALID_HANDLE ) { Print( "OpenCL not found: ", GetLastError() ); float pr = 2...
  • 0 votes
     answers
     views

    在MQL5中使用OpenCL - 在自定义指标代码中:

    我正在尝试使用OpenCL库修改指标文件 . 但我无法理解如何才能做到这一点 . 我试图阅读并理解文档,但不能 . 这是我的代码: #include <MovingAverages.mqh> #property indicator_separate_window #property indicator_buffers 6 #property indicator_plots 3 #...
  • 1 votes
     answers
     views

    没有从MQL5中获得OpenCL内核的预期输出

    这是我正在尝试使用的功能: #define SIZE_X 512 #define SIZE_Y 512 int cl_ctx; int cl_prg; int cl_krn; int cl_mem; float ExponentialMA( const int position, const int period, ...
  • 0 votes
     answers
     views

    Opencl设备未找到错误,值返回零OpenCL MQL5

    我正在尝试计算线性回归 . 为此我使用我的系统GPU与OpenCl,因为这是我可以通过它连接MQL5与GPU的唯一选择 .这是代码: const string cl_src = " #pragma OPENCL EXTENSION cl_khr_fp64 : enable \r\n" "__kernel void Calc...
  • 0 votes
     answers
     views

    是否可以使用Opencl在MQL5中传递Array?

    当我使用OpenCL和MQL5时,我的输出中得到零 . 我试图使用OpenCL的缓冲区传递数组 . 请参阅以下内容: Print(CLBufferWrite(cl_price, price)); 我的输出中零,这意味着没有复制 .price 来自 OnCalculation 函数,如下所述: int OnCalculate(const int rates_total, ...
  • 0 votes
     answers
     views

    OpenCL和MQL5指示器在输出中返回垃圾值

    这是我为简单移动平均线尝试过的代码 . const string cl_src = "__kernel void CalculateSimpleMA( \r\n" "int rates_total, ...
  • 0 votes
     answers
     views

    OpenCL MQL5不执行并行执行

    我在Mql5中创建了OpenCL的内核 .这是代码: const string cl_src = //" int weightsum; \r\n" " #pragma OPENCL EXTENSION cl_khr_fp64 : enable ...
  • 4 votes
     answers
     views

    MQL5中的OpenCL代码不会将分布式作业提供给每个GPU核心

    我使用OpenCL和MQL5为MetaTrader终端平台创建了一个基于GPU的指标 . 我努力工作,我的[MetaTrader终端:策略测试程序]优化工作必须在GPU上转移到最大值 . 大多数计算都是由指标完成的 . 因此,我在指标中进行了更改,并在GPU上完全转移 . 但是当我尝试在策略测试器部分进行优化过程时,真正的问题出现了 .我看到的过程同时使用了GPU和CPU,但对整个过程没有影响 ....
  • 0 votes
     answers
     views

    OpenCL / MQL5:数组分配在输出中产生垃圾

    我试图继续使用MQL5中的OpenCL . 我尝试过以下方法:My GPU-kernel program : kernel void SMA_executeSMA(float ExtLineBufferi_1, float price1,float price2, int InpMAPeriod, __global float *output) { int len = get_global_...
  • 1 votes
     answers
     views

    bazel使用opencl支持交叉编译tensorflow

    我可以使用交叉工具链为arm平台构建张量流,如下所述 bazel cross compile 但是当我们从tensorflow主目录运行'./configure'时,Tensorflow支持使用OpenCL支持构建我们得到以下问题 您是否希望通过OpenCL支持构建TensorFlow? [y / N]:y将为TensorFlow启用OpenCL支持 . 请指定应将哪个C编译器用作主机C编译器 ...
  • 4 votes
     answers
     views

    是否可以模拟GPU以进行CUDA / OpenCL单元测试?

    我想开发一个可以在CPU或GPU上运行的算法库 . GPU可以是Nvidia(然后算法将使用CUDA)或不(那么算法将使用OpenCL) . 我想在这个项目中模拟GPU,因为可能: 我将使用不同的计算机来开发软件,其中一些没有GPU . 该软件最终将在具有GPU或不具有GPU的服务器中执行,并且必须执行并传递单元测试 . 有没有办法模拟GPU进行单元测试? 在以下链接中: GPU E...

热门问题