QueryperformanceFrequency和QueryperformanceCounter快速排序GPU编程OpenCL

时间:2019-06-13 17:27:11

标签: gpu opencl quicksort gpgpu opencl-c

我正在尝试使用OpenCL在GPU上执行快速排序算法。我找到了英特尔开发的名为“ GPU-Quicksort in OpenCL 2.0: Nested Parallelism and Work-Group Scan Functions”的软件包。

但是,此代码被开发为在Windows计算机而不是ubuntu上运行。

在Ubuntu上执行它后,我发现代码中使用了特定的头文件,这些头文件仅支持Windows,不支持Ubuntu。

我尝试了一些互联网和stackoverflow上可用的修复程序,只能解决一些问题。

其他几个仍无法解决的问题是使用关键字“ QueryperformanceFrequency”和“ QueryperformanceCounter”。

我提到了Linux替代品来记录时间和频率,不幸的是这些也没有用。

在上面的标题中包含带有超链接的工作库链接。

我正在NVIDIA Gpu上运行1.2版的代码。

执行后出现的错误如下:

‘QueryPerformanceFrequency’ was not declared in this scope ‘QueryPerformanceCounter’ was not declared in this scope

希望您能协助您解决此问题。

谢谢。

1 个答案:

答案 0 :(得分:0)

您可以使用std::chrono::high_resolution_clock中的chrono,该版本自c ++ 11起可用,并且您将编写与平台无关的代码。

VS2012的注意事项:它使用system_clock作为高分辨率,精度很高。如果您使用的是VS的最新版本或任何其他平台,则应该不错。