我正在使用this timer包装C ++ AMP调用,代码如下所示。不幸的是,根据计时器,我的C ++ AMP调用大约需要2秒 - 比实际情况要多得多。有人能帮我弄清楚出了什么问题吗?
double sum = 0.0;
for (int t = 0; t < 20; ++t)
{
Timer gpuTimer;
gpuTimer.Start();
auto gh = gpu_histogram(target, size);
gpuTimer.Stop();
sum += gpuTimer.Elapsed();
}
答案 0 :(得分:2)
原来这是一个简单的误解 - 我假设Timer
以秒为单位测量时间,而实际上是使用毫秒。 :)数据现在很有意义...... C ++ AMP真棒!
答案 1 :(得分:1)
抱歉,您还没有分享足够的代码。我不知道gpu_histogram是做什么的,或者你是否正在使用Measuring Performance of C++ AMP computations的最佳实践,或者如果你正在调整执行计算的20次迭代的和的结果等等。尝试发布一个完整的repro with expected和实际结果 - 顺便说一句,该团队在our msdn forum中监控问题。