Hydra:基于CPU-GPU结合体系架构的多种并行错误检测
摘要 | 第7-8页 |
Abstract | 第8页 |
1 引言 | 第9-12页 |
2 背景知识 | 第12-22页 |
2.1 CPU-GPU结合的体系架构 | 第12-15页 |
2.1.1 GPU发展概述 | 第12-13页 |
2.1.2 GPU体系架构 | 第13页 |
2.1.3 GPU编程模型 | 第13-14页 |
2.1.4 CPU-GPU结合体系架构 | 第14-15页 |
2.2 并行错误检测 | 第15-18页 |
2.2.1 数据竞争检测 | 第15-17页 |
2.2.2 原子性违背检测 | 第17-18页 |
2.2.3 顺序违背检测 | 第18页 |
2.3 并行错误检测算法分析 | 第18-21页 |
2.4 本章小结 | 第21-22页 |
3 Hydra设计 | 第22-37页 |
3.1 Hydra架构概览 | 第22-23页 |
3.2 访存收集模块 | 第23-25页 |
3.2.1 访存收集与时间戳生成 | 第23-24页 |
3.2.2 访存发送 | 第24-25页 |
3.3 访存预处理模块 | 第25-29页 |
3.3.1 访存接收 | 第26-27页 |
3.3.2 访存历史信息维护 | 第27-29页 |
3.4 GPU上的并行错误检测 | 第29-31页 |
3.5. Hydra的优化策略 | 第31-35页 |
3.5.1 计数Bloom过滤器优化策略 | 第32-33页 |
3.5.2 避免共享内存替换优化策略 | 第33-34页 |
3.5.3 “最后写”优化策略 | 第34-35页 |
3.6. Hydra虚拟化设计 | 第35-36页 |
3.7. 本章小结 | 第36-37页 |
4 Hydra评估 | 第37-50页 |
4.1. 实验环境 | 第37页 |
4.2. Hydra配置 | 第37-39页 |
4.3. 错误检测精确性 | 第39页 |
4.4. 性能评估 | 第39-49页 |
4.4.1 性能开销评估——单错误检测 | 第40-41页 |
4.4.2 性能开销评估——多错误同时检测 | 第41-42页 |
4.4.3 支持虚拟化性能开销 | 第42-43页 |
4.4.4 优化策略有效性 | 第43-45页 |
4.4.5 GPU规模需求与利用率 | 第45-46页 |
4.4.6 硬件空间开销与硬件复杂度 | 第46-47页 |
4.4.7 带宽开销 | 第47-49页 |
4.5. 本章小结 | 第49-50页 |
5 相关工作 | 第50-56页 |
5.1 并行错误检测 | 第50-54页 |
5.1.1 软件检测工具 | 第50-52页 |
5.1.2 硬件检测架构 | 第52-54页 |
5.2 CPU-GPU结合体系架构 | 第54-55页 |
5.3 本章小结 | 第55-56页 |
6 结语与期望 | 第56-58页 |
参考文献 | 第58-63页 |
致谢 | 第63-64页 |