我刚刚开始学习C++ AMP,并且我已经获得了一些我用VS 2012 RC构建的示例,但我发现GPU的性能比CPU慢.例如,Kate Gregory的例子:http://ampbook.codeplex.com/releases/view/90595(与她即将出版的书http://www.gregcons.com/cppamp/相关).她在演讲中展示了她们,通过使用她的笔记本电脑的GPU(我相信她说它是6650)与CPU(不知道她有什么CPU)相比,她在第四章的例子中获得了约5倍的性能提升.我已经尝试过自己测试这个例子以及几个系统配置(如下所示)我总是发现CPU更快.我还测试了其他例子并发现了相同的例子.难道我做错了什么?性能低于预期的原因是否有原因?有没有人有一个肯定会表明GPU更快的例子?
结果示例:chapter4项目结果为1.15ms CPU,2.57ms GPU,2.55ms GPU平铺.
编辑:
Doh,我想我刚刚找到了原因 - 她在讲座中使用的矩阵大小的值是不同的.网站上的样本使用M = N = W = 64.如果我像在演讲中那样使用64,512和256,那么我的性能会相应提高~5倍.