面向复杂并行架构的高性能低功耗任务调度的研究
摘要 | 第6-8页 |
ABSTRACT | 第8-10页 |
目录 | 第11-16页 |
表格索引 | 第16-17页 |
插图索引 | 第17-21页 |
第一章 引言 | 第21-35页 |
1.1 并行架构 | 第22-24页 |
1.1.1 多路多核架构 | 第22-23页 |
1.1.2 非对称多核架构 | 第23-24页 |
1.2 任务调度策略/并行编程环境 | 第24-28页 |
1.2.1 手动任务调度策略/编程环境 | 第25-26页 |
1.2.2 自动任务调度策略/编程环境 | 第26-28页 |
1.3 现有任务窃取调度系统 | 第28-31页 |
1.3.1 MIT Cilk | 第29-30页 |
1.3.2 TBB | 第30页 |
1.3.3 X10 | 第30-31页 |
1.4 HPEE 任务调度系统概述 | 第31-35页 |
第二章 缓存感知双层任务窃取模块 (CAB) | 第35-83页 |
2.1 研究背景 | 第35-37页 |
2.2 研究动机 | 第37-40页 |
2.2.1 问题描述 | 第38-39页 |
2.2.2 解决方案 | 第39-40页 |
2.3 模块设计 | 第40-41页 |
2.4 任务图切分器 | 第41-50页 |
2.4.1 FTO 方案 | 第42-45页 |
2.4.2 GTO 方案 | 第45-50页 |
2.5 双层任务窃取调度器 | 第50-53页 |
2.5.1 任务窃取策略 | 第50-51页 |
2.5.2 任务生成模式 | 第51-53页 |
2.6 时间/空间复杂度分析 | 第53-56页 |
2.6.1 传统任务窃取策略的时间/空间复杂度 | 第53页 |
2.6.2 CAB 模块的时间复杂度 | 第53-55页 |
2.6.3 CAB 模块的空间复杂度 | 第55-56页 |
2.7 具体实现 | 第56-59页 |
2.7.1 编译器支持 | 第56-57页 |
2.7.2 运行时系统支持 | 第57-59页 |
2.8 实验验证 | 第59-77页 |
2.8.1 CAB-FTO 的性能 | 第60-65页 |
2.8.2 CAB-GTO 的性能 | 第65-76页 |
2.8.3 可用性讨论 | 第76-77页 |
2.8.4 评测结果总结 | 第77页 |
2.9 相关工作 | 第77-80页 |
2.10 本章小结 | 第80-83页 |
第三章 位置感知任务窃取模块 (LAWS) | 第83-107页 |
3.1 研究背景 | 第83-84页 |
3.2 研究动机 | 第84-86页 |
3.3 模块设计 | 第86-96页 |
3.3.1 总体设计 | 第87-88页 |
3.3.2 负载均衡任务分配器 | 第88-89页 |
3.3.3 自动任务图切分器 | 第89-92页 |
3.3.4 三层任务窃取调度器 | 第92-95页 |
3.3.5 理论验证 | 第95-96页 |
3.4 具体实现 | 第96-97页 |
3.5 实验验证 | 第97-104页 |
3.5.1 LAWS 模块的性能 | 第98-101页 |
3.5.2 自动任务图切分器的有效性 | 第101页 |
3.5.3 LAWS 模块的可扩展性 | 第101-104页 |
3.5.4 可用性讨论 | 第104页 |
3.6 相关工作 | 第104-105页 |
3.7 本章小结 | 第105-107页 |
第四章 带宽感知核分配模块 (BWC) | 第107-143页 |
4.1 研究背景 | 第107-109页 |
4.2 研究动机 | 第109-113页 |
4.2.1 核分配策略简介 | 第109-110页 |
4.2.2 研究动机 | 第110-113页 |
4.3 模块设计 | 第113-125页 |
4.3.1 策略设计 | 第113-115页 |
4.3.2 工作线程管理器 | 第115-118页 |
4.3.3 带宽感知的核分配器 | 第118-125页 |
4.4 具体实现 | 第125-126页 |
4.5 实验验证 | 第126-139页 |
4.5.1 实验平台搭建 | 第127-130页 |
4.5.2 BWC 模块的性能 | 第130-132页 |
4.5.3 BWC 模块的平衡性 | 第132-134页 |
4.5.4 BWC 动态调整的有效性 | 第134-135页 |
4.5.5 BWC 模块的可扩展性 | 第135-136页 |
4.5.6 运行周期长度的影响 | 第136-137页 |
4.5.7 BWC 模块的额外开销 | 第137-138页 |
4.5.8 可用性讨论 | 第138-139页 |
4.6 相关工作 | 第139-141页 |
4.7 本章小结 | 第141-143页 |
第五章 负载感知任务调度模块 (WATS) | 第143-171页 |
5.1 研究背景 | 第143-145页 |
5.2 研究动机 | 第145-150页 |
5.2.1 问题描述 | 第145-147页 |
5.2.2 最优解决方案 | 第147-148页 |
5.2.3 近最优解决方案 | 第148-150页 |
5.3 模块设计 | 第150-155页 |
5.3.1 基于历史的任务分配 | 第151-152页 |
5.3.2 基于偏好的任务窃取 | 第152-155页 |
5.4 具体实现 | 第155-156页 |
5.5 实验验证 | 第156-166页 |
5.5.1 WATS 模块的性能 | 第158-162页 |
5.5.2 基于历史任务分配的可扩展性 | 第162-163页 |
5.5.3 基于偏好任务窃取的有效性 | 第163-164页 |
5.5.4 加入任务抢夺策略 | 第164-165页 |
5.5.5 可用性讨论 | 第165-166页 |
5.6 相关工作 | 第166-168页 |
5.7 本章小结 | 第168-171页 |
第六章 高能效负载感知任务调度模块 (EEWA) | 第171-199页 |
6.1 研究背景 | 第171-173页 |
6.2 研究动机 | 第173-176页 |
6.2.1 问题描述 | 第173-176页 |
6.2.2 解决方案 | 第176页 |
6.3 模块设计及实现 | 第176-187页 |
6.3.1 负载感知频率调节器 | 第176-183页 |
6.3.2 基于偏好的任务调度器 | 第183-187页 |
6.4 实验验证 | 第187-193页 |
6.4.1 EEWA 模块的能效 | 第188-190页 |
6.4.2 探测阶段变化的有效性 | 第190-191页 |
6.4.3 EEWA 的额外开销 | 第191-192页 |
6.4.4 EEWA 的可扩展性 | 第192-193页 |
6.4.5 可用性讨论 | 第193页 |
6.5 相关工作 | 第193-197页 |
6.6 本章小结 | 第197-199页 |
第七章 全文总结 | 第199-203页 |
7.1 研究总结 | 第199-202页 |
7.2 研究展望 | 第202-203页 |
参考文献 | 第203-219页 |
致谢 | 第219-221页 |
攻读学位期间发表的学术论文目录 | 第221-223页 |
攻读学位期间参与的项目 | 第223页 |