异构多核下Cache替换算法的性能优化研究

来源 :北京工业大学 | 被引量 : 3次 | 上传用户:wjlcqjy68
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
大数据时代的到来给海量数据处理带来了新的挑战,传统的多核架构难以满足大规模计算的需求,GPU和CPU在芯片上的结合是缓解大规模计算压力的一种趋势。对传统多核处理器而言,由于芯片上的核心数量越来越多,长期积累下来的处理器发展速度与存储器系统发展速度不均衡的现象形成了著名的“内存墙”问题,它对存储系统造成的压力已经很大。如今,除了芯片上核心数量的急剧增长之外还出现了核心类型异质的问题。在CPU-GPU异构多核环境中,CPU应用程序和GPU应用程序具有各自的特性。其中,CPU主要负责执行串行的任务和逻辑控制,GPU因其线程级并行性(Thread-level Parallelism,TLP)在并行计算上具有很大的优势。CPU-GPU异构多核可以充分发挥CPU与GPU在各自应用场景下性能优势,然而这一架构对CPU与GPU之间共享的各类资源尤其是最后一级缓存(Last-level Cache,LLC)的管理造成了极大的压力,严重影响了系统的性能与功耗。本文针对异构多核系统下共享内存的优化方案进行分析发现,目前异构多核环境下Cache替换算法的实现都是线程盲目的,未能较好地利用GPU应用程序和CPU应用程序各自的特性,因此缓存的利用率较低。许多GPU应用程序通过线程级并行性和缓存来降低内存延迟的消极影响,而大多数内存密集型CPU基准测试程序则只能通过缓存来弥补内存延迟。因此,CPU应用程序对Cache的需求较GPU应用程序而言更为敏感。针对以上特点,本文提出了面向缺失感知的异构多核缓存替换算法以提升异构多核系统下的系统性能。优化后的缓存替换算法对CPU与GPU的缓存请求的优先级别区别对待,CPU应用程序和GPU应用程序动态地非绝对公平地共享最后一级缓存,从而保证缓存敏感度较高的CPU应用程序在缓存中具有较长的生命周期。此外,本文采用的缓存替换算法综合考虑了Cache块的新近访问时间和访问频率,通过在最后一级缓存上缓存缺失次数的比较来动态地选择LRU或LFU算法以适合当前的运行状态。该算法不仅考虑了异构多核下CPU应用程序与GPU应用程序的运行特征,还结合了LRU与LFU两大经典替换算法,对异构多核下最后一级缓存的高效利用具有重要的意义。为充分发挥两大经典算法各自的优势,本文提出了基于数据块重用度的动态调整替换算法。这一算法对CPU与GPU应用程序的缓存优先级进行区别对待,同时增加与缓存队列长度一样的指针数组来放置被换出的缓存块地址信息,用于避免LRU替换算法容易出现Cache抖动现象的问题。该算法既考虑了不同类型核心的访存特征,又考虑了程序运行过程中的程序局部性,从而达到在异构多核下提升系统性能的目的。为了精准地评估实验方案对系统性能的影响,本文采用gem5-gpu模拟器作为基础架构模拟平台,通过组合运行SPEC CPU 2006+GPU Rodinia的基准测试应用程序来评估本文的设计方案对系统性能的影响。实验结果表明,本文设计实现的算法与传统的LRU替换算法相比,CPU应用程序的性能提升最高达到9.1%,平均提高了6.7%;GPU应用程序的性能提升最高达到7.5%,平均提高了7.0%;CPU应用程序的最后一级缓存缺失率最高降低了44%,平均降低了23%;同时,GPU应用程序的最后一级缓存缺失率最高降低了54.7%,平均降低了34.7%;因此,本文提出的面向缺失感知的异构多核缓存替换算法和基于数据块重用度的动态调整替换算法对异构多核系统的性能方面有很大的提高。
其他文献
对科学计算处理能力的不断追求以及分布式信息系统的巨大发展,使得通过集群进行分布式计算成为一种极具吸引力的计算模式.广泛的研究表明,工作站33%到78%的时间是处于空闲的,因
在网络和信息技术发展的同时,知识发现和信息交流的问题成为当前网络与数据库等领域的研究热点,数据挖掘和XML就是为解决这两个问题而发展起来的新兴技术,如果将二者结合起来
随着通信与计算机技术的迅速发展,企业越来越依赖于计算机系统和网络技术,对业务系统的要求越来越高.要求业务系统不仅要具有更高的可用性,而且还要具有更低的管理成本,以降
派送调度问题是物流管理领域中一个重要的课题,是大型超市集团、大型零售连锁店、物流派送中心及工业生产企业共同存在的问题.文章运用DEDS(DISCRETE EVENT DYNAMIC SYSTEMS)
该文讨论了铁路地理信息系统中,采用分布式空间数据库系统与技术来实现海量空间数据的组织、管理和共享.提出了一种三层空间数据库分布模式的存储体系结构.空间数据库由中心
由于SOCKS5协议的扩展性强、安全性能好、灵活通用、便于网络规划和管理等优点,我们以SOCKS5为基础来建立应用层安全体系结构的实用模型.而性能问题对实用模型中SOCKS5服务器
移动IP技术为主机连接到Internet提供了无需改变节点IP地址的移动性支持.移动IPv6则进一步深入探讨解决了移动IPv4中的一些问题.而由于移动切换造成的延迟和丢包是移动IPv6中
在第三代移动通信系统中,WCDMA系统取得了众多运营商、系统提供商和终端制造商的青睐,但是目前所提供的系统都是基于R99或者R4标准,其UTRAN都基于ATM技术,而不是基于IP的.目
本课题分析了电力系统远动主站端软件的特点以及当前软件维护的发展趋势,结合VC++、Socket和CSCW等技术,提出了一种基于网络的电力系统远动主站端软件远程维护技术的计算模型,并将其在具体的工程实践中进行了测试。本模型以Socket技术为基础,并结合了CSCW,采用VC++为开发工具进行了计算模型的开发应用。本模型是一种多层的计算模型,为解决目前软件维护过程中存在的困难和问题提出了一种新的思考。
随着计算机网络技术的飞速发展与分布计算理论的日趋完善,分布式协同综合虚拟试验与测试成为航空、航天产品设计、研制与维护的主要手段。对分布式协同综合虚拟试验与测试环境