图目录
表目录
摘要
1 引言
2 背景知识
2.1 CPU-GPU结合的体系架构
2.1.1 GPU发展概述
2.1.2 GPU体系架构
2.1.3 GPU编程模型
2.1.4 CPU-GPU结合体系架构
2.2 并行错误检测
2.2.1 数据竞争检测
2.2.2 原子性违背检测
2.2.3 顺序违背检测
2.3 并行错误检测算法分析
2.4 本章小结
3 Hydra设计
3.1 Hydra架构概览
3.2 访存收集模块
3.2.1 访存收集与时间戳生成
3.2.2 访存发送
3.3 访存预处理模块
3.3.1 访存接收
3.3.2 访存历史信息维护
3.4 GPU上的并行错误检测
3.5.Hydra的优化策略
3.5.1 计数Bloom过滤器优化策略
3.5.2 避免共享内存替换优化策略
3.5.3 “最后写”优化策略
3.6.Hydra虚拟化设计
3.7.本章小结
4 Hydra评估
4.1.实验环境
4.2.Hydra配置
4.3.错误检测精确性
4.4.性能评估
4.4.1 性能开销评估——单错误检测
4.4.2 性能开销评估——多错误同时检测
4.4.3 支持虚拟化性能开销
4.4.4 优化策略有效性
4.4.4 GPU规模需求与利用率
4.4.5 硬件空间开销与硬件复杂度
4.4.6 带宽开销
4.5.本章小结
5 相关工作
5.1 并行错误检测
5.1.1 软件检测工具
5.1.2 硬件检测架构
5.2 CPU-GPU结合体系架构
5.3 本章小结
6 结语与期望
参考文献
致谢
声明