首页--工业技术论文--自动化技术、计算机技术论文--计算技术、计算机技术论文--电子数字计算机(不连续作用电子计算机)论文--运算器和控制器(CPU)论文

可伸缩的确定性重放技术研究

摘要第12-14页
Abstract第14-15页
第一章 绪论第16-32页
    1.1 多核与并发错误第16-18页
    1.2 确定性重放技术及其用途第18-19页
    1.3 确定性重放技术原理第19-22页
        1.3.1 确定性重放的要求第19-20页
        1.3.2 确定性重放与状态机第20-22页
        1.3.3 不确定性的来源第22页
    1.4 确定性重放相关研究工作第22-28页
        1.4.1 全系统确定性重放第23-24页
        1.4.2 应用程序确定性重放第24-27页
        1.4.3 非确定性重放第27页
        1.4.4 确定性执行第27-28页
    1.5 本文主要贡献第28-29页
        1.5.1 之前研究工作的不足第28页
        1.5.2 本文主要贡献第28-29页
    1.6 本文结构安排第29-32页
第二章 可伸缩的访存顺序记录算法第32-48页
    2.1 共享访存带来的不确定性第32-33页
    2.2 基于全局时钟记录访存指令全序第33-34页
    2.3 基于CREW协议记录访存指令偏序第34-35页
    2.4 InstantReplay的算法第35-36页
    2.5 SMP-ReVirt的算法第36-41页
        2.5.1 SMP-ReVirt记录方法不可伸缩的原因第38-40页
        2.5.2 SMP-ReVirt可能的改进方法第40-41页
    2.6 可伸缩的访存顺序记录算法第41-47页
        2.6.1 从日志还原访存顺序第44-47页
    2.7 本章小结第47-48页
第三章 可伸缩的全系统确定性重放第48-86页
    3.1 引言第48-50页
    3.2 全系统模拟器简介第50-52页
    3.3 全系统模拟器中不确定性的来源第52-53页
    3.4 ReEmu的实现第53-60页
        3.4.1 系统检查点的创建第54页
        3.4.2 定位系统执行点第54-55页
        3.4.3 中断的记录和重放第55-56页
        3.4.4 DMA的记录和重放第56-57页
        3.4.5 走页表顺序的记录第57-59页
        3.4.6 不确定性指令的记录与重放第59页
        3.4.7 避免COREMU自身的不确定性第59-60页
    3.5 共享访存顺序记录的实现第60-70页
        3.5.1 共享对象的划分第60-61页
        3.5.2 锁的选择第61-63页
        3.5.3 高效的日志记录第63-64页
        3.5.4 ReEmu记录访存顺序的完整实现第64-66页
        3.5.5 处理器指令重排对算法实现的影响第66-67页
        3.5.6 志处理第67-68页
        3.5.7 重放算法的实现第68-69页
        3.5.8 拦截COREMU中所有的访存操作第69-70页
    3.6 使用锁聚集优化减少访存记录开销第70-73页
        3.6.1 冲突访问通知机制的实现第72页
        3.6.2 对程序行为的影响第72-73页
    3.7 确定性重放正确性的验证第73-74页
    3.8 ARM客户系统的支持第74-75页
    3.9 系统性能测试第75-84页
        3.9.1 并行基准程序第76页
        3.9.2 ReEmu性能开销第76-78页
        3.9.3 可伸缩性第78-80页
        3.9.4 性能优化带来的好处第80-82页
        3.9.5 共享对象大小对性能的影响第82页
        3.9.6 日志大小第82-83页
        3.9.7 ARM系统的性能第83-84页
    3.10 系统局限性第84页
    3.11 本章小结第84-86页
第四章 可伸缩的应用程序确定性重放第86-122页
    4.1 引言第86-89页
        4.1.1 相关工作存在问题第86-88页
        4.1.2 研究目标第88-89页
    4.2 二进制翻译工具介绍与比较第89-91页
        4.2.1 DynamoRIO简介第90-91页
    4.3 应用程序不确定性的来源第91-93页
    4.4 Dr.Replay的实现第93-108页
        4.4.1 地址空间的处理第93页
        4.4.2 信号的记录和重放第93-95页
        4.4.3 系统调用的记录和重放第95-99页
        4.4 4 文件读写的记录和重放第99-103页
        4.4.5 Futex的记录与重放第103-108页
        4.4.6 读取未初始化内存的处理第108页
    4.5 访存顺序的记录第108-111页
        4.5.1 访存指令前后插桩第108-111页
    4.6 系统正确性的验证第111页
    4.7 性能测试第111-119页
        4.7.1 性能开销第112-116页
        4.7.2 可伸缩性第116-118页
        4.7.3 日志大小第118页
        4.7.4 与PinPlay的比较第118-119页
    4.8 系统局限性第119-120页
    4.9 本章小结第120-122页
第五章 探索利用硬件事务内存记录访存顺序第122-136页
    5.1 TSX编程模型以及指令性能测试第123-126页
        5.1.1 HLE简介第123页
        5.1.2 RTM简介第123-124页
        5.1.3 TSX性能测试第124-126页
    5.2 探索在VCREW算法中使用TSX第126-128页
    5.3 程序行为与访存记录算法影响的分析第128-129页
    5.4 基于事务提交顺序的访存顺序记录算法第129-134页
        5.4.1 事务提交算法的问题第131-132页
        5.4.2 性能测试第132-133页
        5.4.3 日志大小第133-134页
        5.4.4 修改硬件的类似算法第134页
    5.5 本章小结第134-136页
第六章 总结与展望第136-140页
    6.1 工作总结第136-137页
    6.2 工作展望第137-140页
        6.2.1 基于局部指令分析优化Dr.Replay性能第137-138页
        6.2.2 应用传递规约算法减少日志第138页
        6.2.3 与调试工具的结合第138页
        6.2.4 完善基于事务提交顺序的访存记录算法第138-140页
参考文献第140-152页
发表文章目录第152-154页
致谢第154-155页

论文共155页,点击 下载论文
上一篇:改性纳米氧化铈对义齿树脂基托机械性能的影响
下一篇:载银纳米TiO2抗菌剂对藻酸盐印模材料抗菌性能及其物理性能的影响