加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

适用于CPU和GPU的相同代码库

发布时间:2020-12-16 06:59:11 所属栏目:百科 来源:网络整理
导读:有没有人有为CPU和GPU维护单一代码库的经验? 我想创建一个应用程序,在可能的情况下将使用GPU进行一些持久的计算,但如果目标机器上没有兼容的GPU,它将只使用常规CPU版本.如果我可以使用条件编译指令编写一部分代码来编写CPU版本和GPU版本,那将非常有用.当然
有没有人有为CPU和GPU维护单一代码库的经验?
我想创建一个应用程序,在可能的情况下将使用GPU进行一些持久的计算,但如果目标机器上没有兼容的GPU,它将只使用常规CPU版本.如果我可以使用条件编译指令编写一部分代码来编写CPU版本和GPU版本,那将非常有用.当然会有一些CPU和GPU不同的部分,但我想将算法的本质保留在一个地方.它可能吗?

解决方法

OpenCL是一种基于C语言.存在在GPU(从 NVidia和 AMD)和CPU(从 Intel和 AMD)运行的OpenCL平台.

虽然可以在GPU和CPU上执行相同的OpenCL代码,但它确实需要针对目标设备进行优化.需要为不同的GPU和CPU编写不同的代码以获得最佳性能.但是,CPU OpenCL平台可以作为GPU优化代码的低性能回退.

如果您乐于编写根据目标设备(CPU或GPU)执行的条件指令,则可以帮助在多个设备上执行OpenCL代码.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读