c++-amp相关内容

“并发”:具有该名称的名称空间不存在

我是一名业余C#程序员,由于需要C ++ AMP技术来执行一些繁重的数字运算,因此他们迷上了C ++。因此,我的C ++编程技能不是很发达。 第一次尝试实际程序时,我选择了基于丹尼尔·莫斯(Daniel Moth)2012年4月的文章。我无法建立它。我总是收到错误消息: C2871'并发':不存在具有该名称的名称空间。 我知道代码最初是为Visual Studio 11编写的,但 ..
发布时间:2020-06-07 19:01:06 其他开发

将数据从GPU复制到CPU

我正在尝试使用C ++ AMP计算矩阵。我使用宽度和高度为3000 x 3000的数组,并重复计算过程20000次: // _ height = _width = 3000 范围 ext(_height,_width); array GPU_main(ext,gpuDevice.default_view); array GPU_res(ex ..
发布时间:2020-06-07 19:01:04 其他开发

C ++ AMP的当前状态是什么

我正在使用C ++编写高性能代码,并且一直在使用CUDA和OpenCL以及最近使用的C ++ AMP,这是我非常喜欢的。但是,我有点担心它不会被开发和扩展,并且会消失。 导致我想到这个想法的是,即使是MS C ++ AMP博客沉默了大约一年。查看C ++ AMP算法库 http://ampalgorithms.codeplex.com/wikipage/history 我看到的唯一发展 ..
发布时间:2020-06-07 19:00:59 C/C++开发

改善并行计算的内存布局

我正在尝试针对使用C ++ AMP的并行计算优化算法(Lattice Boltzmann).在寻找优化内存布局的建议时,发现将结构中的一个参数删除到另一个向量(阻塞向量)中可以增加约10%. 任何人都有可以进一步改善这一点的提示,还是我应该考虑的一些提示? 下面是每个时间步执行的最耗时的功能,以及用于布局的结构. struct grid_cell { // int blocked; ..
发布时间:2020-05-24 21:05:08 C/C++开发

并发和内存模型

我在观看这个视频由Herb Sutter在GPGPU和新的C ++ AMP库。他正在谈论内存模型,并提到弱内存模型,然后强内存模型,我认为他指的是读/写顺序等,但我不知道。 / p> Google在内存模型上提出了一些有趣的结果(主要是科学论文),但是有人可以解释什么是弱内存模型,什么是强内存模型及其关系并发? 解决方案 在并发方面,内存模型指定了数据访问的约束, 术语弱和强有 ..
发布时间:2016-12-26 18:32:01 其他开发

使用C ++ AMP读取缓冲区数据

我似乎没有办法让自己从我的AMP阵列中读取数据。 我想要做的是,缓冲区,将其复制到向量中,然后使用向量。我知道我应该设置CPU访问标志,但我有麻烦这样做。 首先,这是我试图访问缓冲区。我把这里放在这里,以防万一我做了一些如何不应该做的事情。也许有一个内置的函数,我错过了这是为我吗? std :: vector vecParticles; ID3D11Buf ..
发布时间:2016-10-30 05:38:04 C/C++开发

C ++ Amp从纹理复制16位图像到纹理(从openCV Mat)

这个问题是这个问题的下一个步骤 link 。 简而言之,我正在使用来自kinect的深度图像检索16位图像。使用C ++ Amp,我们对数据的位大小有一些限制。所以,我试图使用纹理来处理它。 现在,我确信我正在写入正确的像素。但是,它似乎有一些问题从我的纹理原始数据检索。 这是代码: typedef concurrency :: graphics :: texture ..
发布时间:2016-10-27 04:19:05 C/C++开发

C ++ AMP使用16位图像上的纹理计算梯度

我正在使用从kinect检索的16位深度图像。我发现一些困难,使我自己的过滤器,由于索引或图像的大小。 我使用纹理,因为允许使用任何位大小的图像。 所以,我试图计算一个简单的渐变,以了解什么是错误 $ b 您可以看到当我使用y dir时有错误。 对于x: 对于y: 这是我的代码: typedef concurrency :: graphics :: textu ..
发布时间:2016-10-20 22:47:51 C/C++开发

C ++ 11添加C99限制说明符?如果不是,为什么不呢?

restrict 是一个C99特性,通过允许编译器对指针执行“以前只有fortran”的优化,得到了很多关注。这也是Microsoft最近宣布的关键是C ++ AMP规范的基础。 这个关键字是否在FCD中? 解决方案 一个参数是C需要 restrict 超过C ++,因为许多操作都是通过指向原始类型的指针完成的,因此C代码比C ++具有更多别名问题。 别名规则说,指向不同类型的 ..
发布时间:2016-10-14 13:03:11 C/C++开发