OpenCl和它的工具。评论和印象。 - 页 27

 
这些都是OpenCL 1.0时代未经证实的吓人故事。感觉像是2009-2010年的文字。
 
Renat:
这些都是OpenCL 1.0时代未经证实的吓人故事。感觉像是2009-2010年的文本。

你在说什么,Rinat?

催化剂驱动程序11.7 WHQL和11.8预览版已经可以下载,AMD已经将其用于加速OpenCL的APP-SDK转移到了中国。

应用到2.5版,现在终于通过cl_khr_fp64支持双精度/双数/FP64/watchamacallit。

但需要注意的是:它只包括基于Cypress的GPU,不包括Cayman,也不包括能够进行64位精确计算的旧芯片

http://www.gpu-tech.org/content.php/167-AMD-Catalyst-Driver-11.7-AMD-APP-SDK-2.5-bring-double-precision-for-Cypress-AVX-for-CPUs

Radeon HD 6990/6970/6950(基于Cayman)。

- 以1/4速度的双精度
Radeon HD 6870/6850/6790(基于Barts)。
- 没有双精度支持

Radeon HD 6 770/6750(基于Juniper,为OEM使用而重新命名)。
- 没有双精度支持

Radeon HD 6670/6650(基于Turks)。
- 没有双精度支持

Radeon HD 6450(基于Caicos)。
- 没有双精度支持

Radeon HD 5970(基于赛普拉斯)。
- 以1/5的速度进行双精度

Radeon HD 5870/5850/5830(基于赛普拉斯)。
- 以1/5的速度进行双精度

Radeon HD 5 770/5750(基于Juniper)。
- 没有双精度支持

Radeon HD 5670/5650/5570(基于Redwood)。
- 没有双精度支持

Radeon HD 5450(基于雪松)。
- 没有双精度支持

Radeon HD 4890/4870/4850/4830/4730(基于RV770/790)。
- 以1/5的速度进行双精度

Radeon HD 4770(基于RV740)。
- 以1/5的速度进行双精度

Radeon HD 4670/4650(基于RV730)。
- 没有双精度支持

Radeon HD 4550/4350(基于RV710)。
-没有双精度支持

Radeon HD 3870/3850(基于RV670)。
- 双精度(以1/5的速度)

Radeon HD 3650(基于RV635)。
- 没有双精度支持
Radeon HD 3470/3450(基于RV615)。
-没有双精度支持

Radeon HD 2900 XT/Pro/GT/OEM(基于R600)。
-没有双精度支持

Radeon HD 2600 XT/Pro(基于RV630)。
- 没有双精度支持

Radeon HD 2400 XT/Pro(基于RV610):- DirectX 10(虽然没有Compute Shader)和更低。

- 没有双精度支持

http://developer.download.nvidia.com/compute/cuda/4_1/rel/toolkit/docs/CUDA_Toolkit_Release_Notes_And_Errata.txt

//forums.nvidia.com/index.php?showtopic=34744Windows 2003 Server尚未经过测试,也没有资格与CUDA一起使用。


Rinat,请告诉我们,怎么可能在无意中 编写一个Win32程序,使其在WinXP、Win Server 2008、Vista-Win7上运行,同时在Win Server 2003上不工作? nVidia CUDA SDK的任何3+版本的安装程序甚至不能 在Server 2003上安装
(不会解压!),愚蠢地写入无效的单元格引用,像在Win 3.1中一样。
 

在GPU上有很多关于结构精度的问题,FIXED软件的程序员需要非常非常小心,好比说甚至来自Nvidia本身。

http://developer.nvidia.com/content/precision-performance-floating-point-and-ieee-754-compliance-nvidia-gpus

4.7 与x86的区别 英伟达GPU与x86架构的区别在于,舍入模式被编码在每个发泡点指令中,而不是动态地使用发泡点控制字。不支持浮点异常的陷阱处理程序。在GPU上,没有状态标志来指示计算何时溢出、不足或涉及不精确的算术。像SSE一样,每个GPU操作的精度都在指令中编码(对于x87,精度由浮点控制字动态控制)。

研究CUDA和OpenCL有时会给人一种超自然的感觉,即铁匠们决定用他们的 "革命 "和营销上的哗众取宠来最终杀死数学--当他们人为地制造出MY计算机到底应该做什么和怎么做的错误感觉时。提出的不是精确和可预测的数学计算,而是他们狂热的以游戏者为中心的速度。

程序员必须非常注意计算的准确性,并决定是否在CPU或GPU上进行计算。此外,硬件拥有者和微软一起偷偷摸摸地在CPU上制造了一个讨厌的混乱。

嗯,我有工作要做。再见。

 

似乎还没有被讨论过......

相关链接:AMD C++ AMP库集成在Visual Studio 11中http://blogs.amd.com/developer/2012/03/01/amd-and-the-visual-studio-11-beta/ 据我所知,该测试版已经可以下载。

 
alsu:

似乎还没有被讨论过......

相关链接:AMD C++ AMP库集成在Visual Studio 11中http://blogs.amd.com/developer/2012/03/01/amd-and-the-visual-studio-11-beta/ 据我所知,该测试版已经可以下载。

特别有趣的是这一点。

自动矢量化

在Visual Studio 11中,C++的新功能还有一个自动矢量器,它是默认开启的。 编译器将在可能的情况下对循环进行矢量化,以提高使用处理器上的矢量指令(如SSE2和SSE4.x)的性能。 以下面的代码片断为例。

float A[1000], B[1000], C[1000] 。

for (i = 0; i < 1000; i++) {

A[i] = B[i] + C[i]。

}

C++编译器可以对这个循环进行矢量处理,以便同时执行多个迭代,利用现代处理器上的指令大大改善性能。

除了矢量器之外,自动并行器将在系统中的多个CPU处理器上执行循环,从而使底层硬件得到更好的有效利用。 并行器需要程序员的输入来指示那些应该被并行化的循环,也可以和自动矢量器一起使用。

 
我想知道的是,这些东西有多少会包括AMD64支持...不想在英特尔问题上纠缠不清
 
joo:

特别有趣的是这一点。

自动矢量化

在Visual Studio 11中,C++的新功能还有一个自动矢量器,它默认是打开的。 编译器将在可能的情况下对循环进行矢量化,以提高使用处理器上的矢量指令(如SSE2和SSE4.x)的性能。 以下面的代码片断为例。

float A[1000], B[1000], C[1000] 。

for (i = 0; i < 1000; i++) {

A[i] = B[i] + C[i]。

}

C++编译器可以对这个循环进行矢量处理,以便同时执行多个迭代,利用现代处理器上的指令大大改善性能。

除了矢量器之外,自动并行器将在系统中的多个CPU处理器上执行循环,从而使底层硬件得到更好的有效利用。 并行器需要程序员的输入来指示那些应该被并行化的循环,也可以和自动矢量器一起使用。

这很强。 真的很强。 计算技术向并行化的演进简直就在我们眼前发生。
 
AlexEro:

你在说什么,Rinat?

催化剂驱动程序11.7 WHQL和11.8预览版已经可以下载,AMD已经将其用于加速OpenCL的APP-SDK转移到了中国。

我的观点是,你假装没有今天,并试图发出公然的错误结论。

例如,通过发布最老版本的显卡作为证据,并顽固地忽略了7XXX型号和Catalyst 12.x驱动程序

从你对Windows 2003的陈述来看,你是 "他们必须支持所有 "的支持者,在违反这样一个神圣条件的基础上(在你看来),世界应该承认它的无价值并去祈祷宽恕。世界只是在继续前进,不断发展并发布新的和更好的产品。

你不知道如何编写不兼容的软件,因为你不开发这种非常大规模生产的软件,你不知道技术问题和必要的妥协是什么。要求显卡制造商支持Windows 2003的旧服务器 版本是消费者的极端主义。软件制造商乐于忘记旧操作系统的动物园,把它当作一个坏梦。而司机师傅们只是在做梦。

P.S.:没有必要跳到一个琐碎的比较方法 "他们为什么支持2008年 "来取代对根本原因的真正理解。

syl: 停止使用Windows 2003服务器的破损版本--它是2012年的。

 
Renat:

我的意思是,你假装今天并不存在,并试图得出坦率的错误结论。

例如,把最老版本的显卡作为证据贴出来,而顽固地忽略了7XXX型号和Catalyst 12.x驱动程序。

从你对Windows 2003的陈述来看,你是 "他们必须支持所有 "的支持者,在违反这样一个神圣条件的基础上(在你看来),世界应该承认它的无价值,去祈祷宽恕。世界只是在继续前进,不断发展并发布新的和更好的产品。

你不知道不兼容的软件如何编写,因为你不开发这种最大量生产的软件,你不知道技术问题和必要的权衡是什么。要求显卡制造商支持Windows 2003的旧服务器 版本是消费者的极端主义。软件制造商乐于忘记旧操作系统的动物园,把它当作一个坏梦。而司机师傅们只是在做梦。

因此,没有必要跳到 "那他们为什么支持2008年 "这种平庸的比较方法,来代替对根本原因的真正理解。

syl: 停止使用Windows 2003服务器的破损版本--它已经是2012年了

好吧,我完全理解你的答案。哈哈,我希望其他人也这样做。

就是这样,我可能会听从你的建议,这和我的意图完全一样。所以我将把你们留在这里一段时间--一年或两年。

再见。

 
AlexEro:

好吧,我非常理解你的回答。哈哈,我希望其他人也是如此。

我告诉你,我要听从你的建议,它与我的意图相吻合。所以我将把你们留在这里一段时间--一年或两年。

再见。

你永远不会从一个帖子中猜到,它的作者是the topicstarter....。他为什么要发起这个话题还不清楚。