〖课前思考〗
  在共享存储结构的计算机上最简单的通信方法是什么?MPI可以针对这种结构作什么优化?在共享存储多处理器系统中你认为哪种程序模型具有更高的性能?线程与进程有什么不同?

  〖学习目标〗
  本章对面向共享存储多处理器系统上的并行程序设计语言OpenMP进行详细的介绍,掌握它的概念和用法是本章的主要目的。同时需要理解共享存储多处理器系统和分布存储多处理器系统之间的区别,代表性的程序结构和不同的程序优化方法。

  〖学习指南〗
  和MPI的学习一样,尽量多的编写实际程序,不断的对程序作修改并比较各种程序实现方式的性能才能加深对OpenMP的理解。在学习的过程中,要注意和MPI的一些相关概念进行比较,这样才能理解OpenMP标准制定背后的一些动机。另外,在程序的实现过程中,也需要对并行算法的设计进行重新考虑,这样才能对共享存储多处理器系统上的程序设计的本质有比较深入的理解。

  〖难重点〗
  ● Fork-join模型
  ● 并行任务说明
  ● 数据环境说明
  ● 同步结构

  〖知识点〗
  ● Fork-join模型
  ● OpenMP指导语句的格式
  ● 条件编译
  ● 并行任务说明
  ● 数据环境说明
  ● 同步结构
  ● 孤儿指导语句
  ● 动态绑定
  ● 嵌套并行
  ● 运行时库函数调用
  ● 环境变量