OpenMp简介及其相关资料

正文

8月份到现在,由于忙于各种事情,关于技术的学习密度有所下降,也已经许久没有更新。但这期间也是有一些学习产出,将近年关,不想放到年后再完善,最近趁机找了个时间便编写本文做一个总结吧
我们都知道在 多核CPU 下,在某些 计算密集业务 使用多线程可以有效提高程序速度,这也是我们常说的 并行计算。并行计算除了我们手动完成多线程的编写外,我们还可以有效利用编程标准 OpenMP 来帮助我们的程序在编译时自动完成程序的多线程化,或者说并行化。其优点 是在一部分场景下可以不对程序进行改动,使用编译性指导语言来完成程序的并行化,同时它也提供了多种机制来完满用户的复杂需求,如任务拆解、互斥访问等等。
笔者在学习 OpenMP 时,使用的是大学教材 《多核异构并行计算——OpenMP4.5 C/C++篇》。笔者对于该书的看法为:适用于入门 科学计算 ,其内容可以满足一般工程师的使用场景。对于一般的程序优化场景已经满足,可以通过阅读该书对 并行计算 进行系统的学习和了解。当然了,该书也有一些错误和有待优化的地方,需要读者在阅读的过程中辨别出来。
由于使用的是教材,其内容已经经过编排并且有效内容密度极高,笔者已经无法对其进行提炼和总结,所以笔者已经将学习过程中的各个章节总结成 思维导图,并将其相关代码例程编写保存下来。如果有兴趣学习 OpenMP 的读者,可以通过阅读此书。此书内容行文较为简单,对复杂的概念也有一些讲解。也希望笔者的代码和思维导图可以在读者的阅读过程中梳理思路,避免在理解概念的时候由于混淆和纠缠浪费时间。

以为资源的路径,有需要的读者可以自行前往获取:https://github.com/wipping/openMP_demo

你可能感兴趣的:(OpenMp简介及其相关资料)