多核程序设计.pptxVIP

  • 2
  • 0
  • 约8.33千字
  • 约 30页
  • 2023-07-03 发布于上海
  • 举报
多核程序设计第1页/共30页 2023/6/292OpenMP多线程编程基础OpenMP的编程模型以线程为基础,通过编译指导语句来显示地指导并行化,为编程人员提供了对并行化的完整的控制。OpenMP程序的执行模型采用Fork-Join的形式Fork,创建新线程或者唤醒已有线程;Join,即多线程的汇合Fork-Join执行模式在开始执行时,只有一个叫主线程的运行线程存在。主线程在运行中,需要进行并行计算时,派生出线程执行并行任务。在并行执行时,主线程和派生线程共同工作。在并行代码结束后,派生线程退出或挂起,控制流程回到单独的主线程中。第2页/共30页 2023/6/293OpenMP多线程编程基础共享内存多线程应用程序的Fork-Join模型如图主线程运行中,遇到并行编译指导语句,根据环境变量派生出线程某个派生线程遇到另一个编译指导语句,又派生出另外一组线程。新线程组在通过一个隐含的同步屏障后,汇合成原有的线程。MasterThreadParalllRegionNestedParallelRegion第3页/共30页 2023/6/294OpenMP多线程编程基础OpenMP同时支持C/C++语言和Fortran语言,可选择任意一种语言及支持OpenMP的编译器编写OpenMP程序。OpenMP应用程序的三个组成部分编译指导语句运行时库函数环境变量:通过环境变量的方式可以灵活控制程

文档评论(0)

1亿VIP精品文档

相关文档