一、基于目录的一致性协议浅析(论文文献综述)
陈志强,周宏伟,冯权友,邓让钰[1](2021)在《面向多核处理器的可配置缓存一致性协议设计与实现》文中认为多核处理器需要维护缓存的一致性问题.基于目录的一致性协议具有较好的扩展性、较低的延迟,应用较多.分布式目录访问带宽高、目录查询速度快、物理实现灵活.分布式目录一致性协议设计复杂度高,验证困难,为了降低自主CPU研发和产业化的风险,提出了一种面向多核处理器的可配置分布式目录控制单元(configurable distribute directory unit, CDDU),通过微操作机制,实现动态配置缓存一致性协议.该设计增加了多核系统缓存一致性协议的灵活性与容错性,可以实现协议状态转换和协议流程的配置,能够解决由于一致性协议设计缺陷导致的功能故障,可以防止一致性协议设计不足引起的死锁.测试结果表明:设计方案展现了良好的可配置性、可扩展性,避免了死锁产生,代价是少量的性能损耗以及面积开销.主要思想在自主飞腾64核处理器中进行了实现,为确保处理器的协议正确性发挥了重要作用,同时在该芯片的多路扩展实现过程中提高了协议的鲁棒性,消除了潜在的死锁.
李青青[2](2021)在《基于RISC-V多核处理器的Cache及其一致性协议研究》文中研究表明现代处理器普遍采用高速缓冲存储器(Cache)来缓解处理器与主存储器之间的性能差距。然而,Cache的访问速度随容量的增大而降低,对于频率要求与处理器核几乎保持同频的L1 Cache而言,其容量注定不能很大,从而限制了高性能处理器的发展。因此,探索Cache容量和频率之间的平衡,设计高频的大容量Cache具有重要的现实意义。此外,随着集成电路技术的发展,人们对于处理器性能的需求日益提高,多核乃至众核处理器成为必然趋势,而由此带来的存储一致性问题也日益严峻。Cache一致性是保证多核处理器设计正确性的必要条件,研究低延时的高效Cache一致性协议对提升多核处理器的整体性能十分关键。RISC-V是加州大学伯克利分校提出的一种开源指令集架构,其免费、灵活、可定制等特性使其迅速成为处理器领域的研究热点。本文基于RISC-V多核处理器,研究Cache结构和Cache一致性协议,旨在提升处理器的整体性能,主要工作内容和研究结果归纳如下。1.基于2分频存储体,设计了一种高频、低功耗、大容量的指令Cache—D2MB-ICache。为了保证D2MB-ICache的功能正确且在不降频的前提下扩容,设计了存储体的划分机制、反向时钟以及一个控制跳转访问的电路模块。VCS仿真和DC综合结果表明,与传统指令Cache相比,容量相同和容量扩大一倍的D2MB-ICache的最大工作频率分别提高了14.6%和6.8%,其整体性能也分别提高了10.3%和3.8%。此外,当容量为16 kB、32 kB、64 kB和128 kB时,D2MB-ICache的功耗开销分别降低了0.5%、16.1%、24.3%和24.8%。2.对TileLink协议中现有的Cache一致性协议进行改进,设计了一种低延时、高效的Cache一致性协议—DTBDN。该协议不仅定义了Cache的一致性操作,还涵盖了IO设备的访存操作流程。不同于原有的Cache一致性协议,DTBDN协议将私有副本和共享副本彻底区分开来。在DTBDN协议中,共享副本直接从L2 Cache中获取,从而避免了多个远程读响应同时发出的问题,降低了总线占用率和缺失代价。本文基于Gem5模拟器对DTBDN协议进行了性能测试。实验结果表明,在RISC-V四核处理器系统中,DTBDN协议的性能较MESI和MOESI协议分别提高了2.4%和1.6%;在八核处理器系统中,DTBDN协议的性能比MESI和MOESI协议提升了3.6%和2.5%。3.采用基于仿真的验证方法,构建了面向RISC-V多核处理器存储系统的验证平台。首先,分析验证目标系统的特性,提取Cache一致性协议和多核处理器的典型测试场景的功能点,其中典型测试场景主要用于多核处理器的并行操作验证和边界测试;其次,基于System Verilog语言建立了目标存储系统的测试平台;最后,采用随机测试为主、定向测试为辅的测试方法,基于汇编语言和C语言设计了面向RISC-V多核处理器存储系统的测试程序。验证平台最后输出的功能覆盖率报告为100%,达到了验证要求。
陈家豪,黄乐天,谢暄,魏敬和[3](2020)在《基于片上网络互连的多核缓存一致性研究综述》文中研究说明随着多核处理器的集成规模不断扩大,片上互连由总线发展到片上网络,传统的缓存一致性协议不再适应新的片上网络(NoC)环境,缓存一致性问题凸显成为制约多核系统性能的瓶颈之一。从多核一致性问题的产生出发,分析了互连结构对缓存一致性的影响,分别从存在的困难和优化的角度综述了侦听协议、目录协议、令牌(Token)协议等的发展现状。总结了当前一致性协议发展过程中面临的问题,并对未来发展方向做了展望。
陈家豪[4](2020)在《面向多核缓存一致性的片上网络路由优化》文中进行了进一步梳理随着半导体工艺技术的不断发展,片上系统面临漏电功耗等一系列问题,集成电路设计逐渐由高性能单核CPU设计转向高性能多核通信网络设计,由于多核芯片中集成的核心数目越来越多,片上互连结构逐渐由总线点对点互连发展为片上网络无序互连。片上网络相较于传统总线互连结构,具有较大的并行计算的开发潜力,逐渐成为多核乃至众核系统的研究热点。片上网络作为一个庞大的通信系统,对其研究的可以从拓扑结构,路由算法,流控机制,路由器微结构等方面入手。针对不同的应用场景,片上网络可以实现不同的定制化优化,与网络性能的提高。通信互连结构的变化,使得适用于总线结构的传统侦听一致性协议不再有效,目录协议,token协议等新型缓存一致性协议对片上网络提出了新的要求。基于多核缓存一致性协议在片上网络上表现出的多播流量的特点,本文分别从实现自适应与更小多播树的路由算法和设计支持该多播算法的硬件多播复制路由器两个角度入手,对片上网络进行针对性优化。本文设计的全区域自适应递归分区多播路由算法,基于最短路径路由的前提,尽可能实现多播包的链路复用,有效提高了网络负载能力,同时对自适应路由的全区域支持,也降低了平均数据包传输延迟。经仿真实验,在3.88%至64%的多播数据包占比激励范围下,相对于基准DPM路由算法能平均提高23.61%饱和吞吐率,即使相对于部分自适应优化的DPM算法,也能平均提高5.30%。本文设计的自适应多播复制路由器,能在不消耗额外硬件面积的情况下根据网络拥塞情况自适应的进行同步并行多播包复制与串行多播包复制,相对于传统的单播路由器与单读指针串行复制路由器,能明显降低数据包传输延迟,提高网络吞吐率。经仿真实验,在3.88%至64%的多播数据包占比激励范围下,相对于单播路由器,能平均提高41.14%饱和吞吐率,而相对串行多播复制路由器也能平均提高6.06%。本文的硬件实现采用verilog语言,仿真平台采用systemverilog搭建。在多种多播包负载的随机激励下,结果表明本文设计的自适应多播复制路由器与全区域自适应递归分区多播路由算法均能有效的支撑多核一致性引起多播流量,降低数据包传输延迟,优化的数据传输效率,提高网络吞吐率,提升片上网络性能。
操开波[5](2020)在《多核微处理器缓存一致性研究》文中指出随着计算机技术的发展,对计算机的性能要求越来越高,计算机的核心频率越来越高,集成电路制造技术和芯片功耗等问题,使得通过增加内核的核心频率来提高芯片性能的方法遭遇到极大的挑战。在多核处理器系统中,为确保各个内核中副本数据相同,必须采用高速缓存一致性协议维护数据的一致性。基于侦听的一致性协议设计简单,但是一致性维护效率低、总线通信量较大;基于目录的一致性协议通信量小、可扩展性好,但是目录存储面积大。随着处理器内核数量的增多,侦听和目录一致性协议面临功耗、面积、延迟和通信量等问题,本文主要研究适用于多核处理器的缓存一致性协议模型。本文在分析传统缓存一致性协议的基础上,提出一种融合总线侦听和目录结构的混合一致性协议。该一致性协议采用分层结构,节点内部内核通过共享总线传输Cache行状态消息,采用基于MOESI(Modified Owned Exclusive Share Invalid)的侦听一致性协议;节点之间采用片上互联结构,设计一个目录结构控制器传输状态消息,节点之间采用基于目录的一致性协议。然后分析混合一致性协议中,内核读写数据一致性的维护过程和DMA(Direct Memory Access)设备读写数据的一致性维护过程。在GEM5(General Execution-driven Multiprocessor Simulator)模拟器中搭建基于SLICC(Specification Language for Implementing Cache Coherence)脚本语言的混合一致性协议模型,通过编译器生成Python脚本,与Ruby模块中内存组件相连接,形成完整的缓存一致性协议模型。最后使用并行测试程序集Splash2(Stanford Parallel Applications for Shared Memory)在GEM5模拟器中进行混合一致性协议模型的性能模拟仿真。模拟侦听、目录和混合协议在FS(Full-System)模式和SE(Syscall Emulation)模式下的性能差距,结果表明混合协议能提高Cache块的命中率,有效降低测试程序的运行时间,特别是内核数量为32个时,运行时间平均减小8%。模拟混合协议在不同内核数量的Cache块命中率和程序运行时间,结果表明当内核数量为32个时,程序的Cache块命中率较高、运行时间最高减小8%,但是随着内核数量继续增多,Cache块的总缺失和有效时间基本不再减小。比较混合协议在不同目录块和不同Cache块大小时的Cache块命中率和性能差距,结果表明目录块和Cache块的增大能一定程度上提高测试程序Cache块的命中率,并减小运行时间,但是目录结构太大、Cache块较大,使得高速缓存系统愈加复杂和面积规模庞大,导致通信量和延迟增大。
洪扬[6](2019)在《可扩展共享内存系统的关键技术研究》文中提出随着大数据技术的普及,各种领域的应用对于计算资源的需求与日俱增。以Map Reduce、图计算、深度学习等应用为代表的大规模内存计算代表着最新的应用发展方向。然而随着半导体工艺发展的放缓,应用已经无法从处理器的更新换代中持续获得可扩展的性能提升,基于多处理器技术硬件平台已经成为主流。共享内存的抽象是设计运行于多处理器之上的并行应用的基础。小至多核处理器和众核处理器,大至分布式的集群,共享内存系统在各个层次的多处理器环境中都有重要的应用。共享内存系统的设计目标是高可扩展性,即通过增加处理器的数量,应用的性能可以获得相匹配的提升。目前多处理器系统有两种基本的形式:1.单机多处理器上的共享内存系统在一台计算机中集成复数的处理器单元,典型代表是多核系统(Multi-core)和众核系统(Many-core);2.分布式多处理器上的共享内存系统突破了单机多核系统的限制,使用计算机网络把多台计算机连结起来构成一个松耦合的分布式系统,可以很容易通过增加节点机器数量实现水平扩展。然而,在多处理器系统上实现高可扩展性的共享内存抽象存在着一些共同的挑战。首要的挑战是高效地维护共享数据访问的一致性。多个处理器同时访问共享内存时,不可避免地会发生对同一份数据的访问,包括加载和修改。共享内存系统必须保证多个处理器看到的数据是一致的,否则并行程序将无法正确运行。然而维护数据一致性会影响共享内存系统的可扩展性。如果系统保证的一致性越强,则软件的正确性越容易得到保证,但可扩展性越受限;反之,则共享访存具有较高自由度,系统可扩展性也较高,但是软件的正确性也越难保证。其次,实现高效的线程同步也是提高系统可扩展性的挑战之一。线程同步对于协同完成一项任务是必不可少的。并行应用通常使用线程同步机制来控制对于共享数据的访问。然而各种线程同步机制都会引入不可忽视的性能开销,这种开销的增加意味着程序代码中不可并行部分的增加,从而制约可扩展性。最后,共享内存多处理器系统的易用性与性能的取舍也是重要因素之一。并行程序的复杂性以及操作系统调度的不确定性对程序员设计和实现正确的并行应用程序提出了巨大挑战。为了简化编程难度,方便调试和除错,共享内存系统往往需要在内存一致性强弱、数据同步的效率以及编译器和编程语言的支持等层面做权衡取舍。本文的研究工作通过分析传统并行应用和新兴大数据应用,理解应用程序的访存特点和模式,结合现有硬件特性和接口,分析应用的性能瓶颈和可扩展性的制约因素。针对新型大数据应用和新的硬件特性,本文从单机和分布式的共享内存多处理器两个角度,围绕提高应用可扩展性的目的,探索硬件机制、软件系统的架构以及软硬件结合的接口的设计。本文的主要研究内容分为以下三个部分:1.通过分析保证顺序一致性的软硬件方案,研究总结产生违背顺序一致性错误的根本原因,并探索现有的内存屏障机制的内在缺陷。现有的针对内存屏障优化方案往往过于复杂或者依然有优化空间,甚至可能而引入额外性能开销。因此本工作不使用传统的内存屏障机制,而是提出了一种全新的软硬件结合的方案,通过简单的编译器分析技术找出潜在导致违反顺序一致性错误的共享访存并做标记,设计扩展硬件单元在执行访存指令时动态地检测违反顺序一致性的险情,并延迟相关指令的执行,来主动避免错误的发生。通过对线程同步算法和真实并行基准测试的实验,本文实现的系统可以将同步算法的性能提高10%,并将SPLASH-2和PARSEC中因内存屏障导致的开销从42%降至3%。2.通过分析大数据应用的特征,总结大规模内存计算的访存特点和同步模式。本文发现,新兴的大规模内存计算往往具有同步粒度粗、访存时空局部性较好、包含一定同步语义等特点。在此基础上,本文重新思考了传统分布式共享内存的设计,并结合当下处理器性能和计算机网络性能的特点,重新审视分布式共享内存系统的设计。本工作基于IVY的分布式共享内存协议,针对访存特征和硬件特性提出了4项优化方案。这些优化减少了缺页处理的次数,降低了TLB刷新和网络请求的处理开销,并提出一种混合的一致性模型以允许程序员针对特定模式的共享访存使用自定义的数据同步方式,避免了顺序一致性模型的固有缺陷。实验结果表明本工作提出的优化最多可以将图分析算法的性能提升9.25倍,并且显着提升应用的可扩展性。3.通过研究高速网络提供的RDMA通信原语,分析单边原语与双边原语的不同特点,探索底层原语的实现原理和使用的最佳实践。在此基础上,本文分析了分布式共享内存协议中操作之间的相互依赖关系和协议操作开销的主要来源,认为传统的基于消息传递的协议实现会引入性能开销,并探索了协议操作与RDMA原语相结合的可能性。本文提出了一个基于RDMA原语的分布式共享内存协议,根据不同的应用场景使用适合的RDMA原语,并且提出延迟TLB刷新、重叠RDMA请求和基于RDMA的同步原语等优化。实验表明,结合单边和双边原语实现的分布式共享内存协议相比可以减少42%的协议处理时间,并且比之前的工作具有更好的可扩展性。
姬壮伟[7](2018)在《多核系统的确定性重演记录技术研究》文中认为在处理器的发展中,处理器性能的快速提高依赖于单个处理器核主频的快速增大,但如今由于各种原因,主频的提升遇到瓶颈,因此片上多核处理器兴起,在生活中随处可见,但要充分发挥片上多核处理器的计算效率,仍有许多难题需要去解决。其中多核环境下,并行程序执行的不确定性是阻碍片上多核处理器发展的主要因素,即同一并行程序,即使在相同输入的前提下,从同一还原点执行,执行结果仍有可能会有差异,其中多线程竞争共享内存是造成不确定性的最主要因素,这给并行程序的调试造成了极大的困难。确定性重演是解决并行程序执行不确定问题行之有效的方法,包括两个阶段:记录阶段和重演阶段,其中记录阶段的内存竞争记录日志的资源消耗决定了确定性重演方法的性能。因此本文从竞争记录日志的空间消耗出发,研究低消耗的内存竞争记录方式。本文从两方面研究提出了四种减小内存竞争记录日志大小的方法,并设计了基于分段的交叉式内存竞争记录方式。首先采用当前指令计数值记录内存竞争依赖关系,当内存竞争发生时,用线程运行当前指令代替竞争双方的指令计数值,来表示内存竞争依赖关系;其次采用对访存指令分段的方法实现内存竞争记录的传递性约减,通过指令段号比较约减能够由已经存在的内存竞争推导而得的冗余内存竞争,很大程度上减少了内存竞争记录的次数;接下来对相邻且同向的内存竞争记录进行交叉记录,即记录日志中每条记录与所有相邻记录的冲突方向皆不相同,进一步减少内存竞争记录的次数;最后采用分段指令计数方法记录内存竞争,对指令计数进行分段,降低指令计数最大值,减少硬件消耗。本文从减少内存竞争记录次数和单条内存竞争记录占用空间两方面有效了减少了内存竞争记录日志的大小,减少了硬件资源的消耗。为验证以上方法内存竞争记录的性能,本文通过gem5多核处理器模拟平台搭建相应硬件体系结构环境,使用经典多核测试程序SPLASH2对本文所提出方法进行实验验证与分析,并在相同的环境中,从同一还原点运行传统的内存竞争记录方法RTR和FDR,对比结果表明,本文所提出方法在添加很少硬件资源的基础上,有效的减少了内存竞争记录日志的大小。
张阿敏[8](2018)在《基于片上网络的众核高速缓存一致性研究》文中研究指明片上多核系统正逐渐由研究步向工程,高性能、低成本的系统是目前实际应用的迫切需求。伴随着核数的增加,多核乃至众核高速缓存一致性问题的关注度越来越高。基于总线的数据一致性及片上网络的数据一致性协议的研究已趋于成熟。但是基于双层架构的数据一致性仍有许多问题亟需解决,且实现整个系统的硬件电路较复杂,优化更变得难上加难。对此,本文基于片上网络众核系统,研究混合架构数据一致性硬件电路设计技术。本文的主要工作如下:(1)基于片上网络双层架构的混合一致性针对片上多核系统高速缓存不一致性问题,设计完成一种基于片上网络的双层混合一致性硬件架构。根据多核所处架构不同,采用不同的数据一致性协议,以期可以达到更高的数据吞吐率。对于基于总线的多核高速缓存,采取总线监听协议,高效且迅速。对于片上网络的多核高速缓存,采用目录协议,不受网络大小影响且易于扩展。实验结果表明,基于片上的多核系统,使用双层架构的混合一致性可以有效的降低一致性的执行时间,平均降低48.5%。(2)提出一种兼顾全局及局部的数据一致性协议在已有的基于片上网络的双层架构混合一致性的基础上,提出了增加分块传输功能,以达到降低核的平均等待时间,提高数据处理速度的目的。根据核与核之间数据交换的特点,提出全局数据和局部数据相结合的思想,达到减少目录占存比,降低成本的目的。通过实验分析,分块传输可以提高核的平均处理速度。当节点数为4时,全局与局部结合的协议,最大可降低目录占存比为75%。
童心田[9](2018)在《基于片上网络的三维多核处理器缓存一致性实现方法研究》文中指出基于片上网络的三维多核处理器是多核处理器设计发展的趋势与研究热点,而缓存一致性协议是多核处理器系统共享数据正确存储与读写的保证。论文针对在基于片上网络的三维多核处理器中缓存一致性协议的实现方法展开研究。论文首先针对在基于片上网络的三维多核处理器系统中,随着处理器核数目的增加,基于目录的缓存一致性协议实现中目录存储开销越来越大的问题,提出了一种基于三维片上网络结构的柱型节点分布式两级目录结构,将三维网络划分为多个柱型节点,结合全映射和粗向量两种目录组织结构的优点,采用全局和柱型节点两级目录来存储共享数据副本的分布情况。相比传统的目录实现方法,该目录结构存储开销小,且基于该目录结构的缓存一致性协议访问延迟性能较好。其次,针对缓存一致性协议通信中展现出的多播通信特征,论文提出了一种基于三维片上网络结构的柱型分区多播路由算法3DCPM。该算法将三维网络划分为多个柱型区域,根据多播通信的多个目的节点在各柱型区域的分布情况,按区域选择合适的联络节点,然后基于XYZ算法实现缓存一致性协议消息从源节点至联络节点至目的节点的路由传输。进一步,提出了一种改进的多播路由算法3DOCPM,在节点之间选择路由跳数最小的路径,以达到充分利用公共传输路径,降低传输功耗,更好地实现缓存一致性的多播通信的目的。最后,定义了缓存一致性协议消息传输的数据包格式,并在Noxim仿真器中,对所提出的算法进行了验证。实验结果表明,在不同的通信模式下,与已有的多播路由算法相比,所提出的算法均有效降低了平均通信延时和通信功耗。
何锡明[10](2017)在《基于数据共享特性的cache一致性协议研究》文中研究说明当前,高性能的共享存储系统利用多级cache来加速处理器对内存的访问,同时采用一致性协议解决系统中出现的cache一致性问题。随着多核处理器核数的增加,cache一致性协议的硬件开销以及可扩展性问题已经成为共享存储系统的研究热点。人们迫切需要一种高效低开销可扩展的cache一致性协议。为此,本文针对cache一致性协议展开研究,优化cache一致性的硬件开销并寻求一种高效低开销的一致性协议设计。本文的工作主要有以下三个方面:第一,利用动态的数据划分方法优化目录协议的存储开销。对于只被一个核访问的私有数据,它们没有一致性问题,不需要一致性的维护。基于这点,本文采用操作系统辅助的方法进行页面粒度的私有共享划分。通过这种方法,本文有效地分离出私有数据并消除了私有数据的目录存储开销。第二,根据cache一致性协议的开销分析,本文提出了一种降低cache一致性协议开销的自更新机制。在写失效的cache一致性协议中,当核进行写操作时,协议需要确保本地cache的数据项获得独占状态,cache一致性协议一般会发送失效消息到其他的cache以作废过期的备份。目录协议发送间接失效消息造成了较长的事务延迟,监听协议广播失效消息造成了大量的网络开销。为此,我们创新性地提出了一种自更新的机制。Cache一致性协议在同步点进行共享数据的自我更新。自更新操作能够自动地更新本地过期的备份从而消除目录协议间接的失效消息,以及消除监听协议中大量的广播消息。第三,通过分析当前MESI目录式cache一致性协议,本文提出了一种基于自更新的简单高效cache一致性协议(Valid/Invalid,Self-Updating,VISU)。VISU协议利用当前程序的数据无竞争特性,识别程序中的同步点。协议在同步点执行自更新操作以更新过期的备份。MESI cache一致性协议拥有4种稳定状态,在L1cache中存在55种状态转换。这些众多的一致性状态以及状态转换使得MESI协议复杂低效,并且引发了巨大的验证开销。VISU协议在L1 cache中只有两种稳定状态、两种瞬时状态。首先基于并行编程的数据无竞争(DRF)模型,我们采用在同步点进行自更新共享数据来保证正确性。其次利用动态识别私有和共享数据的技术,我们提出了对私有数据进行写回,对共享数据进行写直达的方案。对于私有数据,简单的写回策略能够简化不必要的片上通信。在L1 cache中,对于共享数据的写直达方式能确保LLC中数据最新从而消除了几乎所有的一致性状态。我们实现的VISU协议开销低、不需要目录、没有间接传输和众多的一致性状态,且更加容易验证,同时获得了与MESI目录协议几乎相当甚至更优的性能。为了评估上述方案,我们使用gem5模拟器和CACTI进行了性能仿真和开销评估。与当前主流的MESI目录式一致性协议相比,我们设计的VISU一致性协议性能提高了2.9%,面积减少了31%。此外我们的自更新机制相比于同类型的自失效机制降低了L1 cache 5.2%的cache失效率。综上所述,本文针对于现存的cache一致性协议进行了优化,首先实现了一种动态的私有共享数据划分方式;其次提出了一种高效的自更新机制;最后结合写直达与自更新机制提出了一种简单高效的两状态VISU一致性协议。实验结果表明,VISU协议在性能上胜过复杂的MESI目录协议,同时显着减少了硬件开销,降低了协议的复杂性。
二、基于目录的一致性协议浅析(论文开题报告)
(1)论文研究背景及目的
此处内容要求:
首先简单简介论文所研究问题的基本概念和背景,再而简单明了地指出论文所要研究解决的具体问题,并提出你的论文准备的观点或解决方法。
写法范例:
本文主要提出一款精简64位RISC处理器存储管理单元结构并详细分析其设计过程。在该MMU结构中,TLB采用叁个分离的TLB,TLB采用基于内容查找的相联存储器并行查找,支持粗粒度为64KB和细粒度为4KB两种页面大小,采用多级分层页表结构映射地址空间,并详细论述了四级页表转换过程,TLB结构组织等。该MMU结构将作为该处理器存储系统实现的一个重要组成部分。
(2)本文研究方法
调查法:该方法是有目的、有系统的搜集有关研究对象的具体信息。
观察法:用自己的感官和辅助工具直接观察研究对象从而得到有关信息。
实验法:通过主支变革、控制研究对象来发现与确认事物间的因果关系。
文献研究法:通过调查文献来获得资料,从而全面的、正确的了解掌握研究方法。
实证研究法:依据现有的科学理论和实践的需要提出设计。
定性分析法:对研究对象进行“质”的方面的研究,这个方法需要计算的数据较少。
定量分析法:通过具体的数字,使人们对研究对象的认识进一步精确化。
跨学科研究法:运用多学科的理论、方法和成果从整体上对某一课题进行研究。
功能分析法:这是社会科学用来分析社会现象的一种方法,从某一功能出发研究多个方面的影响。
模拟法:通过创设一个与原型相似的模型来间接研究原型某种特性的一种形容方法。
三、基于目录的一致性协议浅析(论文提纲范文)
(1)面向多核处理器的可配置缓存一致性协议设计与实现(论文提纲范文)
1 动态可配置缓存一致性协议 |
1) 写回操作协议流程可配置 |
2) LLC写回操作可配置 |
3) I/O写数据合并可配置 |
2 可配置协议分布式目录控制器 |
3 微操作机制解决协议级死锁 |
4 实验结果与分析 |
1) WB和WBD 的性能比较 |
2) 微操作机制正确性与性能影响 |
3) 功耗与开销 |
5 总 结 |
(2)基于RISC-V多核处理器的Cache及其一致性协议研究(论文提纲范文)
摘要 |
Abstract |
第一章 绪论 |
1.1 研究背景与意义 |
1.2 国内外研究现状 |
1.2.1 Cache的组织形式 |
1.2.2 Cache性能提升技术 |
1.2.3 Cache一致性协议 |
1.2.4 存储系统验证方法 |
1.3 论文的主要内容及组织架构 |
第二章 RISC-V多核处理器的存储系统架构 |
2.1 RISC-V多核处理器的总体存储结构 |
2.2 Cache存储器 |
2.2.1 映射结构 |
2.2.2 替换算法 |
2.2.3 写策略 |
2.3 基于TileLink的 Cache一致性协议 |
2.3.1 TileLink总线 |
2.3.2 现有Cache一致性协议 |
2.4 本章小结 |
第三章 D2MB-ICache设计 |
3.1 设计需求 |
3.2 D2MB-ICache的总体设计 |
3.2.1 存储体的划分机制 |
3.2.2 存储体时钟 |
3.2.3 电路结构和控制流程方案 |
3.3 D2MB-ICache的访问机制 |
3.3.1 写操作 |
3.3.2 读操作 |
3.4 实验结果 |
3.4.1 功能仿真 |
3.4.2 性能测试 |
3.4.3 功耗分析 |
3.5 本章小结 |
第四章 DTBDN一致性协议设计 |
4.1 DTBDN协议的总体方案 |
4.1.1 状态集合 |
4.1.2 读写策略 |
4.1.3 状态转换 |
4.2 DTBDN协议的目录 |
4.2.1 目录结构 |
4.2.2 目录的处理流程 |
4.3 DTBDN协议的操作过程 |
4.3.1 Cache中的一致性操作 |
4.3.2 IO设备的一致性操作 |
4.4 DTBDN协议正确性论证 |
4.4.1 单写多读条件的满足 |
4.4.2 数据最新原则的满足 |
4.5 性能测试 |
4.5.1 Gem5 模拟器 |
4.5.2 测试集的选择 |
4.5.3 不同Cache一致性协议的性能测试 |
4.6 本章小结 |
第五章 RISC-V多核存储系统的验证平台设计 |
5.1 验证平台开发流程 |
5.2 功能点分析 |
5.2.1 Cache一致性协议的功能点 |
5.2.2 多核处理器的典型测试场景 |
5.3 验证平台的搭建 |
5.3.1 验证平台总体设计 |
5.3.2 测试平台设计 |
5.3.3 激励生成器设计 |
5.4 功能覆盖率结果分析 |
5.5 本章小结 |
第六章 总结与展望 |
6.1 总结 |
6.2 展望 |
致谢 |
参考文献 |
附录:作者在攻读硕士学位期间取得的成果 |
(3)基于片上网络互连的多核缓存一致性研究综述(论文提纲范文)
1 引言 |
2 互连结构的发展对缓存一致性协议的挑战 |
3 多核No C环境下缓存一致性协议的发展 |
3.1 侦听一致性协议的改进 |
3.1.1 解决排序问题 |
3.1.2 解决广播问题 |
3.2 目录一致性协议 |
3.2.1 减少目录存储消耗 |
3.2.2 目录协议流量优化 |
3.3 其他一致性协议 |
4 存在的问题与进一步研究的方向 |
5 结束语 |
(4)面向多核缓存一致性的片上网络路由优化(论文提纲范文)
摘要 |
abstract |
第一章 绪论 |
1.1 研究背景与意义 |
1.2 国内外研究历史与现状 |
1.3 本论文的主要研究和创新点 |
1.4 本论文的结构安排 |
第二章 片上网络与多核缓存一致性 |
2.1 片上网络 |
2.1.1 拓扑结构 |
2.1.2 路由算法 |
2.1.3 流控机制与包格式设计 |
2.1.4 路由器微结构设计 |
2.2 多核缓存一致性 |
2.2.1 多核缓存一致性问题的产生与定义 |
2.2.2 多核缓存一致性协议的发展 |
2.2.3 多核缓存一致性协议的通信特征 |
2.3 本章小结 |
第三章 全区域自适应递归分区路由算法 |
3.1 基于树的多播路由算法 |
3.2 递归分区RPM路由算法 |
3.3 双分区DPM路由算法及其自适应改进 |
3.4 全区域自适应递归分区路由算法 |
3.5 本章小结 |
第四章 片上网络自适应多播复制路由器 |
4.1 多播复制路由器面临的死锁问题 |
4.2 现有多播复制路由器解决方案 |
4.2.1 单读指针串行多播复制路由器 |
4.2.2 多指针并行多播复制路由器 |
4.3 单读指针自适应多播复制路由器 |
4.4 本章小结 |
第五章 实验结果分析 |
5.1 仿真设置 |
5.2 仿真平台 |
5.3 仿真结果及分析 |
5.3.1 多播复制路由器仿真结果分析 |
5.3.2 多播路由算法仿真结果分析 |
5.4 本章小结 |
第六章 总结与展望 |
6.1 总结 |
6.2 展望 |
致谢 |
参考文献 |
攻读硕士学位期间取得的成果 |
(5)多核微处理器缓存一致性研究(论文提纲范文)
摘要 |
ABSTRACT |
符号对照表 |
缩略语对照表 |
第一章 绪论 |
1.1 研究背景及意义 |
1.2 国内外研究情况介绍 |
1.2.1 国外研究现状 |
1.2.2 国内研究现状 |
1.3 论文的研究工作 |
1.4 论文结构 |
第二章 高速缓存一致性协议 |
2.1 高速缓存不一致性原因分析 |
2.2 高速缓存一致性协议的处理机制 |
2.2.1 一致性协议的写策略 |
2.2.2 一致性协议的状态消息传播方式 |
2.2.3 Cache的映射方式 |
2.3 基于侦听的高速缓存一致性协议 |
2.3.1 MESI侦听一致性协议 |
2.3.2 MOESI和MESIF侦听一致性协议 |
2.3.3 Dragon一致性协议 |
2.4 基于目录的高速缓存一致性协议 |
2.5 其他结构的高速缓存一致性协议 |
2.5.1 基于Token结构的高速缓存一致性协议 |
2.5.2 Hammer一致性协议 |
2.6 提高缓存一致性协议性能的方法 |
2.7 本章小结 |
第三章 基于侦听和目录的混合一致性协议 |
3.1 混合一致性协议的分层结构 |
3.2 基于MOESI的总线侦听协议 |
3.2.1 MOESI侦听协议的模型 |
3.2.2 侦听协议控制器的设计 |
3.3 混合一致性协议中的目录协议 |
3.3.1 目录结构的设计 |
3.3.2 目录存储器的设计 |
3.4 读写数据一致性的维护过程 |
3.4.1 内核读数据的一致性维护过程 |
3.4.2 内核向Cache写数据的一致性维护过程 |
3.4.3 DMA读写数据的一致性维护 |
3.5 混合一致性协议的异常处理机制 |
3.5.1 一致性协议的死锁情况 |
3.5.2 一致性协议的活锁情况 |
3.6 本章小结 |
第四章 混合一致性协议的性能测试 |
4.1 模拟器GEM5简介 |
4.2 并行测试程序SPLASH2 |
4.3 混合一致性协议的实现过程 |
4.3.1 SLICC生成缓存一致性协议模型 |
4.3.2 一致性协议的操作状态 |
4.4 基于X86和ARM两种内核系统的一致性协议性能测试 |
4.4.1 侦听、目录和混合一致性协议的性能测试比较 |
4.4.2 混合一致性协议不同内核数量的性能测试 |
4.4.3 混合一致性协议不同目录块容量的性能测试 |
4.4.4 混合一致性协议不同Cache行容量的性能测试 |
4.5 本章小结 |
第五章 本文总结 |
参考文献 |
致谢 |
作者简介 |
(6)可扩展共享内存系统的关键技术研究(论文提纲范文)
摘要 |
abstract |
第一章 绪论 |
1.1 论文研究背景 |
1.2 国内外相关研究 |
1.2.1 大规模内存计算应用 |
1.2.2 内存一致性模型 |
1.2.3 线程间同步 |
1.2.4 编译器和运行时支持 |
1.3 论文的研究内容和主要贡献 |
1.4 论文的结构安排 |
第二章 硬件技术背景与性能分析 |
2.1 多核同步可扩展性问题 |
2.1.1 线程同步的性能测试与分析 |
2.1.2 Fence机制的性能测试与分析 |
2.2 RDMA技术与性能分析 |
2.2.1 RDMA技术背景 |
2.2.2 RDMA的性能测试与分析 |
第三章 无内存屏障的多核同步机制设计 |
3.1 研究概述 |
3.2 研究背景 |
3.2.1 违反顺序一致性的情形 |
3.2.2 写缓冲与内存屏障指令 |
3.2.3 Fence的缺陷 |
3.2.4 相关工作 |
3.3 系统概述 |
3.3.1 Sync-Order的语义 |
3.3.2 Sync-Order的正确性 |
3.4 降低冲突检测开销 |
3.4.1 识别sync-var |
3.4.2 无数据竞争的程序 |
3.5 体系结构扩展 |
3.5.1 流水线的扩展 |
3.5.2 硬件模块的设计 |
3.5.3 写操作之间的冲突 |
3.6 实验结果与分析 |
3.6.1 性能开销 |
3.6.2 Sync-Order的性能数据 |
3.6.3 可扩展性 |
3.7 本章小结 |
第四章 基于消息传递的分布式共享内存系统 |
4.1 研究概述 |
4.2 相关工作 |
4.3 研究动机 |
4.4 系统概述 |
4.4.1 顺序一致性的协议 |
4.4.2 NUMA抽象 |
4.4.3 内存冲突检测 |
4.4.4 分布式的目录 |
4.5 降低协议开销的优化设计 |
4.5.1 预测性页缺失 |
4.5.2 批量翻译缓存失效 |
4.5.3 轮询的消息处理 |
4.5.4 协议旁路操作 |
4.6 实验结果与分析 |
4.6.1 实验方法 |
4.6.2 优化效果 |
4.6.3 可扩展性 |
4.7 本章小结 |
第五章 基于RDMA的分布式共享内存系统 |
5.1 研究概述 |
5.2 相关工作 |
5.3 基于RDMA的分布式共享内存协议 |
5.3.1 协议操作 |
5.3.2 RDMA的接口选择和使用 |
5.3.3 延迟本地TLB刷新 |
5.3.4 重叠RDMA请求 |
5.3.5 基于RDMA的线程同步原语 |
5.4 实验结果与分析 |
5.4.1 页缺失的处理时间 |
5.4.2 基于RDMA的同步机制 |
5.4.3 可扩展性 |
5.5 本章小结 |
第六章 总结与展望 |
6.1 工作总结 |
6.2 研究展望 |
参考文献 |
致谢 |
攻读学位期间发表的学术论文 |
攻读学位期间参与的项目 |
(7)多核系统的确定性重演记录技术研究(论文提纲范文)
摘要 |
Abatract |
第1章 绪论 |
1.1 课题来源 |
1.2 课题研究的目的和意义 |
1.3 国内外研究现状 |
1.3.1 硬件实现并行程序的确定性重演 |
1.3.2 软件实现并行程序的确定性重演 |
1.4 论文研究内容及结构安排 |
1.4.1 本文的主要研究内容 |
1.4.2 本文的结构安排 |
第2章 并行程序确定性执行相关技术研究 |
2.1 单芯片多核技术 |
2.2 并行程序访存竞争 |
2.3 确定执行的一致性模型支持 |
2.3.1 一致性存储模型 |
2.3.2 一致性缓存协议 |
2.4 并行程序执行不确定性分析和解决方式 |
2.4.1 并行程序的不确定性 |
2.4.2 并行程序不确定性的解决方式 |
2.4.3 点对点访存竞争记录方式 |
2.5 gem5 计算机系统模拟平台 |
2.5.1 gem5 多核模拟器 |
2.5.2 Ruby存储系统和cache一致性协议 |
2.6 本章小结 |
第3章 基于分段的交叉式内存竞争记录方法 |
3.1 分段交叉式内存竞争记录方式总体设计 |
3.2 分段交叉式内存竞争记录方式详细设计 |
3.2.1 当前指令计数值表示内存竞争 |
3.2.2 约减可推导内存竞争记录的分段实现 |
3.2.3 交叉优化内存竞争记录 |
3.2.4 指令分段计数 |
3.3 分段交叉式内存竞争记录硬件体系结构 |
3.4 内存竞争检测与记录方法实现 |
3.4.1 方法的可行性分析 |
3.4.2 内存竞争检测与记录实现思路 |
3.4.3 内存竞争记录算法描述 |
3.4.4 一致性消息结构修改 |
3.4.5 一致性协议的修改 |
3.5 本章小结 |
第4章 多核平台仿真系统实现与实验验证分析 |
4.1 搭建多核模拟平台 |
4.1.1 gem5 安装测试 |
4.1.2 建立全系统仿真模式 |
4.2 编写配置文件 |
4.3 标准测试集 |
4.4 仿真结果性能分析 |
4.4.1 硬件参数测试统计 |
4.4.2 分段式指令计数性能分析 |
4.4.3 内存竞争记录约减方法性能分析 |
4.5 本章小结 |
结论 |
参考文献 |
攻读硕士学位期间发表的论文及其他成果 |
致谢 |
(8)基于片上网络的众核高速缓存一致性研究(论文提纲范文)
致谢 |
摘要 |
abstract |
第1章 绪论 |
1.1 研究意义 |
1.2 国内外研究现状 |
1.2.1 片上网络研究现状 |
1.2.2 多核数据一致性研究现状 |
1.3 论文主要内容及结构安排 |
第2章 片上网络及多核一致性 |
2.1 片上网络 |
2.1.1 基本构成 |
2.1.2 拓扑结构 |
2.1.3 交换技术 |
2.1.4 路由算法 |
2.1.5 平台概述 |
2.2 多核一致性 |
2.2.1 不一致性产生原因及策略 |
2.2.2 总线监听协议 |
2.2.3 基于目录的协议 |
2.3 本章小结 |
第3章 双层架构的混合一致性 |
3.1 引言 |
3.2 整体架构 |
3.2.1 数据读写控制模块 |
3.2.2 分类模块 |
3.2.3 目录维护模块 |
3.2.4 写无效模块 |
3.2.5 本地读写网络模块 |
3.3 功能验证 |
3.3.1 基于总线的多核数据一致性 |
3.3.2 基于目录的多核数据一致性 |
3.3.3 基于总线和基于目录的多核数据一致性 |
3.4 仿真分析 |
3.5 本章小结 |
第4章 改进的双层架构混合一致性 |
4.1 前言 |
4.2 分块传输的功能 |
4.2.1 分块传输 |
4.2.2 分块设计 |
4.2.3 分块功能实现 |
4.2.4 仿真分析 |
4.3 全局数据与局部数据结合 |
4.3.1 全局与局部方案设计 |
4.3.2 实现全局与局部方案 |
4.3.3 仿真分析 |
4.4 本章小结 |
第5章 总结与展望 |
5.1 总结 |
5.2 展望 |
参考文献 |
攻读硕士学位期间的学术活动及成果情况 |
(9)基于片上网络的三维多核处理器缓存一致性实现方法研究(论文提纲范文)
摘要 |
abstract |
缩略词 |
第一章 绪论 |
1.1 研究背景 |
1.1.1 多核处理器简介 |
1.1.2 多核处理器片上互连简介 |
1.1.3 缓存一致性协议简介 |
1.2 国内外研究现状 |
1.2.1 3DNoC研究现状 |
1.2.2 缓存一致性协议的设计 |
1.2.3 多播路由算法 |
1.3 论文的研究内容 |
1.4 论文的组织结构 |
第二章 基于3DNoC的分布式两级目录研究 |
2.1 CMP系统中基于目录的缓存一致性协议实现方法 |
2.1.1 共享Cache行的全局一致性状态 |
2.1.2 缓存一致性协议实现过程 |
2.1.3 常见的目录组织结构 |
2.2 基准3DNoCCMP结构 |
2.3 柱型节点分布式两级目录 |
2.3.1 柱形节点的划分 |
2.3.2 两级目录的组织结构 |
2.3.3 基于两级目录的访问形式 |
2.4 柱型节点分布式两级目录的性能与开销分析 |
2.4.1 目录访问延时 |
2.4.2 目录存储开销 |
2.5 本章小结 |
第三章 基于多播路由的缓存一致性协议多播通信的实现 |
3.1 缓存一致性协议的通信特征 |
3.2 3DNoC结构中两种常用的多播路由算法 |
3.2.1 基于路径的多播路由算法 |
3.2.2 基于树的多播路由算法 |
3.3 基于3DNoC的柱型分区多播路由算法3D_CPM |
3.3.1 3DNoC多播通信能耗模型 |
3.3.2 3D_CPM多播路由算法中联络节点的选择 |
3.3.3 3D_CPM多播路由规则 |
3.4 改进的3D_CPM多播路由算法 |
3.5 四种多播路由算法实例对比 |
3.6 本章小结 |
第四章 缓存一致性协议通信方式与性能评估 |
4.1 Noxim仿真软件及改造 |
4.2 一致性消息多播传输数据包设计 |
4.3 仿真实验与结果分析 |
4.3.0 实验环境建立 |
4.3.1 多播通信模式实验结果 |
4.3.2 混合通信模式实验结果 |
4.3.3 不同目的节点数目多播通信实验结果 |
4.4 本章小结 |
第五章 总结与展望 |
5.1 论文总结 |
5.2 工作展望 |
参考文献 |
致谢 |
在学期间的研究成果及发表的学术论文 |
(10)基于数据共享特性的cache一致性协议研究(论文提纲范文)
摘要 |
ABSTRACT |
第一章 绪论 |
1.1 研究背景 |
1.1.1 多核处理器的发展 |
1.1.2 共享存储的引入 |
1.1.3 Cache一致性问题的产生 |
1.1.4 Cache一致性协议存在的问题 |
1.2 国内外研究现状 |
1.2.1 国内外研究现状 |
1.3 课题的研究意义和目标 |
1.4 本文的主要工作 |
1.5 论文组织结构 |
第二章 Cache一致性协议 |
2.1 一致性协议的背景知识 |
2.1.1 Cache一致性协议硬件支持 |
2.1.2 Cache一致性协议的组成 |
2.2 Cache一致性协议基本方案 |
2.2.1 监听协议 |
2.3 模拟环境和性能测试方法 |
2.3.1 Gem5 全系统模拟器 |
2.3.2 CACTI 6.5 |
2.4 本章总结 |
第三章 Cache一致性开销优化设计 |
3.1 引言 |
3.2 Cache一致性协议的开销分析 |
3.2.1 写作废协议与写更新协议 |
3.2.2 Cache一致性协议的开销 |
3.2.3 自失效机制 |
3.3 Cache一致性协议开销的优化设计 |
3.3.1 数据划分方法优化存储开销 |
3.3.2 动态自更新机制优化事务延迟 |
3.4 本章总结 |
第四章 一种基于自更新机制的cache一致性协议设计 |
4.1 引言 |
4.2 VISU协议的整体方案 |
4.2.1 Cache一致性的定义 |
4.2.2 VISU Cache一致性协议 |
4.3 VISU协议的具体实现 |
4.3.1 协议中同步原语的支持 |
4.3.2 自更新机制的实现 |
4.4 VISU协议的优化设计 |
4.4.1 写直达的优化设计 |
4.4.2 DMA协议设计 |
4.5 本章总结 |
第五章 评估 |
5.1 实验环境 |
5.2 数据的共享特性实验分析 |
5.3 VISU协议评估 |
5.3.1 协议性能评估 |
5.3.2 协议开销评估 |
5.4 协议中自更新的评估 |
5.5 本章总结 |
第六章 总结与展望 |
6.1 工作总结 |
6.2 研究展望 |
致谢 |
参考文献 |
作者在学期间取得的学术成果 |
四、基于目录的一致性协议浅析(论文参考文献)
- [1]面向多核处理器的可配置缓存一致性协议设计与实现[J]. 陈志强,周宏伟,冯权友,邓让钰. 计算机研究与发展, 2021(06)
- [2]基于RISC-V多核处理器的Cache及其一致性协议研究[D]. 李青青. 江南大学, 2021(01)
- [3]基于片上网络互连的多核缓存一致性研究综述[J]. 陈家豪,黄乐天,谢暄,魏敬和. 电子与封装, 2020(11)
- [4]面向多核缓存一致性的片上网络路由优化[D]. 陈家豪. 电子科技大学, 2020(01)
- [5]多核微处理器缓存一致性研究[D]. 操开波. 西安电子科技大学, 2020(05)
- [6]可扩展共享内存系统的关键技术研究[D]. 洪扬. 上海交通大学, 2019(06)
- [7]多核系统的确定性重演记录技术研究[D]. 姬壮伟. 哈尔滨工业大学, 2018(02)
- [8]基于片上网络的众核高速缓存一致性研究[D]. 张阿敏. 合肥工业大学, 2018(02)
- [9]基于片上网络的三维多核处理器缓存一致性实现方法研究[D]. 童心田. 南京航空航天大学, 2018(02)
- [10]基于数据共享特性的cache一致性协议研究[D]. 何锡明. 国防科技大学, 2017(02)