【发布时间】:2016-04-11 14:53:51
【问题描述】:
我的 OpenCL 应用程序未充分利用英特尔至强融核的功能。
内核使用数据库进行一些统计计算。因此,我在考虑是否可以添加第二个使用相同数据库的内核并在 Phi 上同时运行它们。
例如,为内核 1 使用 n/2 个线程,为内核 2 使用 n/2 个线程等。
有什么建议吗?
【问题讨论】:
标签: parallel-processing opencl simulation gpgpu xeon-phi
我的 OpenCL 应用程序未充分利用英特尔至强融核的功能。
内核使用数据库进行一些统计计算。因此,我在考虑是否可以添加第二个使用相同数据库的内核并在 Phi 上同时运行它们。
例如,为内核 1 使用 n/2 个线程,为内核 2 使用 n/2 个线程等。
有什么建议吗?
【问题讨论】:
标签: parallel-processing opencl simulation gpgpu xeon-phi
未充分利用英特尔至强融核的功能。
对内核 1 使用 n/2 个线程,对内核 2 使用 n/2 个线程等
如果内核使用过多内存并且缓存没有命中,您可以减少内核中循环的限制,以便每个线程在更少的内存上工作并且可能更频繁地命中缓存,然后应用第二个内核处理剩余的循环。如果每个线程有 m 个元素,您可以:
手动将内核向量化为 16 宽的组件,例如 int16 和 float16。
【讨论】: