Intel TBB的优点
Intel TBB替你指定合理的并行,代替自己线程化。大多数线程包需要你指定线程。直接对线程编程是冗长的并且导致无效的编程,因为线程是低阶的,需要接近硬件的重构造,直接利用线程编程强迫你把逻辑任务映射到线程中,相反,Intel TBB 运行时库自动把逻辑并行映射到现在中,有效利用处理器资源。
Intel TBB目标是性能。大多数通用线程包支持许多不同种线程,例如异步事件线程,结果,通用包趋向提够基础的低阶工具,而不是解决方案。替代,Intel TBB关注并行计算密集工作的目的,传递高阶,更简单的解决方案。
Intel TBB和其他线程包兼容。因为库没有设计解决所有线程问题,它能和其他线程包无缝共处。
Intel TBB强调可扩展,数据并行编程。把程序分成独立的函数块,把独立的线程分配给每个函数块是一个解决方案,但是这样扩展性不好,因为函数块的数量是固定的。相反,Intel TBB强调数据并行编程,使多个线程工作在数据集中不同部分,数据并行编程扩展性很好,处理器数量变大会把数据集分成更小的片段。利用数据并行编程,当你增加处理器时,程序性能也提高。
Intel TBB依赖泛型编程。传统的库接口依据指定类型或者基类,而TBB使用泛型编程,泛型编程的本质是利用最少的约束写出最好的算法。C++的STL就是一个泛型编程很好的例子,接口是根据所需类型指定的。
-
英特尔
+关注
关注
60文章
9879浏览量
171432 -
编程
+关注
关注
88文章
3587浏览量
93585 -
MPI
+关注
关注
2文章
111浏览量
19363
发布评论请先 登录
相关推荐
评论