C/C++ OpenMP 并发编程(学习与整理)
发布时间
阅读量:
阅读量
并发系统分为两种:
- 共享内存系统是一种架构模式,在这种模式下多个计算核能够共同分享并访问同一台计算机的主存空间。
- 分布式内存系统是一种设计模型,在这种模型中每个计算节点都拥有各自独立且私有的内存量存空间。

OpenMP是一种基于共享内存的多线程程序设计框架,在现代开发环境中广泛应用于高性能计算领域。该技术提供了一种对并行计算进行高层次抽象的方法,并特别适合于多核处理器环境下的高效编程设计。目前已有诸多主流编程语言和开发工具集成支持这一标准接口,在某些特定条件下可实现跨平台兼容性。值得注意的是,在现代软件开发实践中,默认情况下多数高级编程语言都会自带对OpenMP的支持机制;若某编译器未内置OpenMP指令支持,则相应程序将无法自动并行化处理其相关指令序列。此外,在Visual Studio开发环境中运行至Releas模式时才可实现程序的并行化特性;而调试模式下则由于优化机制被禁用而无法体现出该技术的实际优势。
OpenMP遵循分支-整合并行执行模式。当一个线程遇到需要执行的并行结构时,则会由该进程以及其它相关进程共同组成一个进程群。在该进程群中扮演主要角色的是主线进程,在
全部评论 (0)
还没有任何评论哟~
