多 核 架 构 及 编 程 技 术 教 学 大 纲 课 程 代 码 :20062022071 课 程 负 责 人 : 杨 剑 锋 课 程 中 文 名 称 : 多 核 架 构 及 编 程 技 术 课 程 英 文 名 称 :Multi-Core Architecture and Programming Technologies 课 程 类 别 : 专 业 必 修 课 程 学 分 数 :3 课 程 学 时 数 及 安 排 :72( 理 论 36 学 时, 实 验 36 学 时 ) 理 论 部 分 每 周 3 学 时, 共 6 周, 实 验 部 分 每 周 6 学 时, 共 6 周 ( 基 础 实 验 6 周 内 完 成, 课 程 设 计 利 用 课 外 时 间, 开 放 实 验 室, 需 在 第 18 周 前 完 成 ) 授 课 对 象 : 电 子 工 程 专 业 通 信 工 程 专 业 本 科 生 第 七 学 期 本 课 程 的 前 导 课 程 : 操 作 系 统 微 机 原 理 C 语 言 系 统 组 成 一 教 学 目 的 和 要 求 近 年 来, 在 Intel 等 公 司 的 大 力 推 动 下, 多 核 技 术 的 发 展 已 经 超 出 人 们 的 预 期 想 象 这 个 发 展 使 得 单 核 架 构 的 电 脑 逐 渐 被 替 代, 更 重 要 的 是 多 核 技 术 将 带 来 业 内 硬 件 和 软 件 设 计 理 念 和 方 法 上 一 系 列 的 更 新 和 变 革 多 核 时 代 的 到 来 无 疑 揭 开 了 计 算 机 发 展 历 史 的 新 篇 章 从 学 科 发 展 和 现 代 教 育 思 想 出 发, 结 合 工 科 专 业 特 点, 经 充 分 的 研 讨, 针 对 我 校 电 子 信 息 工 程 通 信 工 程 电 子 信 息 科 学 与 技 术 等 本 科 专 业, 我 们 创 建 了 多 核 架 构 及 编 程 技 术 课 程 立 体 体 系 该 体 系 结 构 为 : 课 堂 理 论 教 学 - 系 列 讲 座 - 实 践 性 教 学 ( 实 验 和 毕 业 设 计 ) 三 大 模 块 课 程 建 设 围 绕 该 立 体 体 系 进 行, 以 我 校 电 子 信 息 学 院 国 家 工 科 基 础 课 程 电 工 电 子 教 学 基 地 为 依 托, 以 一 级 学 科 信 息 与 通 信 工 程 为 龙 头, 坚 持 将 多 核 架 构 理 论 与 实 践 有 机 的 结 合, 贯 彻 少 而 精 与 博 而 通 教 学 思 想 的 创 新 实 践, 体 现 工 科 专 业 的 特 色 本 课 程 是 一 门 专 业 必 修 课, 采 用 课 堂 教 学 实 验 课 程 设 计 相 结 合 的 方 式, 着 重 培 养 学 生 的 实 际 动 手 能 力 教 学 目 的 : 掌 握 多 核 体 系 的 基 本 原 理 典 型 设 计 策 略, 全 面 深 入 了 解 多 核 体 系 架 构, 完 善 知 识 结 构, 能 在 多 核 平 台 上 进 行 并 行 编 程, 会 使 用 多 核 技 术 编 程 工 具 进 行 程 序 优 化 及 调 试, 理 解 多 核 技 术 对 其 他 学 科 的 影 响, 能 独 立 完 成 所 要 求 的 实 验 计 划
二 课 程 内 容 与 学 时 分 配 课 程 内 容 与 学 时 分 配 表 内 容 1 基 于 多 核 的 计 算 机 系 统 介 绍 (2 学 时 ) 2 多 核 计 算 机 系 统 的 操 作 系 统 (2 学 时 ) 3 并 行 体 系 与 多 核 体 系 结 构 (3 学 时 ) 4 基 于 多 核 计 算 机 系 统 的 软 件 开 发 工 具 (1 学 时 )( 实 验 中 要 讲 ) 基 础 理 论 5 基 于 多 核 的 软 件 设 计 (3 学 时 ) 6 基 于 多 核 计 算 机 系 统 的 编 程 技 术 (3 学 时 ) 7 基 于 多 核 平 台 的 程 序 调 试 技 术 (2 学 时 ) 8 基 于 多 核 的 编 译 优 化 技 术 (2 学 时 ) 1 多 核 软 件 开 发 工 具 (3 学 时 ) 2 Windows 系 统 下 多 线 程 编 程 (3 学 时 ) 3 Linux 系 统 下 多 线 程 编 程 (3 学 时 ) 基 础 实 验 4 Windows 系 统 下 利 用 OpenMP 进 行 进 行 多 线 程 编 程 (3 学 时 ) 5 利 用 Intel Thread Checker 工 具 进 行 程 序 错 误 调 试 (3 学 时 ) 6 利 用 Intel Profiler 工 具 进 行 多 线 程 程 序 调 试 (3 学 时 ) 课 程 设 计 ( 分 组 ) 1 集 群 服 务 器 多 排 队 模 型 ( 开 放 实 验 室,18 学 时 + 课 外 ) 2 基 于 中 文 的 Web 页 信 息 处 理 ( 开 放 实 验 室,18 学 时 + 课 外 ) 3 空 间 聚 类 分 析 ( 数 据 挖 掘 )( 开 放 实 验 室,18 学 时 + 课 外 ) 4 网 络 服 务 ( 开 放 实 验 室,18 学 时 + 课 外 ) 第 一 章 基 于 多 核 的 计 算 机 系 统 介 绍 (2 学 时 ) 第 一 节 单 核 处 理 器 基 础 内 容 : 为 了 更 好 地 理 解 多 核 硬 件 系 统 上 的 多 线 程 技 术, 首 先 对 单 核 处 理 器 的 运 行 原 理 进 行 回 顾, 为 理 解 多 核 处 理 器 体 系 结 构 打 下 基 础 本 节 内 容 包 括 处 理 器 概 念 南 北 桥 的 连 接 方 式 微 处 理 器 的 功 能 模 块 处 理 器 的 内 部 构 成 超 标 量 结 构 与 EPIC 结 构 的 对 比 等 重 点 讲 授 : 处 理 器 的 内 部 构 成 基 本 执 行 流 程 超 标 量 结 构 与 EPIC 结 构 的 对 比 第 二 节 基 于 多 核 的 计 算 机 系 统 内 容 : 为 什 么 要 多 核 多 核 是 什 么 多 核 处 理 器 结 构 并 行 计 算 平 台 与 传 统 的 对 称 多 处 理 器 (SMP) 的 区 别 多 核 带 来 的 软 件 挑 战 等 重 点 讲 授 : 为 什 么 要 多 核 多 核 是 什 么 多 核 处 理 器 结 构 多 核 带 来 的 软 件 挑 战
第 二 章 多 核 计 算 机 系 统 的 操 作 系 统 (2 学 时 ) 第 一 节 操 作 系 统 简 介 内 容 : 什 么 是 操 作 系 统 操 作 系 统 组 成 并 行 系 统 分 布 式 系 统 等 重 点 讲 授 : 操 作 系 统 原 理 比 较 第 二 节 多 核 操 作 系 统 内 容 及 功 能 内 容 : 多 核 平 台 的 发 展 趋 势 调 度 策 略 及 算 法 同 步 问 题 死 锁 问 题 重 点 讲 授 : 调 度 策 略 及 算 法 同 步 问 题 第 三 章 并 行 体 系 与 多 核 体 系 结 构 (3 学 时 ) 第 一 节 并 行 体 系 结 构 内 容 : 计 算 机 系 统 分 类, 典 型 的 计 算 机 并 行 系 统, 集 群 系 统, 并 行 计 算 概 念 引 出 等 重 点 讲 授 : 全 部 第 二 节 双 核 及 多 核 体 系 结 构 内 容 : 双 核 及 多 核 体 系 结 构 是 并 行 体 系 结 构 的 一 种, 特 点, 区 别 等 重 点 讲 授 : 全 部 第 三 节 并 行 计 算 内 容 : 为 什 么 需 要 并 行 计 算 并 行 编 程 并 行 编 程 模 型 OpenMP 重 点 讲 授 : 并 行 编 程 模 型 OpenMP 第 四 章 基 于 多 核 计 算 机 系 统 的 软 件 开 发 工 具 (1 学 时 ) 第 一 节 工 具 概 览 及 其 主 要 功 能 描 述 内 容 :Intel C++ 和 Fortran 编 译 器 Intel 数 学 核 心 函 数 库 和 Intel 集 成 性 能 原 件 库 Intel VTuneTM 性 能 分 析 器 Intel 线 程 检 测 器 和 Intel 调 试 器 Intel 线 程 直 方 统 计 器 等 重 点 讲 授 : 各 个 工 具 在 多 线 程 中 编 程 的 作 用 第 五 章 基 于 多 核 的 软 件 设 计 (3 学 时 ) 第 一 节 从 单 核 系 统 到 多 核 平 台 的 软 件 移 植 内 容 : 单 核 多 线 程 与 多 核 平 台 上 的 多 线 程 比 较, 存 储 器 快 存 与 线 程 优 先 级 重 点 讲 授 : 比 较 第 二 节 并 行 软 件 设 计 内 容 : 多 线 程 设 计 ( 任 务 分 解 数 据 分 解 数 据 流 分 解 比 较 ) 并 行 程 序 设 计 模 式 多 线 程 和 并 行
程 序 设 计 结 构 ( 同 步, 临 界 段, 死 锁, 同 步 原 语, 消 息, 流 控 制 ) 等 重 点 讲 授 : 全 部 第 三 节 基 于 多 核 平 台 的 应 用 内 容 : 科 学 计 算, 多 媒 体 处 理, 多 排 队 队 列, 文 本 处 理 等 重 点 讲 授 : 文 本 处 理, 科 学 计 算 第 六 章 基 于 多 核 计 算 机 系 统 的 编 程 技 术 (3 学 时 ) 第 一 节 线 程 API 内 容 :Windows 的 线 程 API,.NET 框 架 的 线 程 API,POSIX 线 程 重 点 讲 授 : 线 程 同 步 机 制, 线 程 池, 优 先 级 等 第 二 节 OpenMP 内 容 : 将 循 环 多 线 程 化 所 面 临 的 挑 战, 提 高 程 序 性 能 的 设 计 方 法,OpenMP 库 函 数,OpenMP 环 境 变 量, 编 译, 调 试, 性 能, 特 点 重 点 讲 授 : 设 计 方 法, 库 函 数, 环 境 变 量, 调 试 第 三 节 一 些 并 行 程 序 设 计 问 题 的 解 决 办 法 内 容 : 线 程 过 多, 数 据 竞 争 死 锁 和 活 锁, 非 阻 塞 算 法, 线 程 安 全 函 数 和 库, 存 储 问 题,Cache 相 关 的 问 题, 避 免 IA-32 上 的 流 水 线 停 顿, 面 向 高 性 能 的 数 据 组 织 重 点 讲 授 : 线 程 过 多, 非 阻 塞 算 法,Cache 相 关 的 问 题, 面 向 高 性 能 的 数 据 组 织 第 七 章 基 于 多 核 平 台 的 程 序 调 试 技 术 (2 学 时 ) 第 一 节 通 用 调 试 技 术 与 Windows 多 线 程 程 序 调 试 内 容 : 在 设 计 多 线 程 应 用 程 序 时 应 该 考 虑 的 问 题, 使 用 Trace 缓 冲 扩 展 应 用 程 序,Thread 窗 口, 跟 踪 点, 断 点 过 滤, 线 程 命 名, 重 点 讲 授 : 在 设 计 多 线 程 应 用 程 序 时 应 该 考 虑 的 问 题,Thread 窗 口, 跟 踪 点 第 二 节 使 用 GDB 进 行 多 线 程 调 试 内 容 :GDB 功 能, 创 建 线 程 通 告, 设 置 线 程 相 关 断 点, 线 程 之 间 的 切 换 重 点 讲 授 : 设 置 线 程 相 关 断 点, 线 程 之 间 的 切 换 第 八 章 基 于 多 核 的 编 译 优 化 技 术 (2 学 时 ) 第 一 节 编 译 回 顾 内 容 : 什 么 是 编 译, 作 用, 过 程, 常 用 编 译 技 术 重 点 讲 授 : 作 用, 方 法
第 二 节 基 于 多 核 多 线 程 程 序 的 编 译 方 法 内 容 :Intel 编 译 器, 编 译 选 项, 自 动 并 行, 编 译 器 优 化 和 Cache 优 化 重 点 讲 授 : 全 部 基 础 实 验 实 验 一 多 核 软 件 开 发 工 具 (3 学 时 ) 实 验 二 Windows 系 统 下 多 线 程 编 程 (3 学 时 ) 实 验 三 Linux 系 统 下 多 线 程 编 程 (3 学 时 ) 实 验 四 Windows 系 统 下 利 用 OpenMP 进 行 进 行 多 线 程 编 程 (3 学 时 ) 实 验 五 利 用 Intel Thread Checker 工 具 进 行 程 序 错 误 调 试 (3 学 时 ) 实 验 六 利 用 Intel Profiler 工 具 进 行 多 线 程 程 序 调 试 (3 学 时 ) 课 程 设 计 : 分 组 进 行 注 重 培 养 学 生 将 多 核 编 程 技 术 灵 活 运 用 到 实 际 需 求 环 境 中 的 能 力, 特 别 是 本 学 科 领 域 的 应 用 能 力 本 部 分 实 践 性 实 验 内 容 包 括 中 文 文 本 信 息 处 理 集 群 服 务 器 多 排 队 模 型 数 据 挖 掘 ( 空 间 聚 类 分 析 ) 网 络 服 务 共 4 个 综 合 性 实 验 的 设 计 工 作 ( 图 像 处 理 与 语 音 分 析 的 实 验 工 作 在 准 备 过 程 中, 设 计 完 成 后 将 加 入 到 多 核 课 程 课 程 设 计 部 分 ) 这 部 分 实 验 都 是 由 课 程 组 教 师 在 研 或 已 经 完 成 的 课 题 任 务 演 变 而 来, 有 较 好 的 实 验 基 础, 同 时 在 这 部 分 实 验 准 备 的 过 程 中, 也 得 到 Intel 公 司 相 关 架 构 工 程 师 及 软 件 工 程 师 的 帮 助 和 指 导, 保 证 了 实 验 过 程 结 果 的 正 确 性 现 分 别 对 这 4 个 综 合 性 实 验 ( 课 程 设 计 ) 进 行 简 单 介 绍 : 中 文 文 本 信 息 处 理 : 背 景 : 计 算 机 自 诞 生 之 日 起 就 是 以 西 方 语 言 为 基 础 的, 而 对 于 缺 乏 形 态 的 汉 语 来 说, 国 外 的 计 算 机 语 言 学 并 不 能 适 用 对 于 汉 语 的 计 算 机 自 动 处 理, 至 今 仍 然 没 有 真 正 进 入 到 句 子 理 解 或 句 群 处 理 的 阶 段 对 于 中 文 文 本 的 信 息 处 理, 全 国 人 大 副 委 员 长 许 嘉 璐 先 生 曾 给 予 了 高 度 关 注 与 支 持, 并 主 持 了 863 项 目 中 文 信 息 处 理 现 代 汉 语 应 用 基 础 研 究 在 中 文 信 息 处 理 过 程 中, 分 词 过 程 需 要 查 字 典, 消 耗 了 大 量 的 时 间, 效 率 较 低 以 往 的 程 序 都 是 顺 序 执 行 的, 所 以 将 多 核 技 术 运 用 到 中 文 信 息 处 理 中 来 具 有 重 要 的 实 践 意 义 和 研 究 价 值 撇 开 如 何 对 汉 语 进 行 理 解 不 说, 在 此 我 们 专 门 对 中 文 文 本 中 的 分 词 进 行 研 究, 其 中 根 本 原 因 是,(a) 中 文 与 西 方 语 言 的 最 大 区 别 在 于 西 方 语 言 的 单 词 之 间 有 空 格, 而 汉 语 没 有, 所 以 对 汉 语 进 行 处 理 必 须 要 进 行 分 词 (b) 分 词 的 案 例 对 于 理 解 基 于 多 核 的 编 程 具 有 重 要 的 实 践 意 义, 可 以 使 学 生 通 过 本 案 例 的 学 习 分 析 进 而 掌 握 线 程 数 量 设 置 共 享 内 存 的 处 理 同 步 机 制 处 理 线 程 粒 度 大 小 设 置 等 一 系 列 在 基 础 实 验 中 没 有 遇 到 的 问 题 (c) 基 于 多 核 技 术, 可 以 使 分 词 速 度 得 到 提 高, 可 以 减 少 响 应 时 间, 提 高 中 文 文 本 信 息 处
理 的 性 能 具 有 重 要 的 实 际 价 值 (d) 分 词 阶 段 顺 序 执 行 的 程 序 有 较 大 的 并 行 处 理 空 间 (e) 有 研 究 基 础 及 项 目 支 持 我 们 已 经 初 步 完 成 了 具 有 自 主 知 识 产 权 的 自 动 分 词 体 系, 建 立 了 基 于 虚 词 动 词 等 词 性 的 词 库 ( 字 典 ) 主 题 : 基 于 多 核 平 台 的 多 线 程 自 动 分 词 算 法 研 究 处 理 对 象 : 中 文 Web 页 文 本 内 容 目 的 : 通 过 Intel 编 程 工 具 的 使 用, 提 高 自 动 分 词 的 效 率 集 群 服 务 器 多 排 队 模 型 : 背 景 : 本 设 计 项 目 来 源 于 武 汉 市 重 点 科 技 攻 关 计 划 项 目 高 性 价 比 集 群 服 务 器 我 们 在 2005 年 完 成 了 该 项 目 的 研 究 工 作 对 于 Web 服 务 而 言, 当 大 量 的 请 求 来 临, 服 务 器 系 统 负 载 不 断 增 加, 当 超 过 承 受 能 力 的 时 候,HTTP 服 务 器 行 为 将 变 得 难 以 预 料, 或 者 使 请 求 长 时 间 处 理 排 队 状 态, 或 者 不 加 区 分 丢 弃 到 来 的 请 求, 或 者 低 优 先 级 的 请 求 有 可 能 妨 碍 了 高 优 先 级 请 求 的 服 务 质 量 而 在 服 务 器 承 受 能 力 之 内 的 时 候, 系 统 采 用 排 队 的 方 式 对 各 个 请 求 进 行 处 理 集 群 服 务 器 是 用 多 个 一 般 服 务 器 组 成 集 群, 对 外 作 为 一 个 服 务 器 进 行 发 布 使 用 这 样, 对 于 外 部 的 请 求, 首 先 要 进 行 请 求 分 类, 将 各 个 请 求 根 据 请 求 类 型 进 而 转 发 到 相 应 的 服 务 器 上 进 行 处 理 我 们 已 经 实 现 了 网 络 请 求 的 动 态 负 载 均 衡 算 法 临 界 加 速 递 减 均 衡 算 法 系 统 采 用 Linux 作 为 操 作 系 统 对 于 多 核 计 算 机 而 言, 每 个 计 算 机 有 多 个 具 有 独 立 处 理 能 力 的 核, 相 比 较 于 集 群 服 务 器, 从 某 种 意 义 上 说, 每 个 多 核 计 算 机 相 当 于 2 台 或 4 台 普 通 计 算 机 的 集 群 这 样 就 出 现 了 新 的 问 题, 一 是 多 核 PC 与 普 通 PC 的 集 群 之 间 有 本 质 的 区 别, 也 区 别 于 多 CPU 结 构, 如 SMP( 对 称 多 处 理 器 ) 这 样, 请 求 任 务 的 调 度 算 法 将 会 有 很 大 的 区 别, 原 有 的 排 队 模 型 将 不 能 有 效 发 挥 多 核 的 效 率, 需 要 重 新 进 行 设 计 二 是 如 果 采 用 多 核 PC 作 为 集 群 的 组 成, 我 们 面 临 的 问 题 如 何 设 计 合 适 的 调 度 算 法 与 建 立 高 效 的 排 队 模 型 据 我 们 了 解, 目 前 国 内 还 没 有 相 关 机 构 进 行 此 方 面 的 研 究 主 题 : 基 于 多 核 技 术 的 集 群 服 务 器 多 排 队 模 型 对 象 :Web 服 务 数 据 挖 掘 ( 空 间 聚 类 分 析 ): 背 景 : 聚 类 分 析 是 数 据 挖 掘 的 重 要 分 支, 属 于 人 工 智 能 的 范 畴 可 以 通 过 聚 类 分 析 进 行 知 识 发 现 文 本 聚 类 空 间 数 据 聚 类 等 一 系 列 信 息 处 理 工 作, 如 在 GPS 数 据 集 中 就 需 要 对 所 有 的 空 间 点 进 行 聚 类, 以 得 到 能 正 确 反 映 地 面 特 征 的 数 据 子 集 以 往 的 空 间 聚 类 程 序 都 是 顺 序 执 行 的, 通 过 我 们 的 分 析, 如 果 能 正 确 处 理 好 线 程 之 间 的 同 步 关 系, 发 现 空 间 聚 类 60% 以 上 的 程 序 可 以 并 行 执 行 在 此, 我 们 以 10 万 个 点 的 空 间 数 据 集 为 实 验 对 象, 进 行 多 核 多 线 程 空 间 聚 类 分 析 实 验
主 题 : 基 于 多 核 平 台 的 空 间 聚 类 分 析 研 究 实 验 对 象 :10 万 个 对 象 ( 二 维 ) 的 数 据 集 合 目 的 : 提 高 聚 类 效 率, 减 小 执 行 时 间 网 络 服 务 : 背 景 : 直 接 运 用 多 核 服 务 器 作 为 网 站 服 务 器, 由 于 内 核 级 的 线 程 控 制 可 由 系 统 来 进 行 调 配, 同 样 可 以 加 快 系 统 响 应 速 度, 但 是 这 并 不 能 真 正 发 挥 多 核 的 效 率 要 真 正 发 挥 多 核 的 作 用, 需 要 对 服 务 程 序 进 行 并 行 处 理 在 未 来 多 核 遍 天 下 的 实 际 环 境 中, 对 Web 服 务 的 多 核 多 线 程 设 计 具 有 实 际 指 导 意 义 和 较 高 的 研 究 价 值 主 题 : 基 于 多 核 平 台 的 Web 服 务 器 多 核 多 线 程 程 序 设 计 方 法 : 利 用 多 核 服 务 器 替 代 学 院 和 学 校 的 网 站 服 务 器, 重 新 进 行 Web 服 务 程 序 的 编 写 工 作, 提 高 服 务 器 响 应 时 间 以 上 这 四 个 课 程 设 计 从 本 专 业 领 域 的 几 个 方 面 来 进 行 多 核 的 应 用 实 践 和 设 计, 从 而 更 好 地 体 现 多 核 的 价 值, 让 学 生 实 实 在 在 将 多 核 的 学 习 与 其 它 专 业 知 识 的 学 习 有 机 结 合 起 来, 同 时 也 使 学 生 促 使 学 生 进 一 步 熟 悉 多 核 架 构 概 念 及 Intel 工 具 包 的 使 用 三 教 材 与 参 考 书 课 堂 教 材 :Multi-core Programming: Increasing Performance through Software Multi-threading ( 中 文 译 本 为 : 多 核 程 序 设 计 技 术 -- 通 过 软 件 多 线 程 提 升 性 能 ), 电 子 工 业 出 版 社,Shameem Akhter 著, 李 宝 峰 等 译 实 验 教 材 : 自 编 参 考 书 :[1] PARALLEL PROGRAMMING IN C WITH MPI AND OPENMP ( 影 印 版 ), 清 华 大 学 出 版 社, Michael J Quinn 著,2005 年 [2] Parallel processing ( 英 文 版 ),Harry F.Jordan 著, 清 华 大 学 出 版 社,2003 年 [3] 编 译 原 理 及 编 译 程 序 构 造, 高 仲 仪 金 茂 忠, 北 航 出 版 社 [4] 编 译 原 理, 吕 映 芝, 张 素 琴 等, 清 华 大 学 出 版 社,1998 年 [5] http://www.intel.com/multi-core/ [6] http://www.intel.com/software/college/ [7] http://www.intel.com/ids
四 作 业 和 考 核 方 式 作 业 : 课 后 作 业 和 实 验 报 告, 批 改 考 核 方 式 : 闭 卷 笔 试 分 数 构 成 : 100%( 总 分 数 )=40%( 笔 试 成 绩 )+30%( 实 验 报 告 )+30%( 课 程 设 计 )