片上多线程体系结构资源分配策略的研究

片上多线程体系结构资源分配策略的研究

论文摘要

随着晶体管集成密度的日益提高和处理器体系结构的不断发展,处理器的研究和设计正迎来片上多线程时代。片上多线程体系结构让多个线程在单个处理器芯片同时运行,共享并竞争各种片上资源,显著提高了处理器的资源利用率和整体处理能力。然而,多线程并行会带来新的设计和实现困难:一、增大了处理器内部各种共享资源的设计和实现压力,包括尺寸、复杂度、功耗、延迟等方面;二、资源的不合理分配和不恰当竞争容易引发资源滥用,从而影响资源利用的效率、公平及整体性能。针对上述问题,本文从资源分配的角度对片上多线程体系结构进行研究,旨在减轻共享资源的设计和访问压力,提高资源利用的效率和公平、降低资源分配的实现代价、提高整体处理能力、提高资源分配的安全等。首先,设计并实现了片上多线程体系结构的节拍级模拟工具OpenSimCMT,构建了片上多线程体系结构的基础研究平台。在此基础上对片上多线程体系结构的资源分配问题进行研究。主要研究内容包括以下几个方面:多线程并行进一步增大了寄存器文件的设计和访问压力,传统的寄存器重命名技术难以满足多线程并行对寄存器数量的巨大需求,寄存器文件已成为未来处理器进一步提高性能的潜在瓶颈之一。本文利用寄存器目标值的分布特性、寄存器资源的分配特点以及多线程对共享资源占用的互补性,提出两级分配多可用重命名寄存器技术,使每个寄存器的存储效率提高将近一倍,有效缓解了片上多线程体系结构对寄存器文件设计压力。资源滥用现象导致片上多线程处理器的资源利用率下降及整体处理能力降低。本文分析产生资源滥用的深层次原因,提出资源占用均衡度的概念,作为资源利用效率和公平的统一评测尺度。而后提出线程感知的寄存器重命名机制、并以此为基础间接调控其它共享资源的分配,实现线程感知的资源分配策略,提高多线程环境下资源利用的效率和公平,消除资源滥用现象,实现资源的按需分配,提高整体处理能力。片上多线程体系结构的一个重要应用领域是借助线程的冗余运行提高处理器的容错计算能力。本文从资源分配和线程调度的角度对各种冗余多线程体系结构进行研究对比,提出了间隔译码的同时冗余线程体系结构。该结构

论文目录

  • 摘要
  • Abstract
  • 第1章 绪论
  • 1.1 引言
  • 1.2 片上多线程体系结构
  • 1.2.1 线程级并行的特点
  • 1.2.2 显式多线程
  • 1.2.3 隐式多线程
  • 1.2.4 冗余多线程
  • 1.2.5 CMT的发展趋势
  • 1.3 片上多线程处理器的资源分配问题
  • 1.3.1 研究目的和意义
  • 1.3.2 需要分配的各种资源
  • 1.3.3 资源分配的效率
  • 1.3.4 资源分配的公平
  • 1.3.5 实现代价的考虑
  • 1.3.6 性能和容错的权衡
  • 1.3.7 安全方面的考虑
  • 1.3.8 资源互补性的挖掘和利用
  • 1.4 片上多线程体系结构的模拟实验研究
  • 1.4.1 模拟研究的意义
  • 1.4.2 模拟精度和速度问题
  • 1.5 本文主要研究内容与结构
  • 第2章 模拟实验环境的建立
  • 2.1 引言
  • 2.2 相关模拟器
  • 2.2.1 SimpleScalar
  • 2.2.2 其它模拟工具
  • 2.3 测试程序集
  • 2.3.1 SPEC CPU 2000
  • 2.3.2 SimPoint代表性片段
  • 2.3.3 基准程序的分类
  • 2.4 OpenSimCMT的设计与实现
  • 2.4.1 设计要点
  • 2.4.2 实现过程
  • 2.4.3 应用过程
  • 2.5 模拟精度和速度方面的考虑
  • 2.5.1 保证模拟精度
  • 2.5.2 提高模拟速度和进度
  • 2.6 本章小结
  • 第3章 两级分配多可用重命名寄存器
  • 3.1 引言
  • 3.2 寄存器重命名技术
  • 3.2.1 寄存器映射表
  • 3.2.2 重命名寄存器的存储位置
  • 3.2.3 寄存器文件的改进措施
  • 3.2.4 来自SMT的新挑战
  • 3.3 2L-MuRR体系结构
  • 3.3.1 寄存器目标值的分布特点
  • 3.3.2 2L-MuRR的提出
  • 3.3.3 基本结构
  • 3.3.4 存储字段的分配和回收
  • 3.3.5 存储字段的划分
  • 3.3.6 流水线的变动
  • 3.3.7 死锁的预防
  • 3.3.8 实现代价分析
  • 3.4 实验及分析
  • 3.4.1 性能
  • 3.4.2 寄存器存储能力
  • 3.4.3 寄存器各字段占用的均衡性
  • 3.4.4 寄存器访问量
  • 3.4.5 更多线程时的表现
  • 3.5 本章小结
  • 第4章 线程感知的寄存器重命名和资源分配
  • 4.1 引言
  • 4.2 资源分配策略及分析评述
  • 4.2.1 ICOUNT的局限性
  • 4.2.2 各种改进策略
  • 4.3 资源分配的效率和公平
  • 4.3.1 资源滥用现象
  • 4.3.2 资源占用均衡度
  • 4.4 TSRR策略
  • 4.4.1 TSRR的提出
  • 4.4.2 基本原理
  • 4.4.3 运行方式
  • 4.4.4 实现代价分析
  • 4.4.5 隐显结合的发展方向
  • 4.5 实验及分析
  • 4.5.1 性能
  • 4.5.2 资源使用情况
  • 4.5.3 local调整间隔的影响
  • 4.5.4 global尺寸的影响
  • 4.6 本章小结
  • 第5章 间隔译码的同时冗余线程
  • 5.1 引言
  • 5.2 处理器容错措施
  • 5.2.1 检/纠错编码
  • 5.2.2 利用空闲资源重复计算
  • 5.2.3 步锁
  • 5.2.4 指令动态验证
  • 5.2.5 冗余多线程
  • 5.2.6 容错体系结构的发展趋势
  • 5.3 SRT性能约束分析
  • 5.3.1 主要硬件结构
  • 5.3.2 性能约束
  • 5.4 SD-SRT
  • 5.4.1 统一取指队列
  • 5.4.2 间隔译码
  • 5.4.3 统一寄存器重命名
  • 5.4.4 实现代价分析
  • 5.4.5 容错能力分析
  • 5.5 实验及分析
  • 5.5.1 性能
  • 5.5.2 取指数量
  • 5.5.3 D-Cache访问量
  • 5.5.4 SD-SRT与SRT的资源占用
  • 5.6 本章小结
  • 第6章 D-Cache分配效率与安全
  • 6.1 引言
  • 6.2 D-Cache隐蔽信道
  • 6.2.1 隐蔽信道的形成
  • 6.2.2 解决措施分析
  • 6.3 D-Cache的动态按路分配
  • 6.3.1 提出依据
  • 6.3.2 基本过程
  • 6.3.3 实现代价分析
  • 6.4 实验及分析
  • 6.4.1 性能
  • 6.4.2 D-Cache失效率
  • 6.4.3 D-Cache占用均衡度
  • 6.5 本章小结
  • 结论
  • 参考文献
  • 攻读博士学位期间所发表的学术论文
  • 致谢
  • 个人简历
  • 相关论文文献

    • [1].隐式多线程综述[J]. 数字通信世界 2020(03)
    • [2].一种支持多线程程序的符号执行技术[J]. 计算机与现代化 2020(06)
    • [3].你的脑袋有几根线[J]. 广东第二课堂(下半月中学生阅读) 2016(10)
    • [4].计算机中的多线程问题[J]. 科技传播 2013(22)
    • [5].异步多线程的答疑系统的设计与实现[J]. 考试周刊 2009(18)
    • [6].云计算环境下浮点和整数同时多线程资源配置方法研究[J]. 科学技术与工程 2017(23)
    • [7].网络机器人多线程爬行的研究与实现[J]. 计算机应用与软件 2010(01)
    • [8].多线程扫描局域网内的计算机[J]. 黑龙江科技信息 2009(19)
    • [9].基于动态解析方法的多线程数据高效抓取仿真[J]. 计算机仿真 2019(07)
    • [10].基于java多线程改善高校借书系统性能[J]. 信息与电脑(理论版) 2013(16)
    • [11].基于静态调度的多线程程序分析方法[J]. 高技术通讯 2018(07)
    • [12].一种基于多线程加密的防伪二维码的生成方法[J]. 湖南工业大学学报 2016(05)
    • [13].基于线程调度顺序控制的多线程程序测试[J]. 计算机与现代化 2017(06)
    • [14].勒住成就欲[J]. 中外管理 2012(02)
    • [15].多线程程序数据竞争随机森林指令级检测模型[J]. 清华大学学报(自然科学版) 2020(10)
    • [16].基于模糊矩阵的多线程网络通信延迟检测技术研究[J]. 科学技术与工程 2020(27)
    • [17].最小的多线程框架[J]. 单片机与嵌入式系统应用 2010(04)
    • [18].计算机多线程TCP/IP协议还原技术概述[J]. 电子技术与软件工程 2014(21)
    • [19].基于Linux的2种HTTP服务器实现与对比分析[J]. 现代计算机(专业版) 2017(24)
    • [20].利用连续两阶段在线剖析优化多线程推测执行[J]. 小型微型计算机系统 2009(03)
    • [21].Agilent VEE 9.0中的多线程[J]. 国外电子测量技术 2008(12)
    • [22].基于事务性执行的投机并行多线程软件模拟[J]. 小型微型计算机系统 2008(03)
    • [23].多线程程序数据竞争检测与证据生成方法[J]. 计算机工程与科学 2014(11)
    • [24].基于多线程运行控制的高效节能型净水工艺[J]. 工业水处理 2016(01)
    • [25].一种协作式的多线程设计方法[J]. 现代计算机(专业版) 2016(31)
    • [26].延时敏感的推测多线程调度策略[J]. 计算机工程与科学 2013(11)
    • [27].基于冗余多线程的体系结构级容错措施的研究与发展[J]. 武汉大学学报(理学版) 2009(01)
    • [28].湿能空调测控软件的多线程设计[J]. 计算机应用与软件 2008(04)
    • [29].采用多线程并行调度的网络仿真加速[J]. 南京邮电大学学报(自然科学版) 2015(01)
    • [30].基于Java多线程的并行计算技术研究及应用[J]. 科学中国人 2014(10)

    标签:;  ;  ;  ;  ;  

    片上多线程体系结构资源分配策略的研究
    下载Doc文档

    猜你喜欢