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

使用OpenMP和C的算法库

发布时间:2020-12-16 07:31:30 所属栏目:百科 来源:网络整理
导读:我在GNU / Linux桌面上使用G编程语言和GCC.我正在努力实施 C中的一些PRAM并行算法.据我所知,在多核CPU上或多或少的OpenMP,有助于模拟CREW PRAM算法. 许多复杂的PRAM算法涉及并行前缀和,排序等操作, 对全局地址空间中的向量执行元素操作等. 不知何故,经过大约
我在GNU / Linux桌面上使用G编程语言和GCC.我正在努力实施
C中的一些PRAM并行算法.据我所知,在多核CPU上或多或少的OpenMP,有助于模拟CREW PRAM算法.

许多复杂的PRAM算法涉及并行前缀和,排序等操作,
对全局地址空间中的向量执行元素操作等.

不知何故,经过大约15分钟的谷歌搜索,似乎没有提供此功能的库,即一些开箱即用的基本并行算法或数据结构,如标准模板库.

有人可以列出任何这样的库吗?

编辑:基本上,我需要的是一个OpenMP类似于Thrust库的模拟
CUDA世界. http://thrust.github.com/

解决方法

Thrust支持通过OpenMP或TBB以及通过CUDA的GPU在多核上并行执行.从 website:

Thrust is a parallel algorithms library which resembles the C++
Standard Template Library (STL). Thrust’s high-level interface greatly
enhances programmer productivity while enabling performance
portability between GPUs and multicore CPUs. Interoperability with
established technologies (such as CUDA,TBB,and OpenMP) facilitates
integration with existing software. Develop high-performance
applications rapidly with Thrust!

这里有一些关于如何访问Thrust的多核功能的额外information.

(编辑:李大同)

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

    推荐文章
      热点阅读