英特尔®平台并行程序设计课程:初级-并行编程基础

提交新文章

2009年06月25日 09:00


平台:英特尔®多核处理器平台

实验环境:Microsoft Windows*/Linux*

课程长度:1.5 天

课程费用:¥1500/人

目标学员:课程适合有一定程序设计经验(两年以上)的初级程序员

课程描述:本课程为期一天半,采用课堂讲解与动手实验相结合的方式,讲授并行程序设计的基本概念和方法,主要讲解“四步走”(问题及服务描述,并行分解方法设计实现和简单调优)方法学和在通用平台(Windows*)上的实现手段。课程结束,学员将能开始进行并行程序的开发。

课程安排:

时间

第一天

第二天

09:00

课程概述

OpenMP编程

 

多核架构概述

10:00

 

线程概念

设计线程化应用提高软件性能

11:00

 

午餐

12:00

午餐

 

13:00

性能方法学

 

 

14:00

Win32*/POSIX*线程编程

 

15:00

 

16:00

 


课程大纲:

第一章: 课程概述
       概要介绍课程内容、课程目标、讲师及教学日程。

第二章:多核架构概述
目标:
  • 阐述多核架构的必要性;
  • 阐述开发线程化软件以利用多核优势的必要性;

  • 日程:
  • 处理器历史发展图
  • 多核技术革新
  • 基本架构
  • 更好的并行化
  • 功耗频率比
  • 多线程化以利用多核
  • 酷睿2架构概述


  • 第三章:线程概念
    目标:
  • 使用真实世界中的例子介绍通用的线程化思想

  • 日程:
  • 基本概念
  • 程序设计概念
  • 正确性考量
  • 性能考量


  • 第四章:性能方法学
    目标:
  • 认识与性能调优相关的主要任务;
  • 介绍并定义一些与性能调优相关的重要参数;
  • 了解英特尔®软件工具提供的帮助;

  • 日程:
  • 性能周期概述:何时开始;预期性能提升;何时停止;保持洞察力;
  • 性能周期详述:收集性能数据;分析数据并识别问题;解决问题的选择;实现性能提升;


  • 第五章:Win32*/POSIX*线程编程
    目标:
  • 学习产生和销毁线程的代码;
  • 使用同步对象来协调线程执行和内存访问;

  • 日程:
  • 认识Win32*/POSIX*线程API函数:产生线程;等待线程终止;线程间同步共享访问
  • 动手实验


  • 第六章:OpenMP编程
    目标:
  • 深入介绍使用OpenMP pragmas进行多线程编程及相关API

  • 日程:
  • 线程产生、终止及控制
  • 数据辖域,线程本地存储方法
  • 互斥及同步技术


  • 第七章:设计线程化应用提高软件性能
    目标:
  • 理解线程及多线程编程基本概念;
  • 将串行代码设计为并行应用;
  • 为应用决定合适的分解策略;
  • 选择实用的并行模型实现;

  • 日程:
  • 硬件及并行计算
  • 并行程序设计方法
  • 并行程序的错误
  • 设计过程检查列表
  • 实用的方法学