如何通过并行化来改善计算时间

时间:2011-10-28 20:34:46

标签: c++ parallel-processing

我编写了一个c ++代码(使用STL),由于计算量很大,输出大约需要一个小时。我检查了GPU和CPU的并行化。我有一个ATI显卡和一个核心i7处理器。我应该在哪一个并行化以获得更好的结果。 您也可以建议阅读有关如何设置我的编译器以在任何这些平台上进行并行化的材料以及如何开始并行化

2 个答案:

答案 0 :(得分:2)

关于多核/ GPU编程的一般库:

  • Thrust用于GPU / CPU STL类接口编程
  • OpenMP用于多线程并行代码
  • TBB英特尔线程构建模块,用于并行编程的大量原始数据结构
总的来说,这个领域绝对是巨大的,没有答案可以说明这个话题。有许多方法可以实现并行化,首先是分析逻辑并查看可以并行有效计算的部分,然后围绕这些结果设计(或重新设计)算法。

答案 1 :(得分:1)

您还可以考虑使用OpenCL(及其图形卡的ATI Stream实现)重新编码数值内核。