CUDA-ExecutionProvider
全部标签 我了解到微软正在与Nvidia密切合作以提高AMP性能。但我的问题是:AMP是Microsoft的CUDA替代品吗?或者当NVIDIACUDA显卡可用时,AMP是否使用CUDA驱动程序?AMP是openCL的替代品吗?我还是很困惑.. 最佳答案 C++AMP是一个库(作为它的一部分,还引入了一个关键的语言扩展)。由于C++AMP是一个开放规范,它可以在任何其他低级语言上实现。Microsoft的实现基于DirectCompute(因此也基于HLSL),但是当您使用C++AMP时,这对您完全隐藏(这就是C++AMP可以成为开放规范的原
是否可以在CUDA文件中(不在内核代码中)使用openMPpragma?我将结合gpu和cpu计算。但是如果我将porgram与openmp选项链接(在linux下),nvvc编译器会失败并显示“找不到未知选项'openmp'”一种解决方法是仅在c/c++文件中使用openMP-statments。 最佳答案 我刚刚找到了这个http://www.cse.buffalo.edu/faculty/miller/Courses/CSE710/heavner.pdf第25页说:使用gcc:-#includeomp.h添加-fopenmp标
谁能给我一个关于CUDAC和C++的性质的很好的解释?据我了解,CUDA应该是带有NVIDIAGPU库的C。截至目前,CUDAC支持一些C++特性,但不支持其他特性。NVIDIA的计划是什么?他们是否会在C基础上构建并添加自己的库(例如Thrust与STL)与C++的库平行?他们最终会支持所有的C++吗?在.cu文件中使用C++头文件是不是很糟糕? 最佳答案 CUDA是一个平台(架构、编程模型、汇编虚拟机、编译工具等),而不仅仅是一种单一的编程语言。CUDAC只是在此平台上构建的众多语言系统之一(CUDAC、C++、CUDAFort
我正在研究使用GPU处理流数据的方法。我有两个选择,但无法决定走哪条路?我的标准如下:易于使用(良好的API)社区和文档性能future我将在linux下用C和C++编写代码。 最佳答案 OpenCL从您的生产代码接口(interface)可在不同的图形硬件之间移植操作有限,但已准备好快捷方式CUDA独立语言(CUDAC)仅限nVidia硬件几乎完全控制代码(使用类C语言进行编码)大量分析和调试工具底线——OpenCL是可移植的,CUDA仅适用于nVidia。但是,作为一门独立的语言,CUDA功能更强大,并且有很多非常好的工具。易于
我想这个问题不言自明。我有兴趣做一些严肃的计算,但我不是一名程序员。我可以将足够多的python串在一起来完成我想要的。但是我可以在python中编写一个程序并让GPU使用CUDA执行它吗?还是我必须混合使用python和C?Klockner(sp)“pyCUDA”网页上的示例混合了python和C,所以我不确定答案是什么。如果有人想对Opencl发表意见,请随意。几周前我听说了这项CUDA业务,不知道您可以像这样使用您的视频卡。 最佳答案 你应该看看CUDAmat和Theano.两者都是编写在GPU上执行的代码的方法,而无需真正了
我正在寻找一种在docker容器内使用GPU的方法。容器会执行任意代码,所以我不想使用特权模式。有什么建议吗?从之前的研究中,我了解到run-v和/或LXCcgroup是可行的方法,但我不确定如何完全实现这一点 最佳答案 Regan的回答很好,但它有点过时了,因为正确的方法是避免lxc执行上下文,因为Docker有droppedLXC作为docker0.9的默认执行上下文。相反,最好通过--device标志告诉docker有关nvidia设备的信息,并且只使用native执行上下文而不是lxc。环境这些说明在以下环境中进行了测试:U
我正在尝试运行我的CudaSDK示例,但出现以下错误:./bandwidthTest:errorwhileloadingsharedlibraries:libcudart.so.4:cannotopensharedobjectfile:Nosuchfileordirectory为什么我可以成功编译示例,但不能运行?有没有办法手动指定CUDA运行时库的路径? 最佳答案 尝试:32位:sudoldconfig/usr/local/cuda/lib64位:sudoldconfig/usr/local/cuda/lib64干杯
我已经到处寻找有关如何在CUDA中准确使用类的一些见解,虽然人们普遍认为它可以完成并且显然是由人们完成的,但我很难找到如何实际做到这一点。我有一个类,它使用运算符重载等实现基本位集。我需要能够在主机和设备上实例化此类的对象,在两者之间进行复制等。我是否在.cu中定义了此类?如果是这样,我如何在我的主机端C++代码中使用它?类的函数不需要像threadId那样访问特殊的CUDA变量;它只需要能够在主机和设备端使用即可。感谢您的帮助,如果我以完全错误的方式处理此问题,我很想听听替代方案。 最佳答案 在您#include的header中定
图形处理单元(GPGPU)上的通用计算是一个非常有吸引力的概念,可以利用GPU的强大功能进行任何类型的计算。我很想将GPGPU用于图像处理、粒子和快速几何运算。目前,该领域的两个竞争者似乎是CUDA和OpenCL。我想知道:OpenCL是否可以在Windows/Mac上的Java中使用?与OpenCL/CUDA接口(interface)的库方法有哪些?是否可以直接使用JNA?我是不是忘记了什么?感谢任何现实世界的经验/例子/war故事。 最佳答案 AFAIK,JavaCL/OpenCL4Java是目前唯一可在所有平台上使用的Open
当我使用固定内存进行CUDA数据传输时,我观察到数据传输速度显着加快。在linux上,实现这一点的底层系统调用是mlock。从mlock的手册页中,它指出锁定页面可以防止它被换出:mlock()lockspagesintheaddressrangestartingataddrandcontinuingforlenbytes.AllpagesthatcontainapartofthespecifiedaddressrangeareguaranteedtoberesidentinRAMwhenthecallreturnssuccessfully;在我的测试中,我的系统上有几场空闲内存,所以