我了解此问题的答案取决于特定的OpenCL实现和硬件,但是我需要在sincos
和native_cos
和native_sin
之间进行选择,以便在Mac应用程序中使用。
哪个会更快?
最佳答案
您可以添加一个测试所有超验函数版本的迷你基准测试,并使用基准测试结果相应地更改内核字符串(例如,在native_
之前添加到cos
。)。这将需要基于事件的分析,并且适合于可移植性。然后,每N次迭代一次,如果最后一个工作台出现任何错误,它可以重新进行工作并相应地进行较小的更改。
您甚至可以对一系列功能的排列进行基准测试(例如,对第一个功能使用 native ,但在第二个版本上使用非 native ,在第一个版本中使用 native ,然后在其他5个版本上替代 native ,对所有版本进行基准测试)以使代码更适合管道功能顺序重要的体系结构。
关于macos - OpenCL:sincos与native_cos和native_sin,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23333584/