面向机器学习的高性能SIMT处理器cache的设计与实现
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第 7期
许晓燕等:面向机器学习的高性能 SIMT处理器 cacheBiblioteka Baidu设计与实现
283
cache来改善它们之间的性能。目前 cache设计有普林 斯顿、哈佛两种结构。普林斯顿结构将指令 cache与数 据 cache统一存放,哈佛结构将指令 cache和数据 cache 分开存放[6]。哈佛结构相对普林斯顿结构有利于解决 指令和数据冲突的问题,便于指令 cache与数据 cache 的并行执行,方便对指令 cache和数据 cache的优化,因 此 cache设计中普遍使用哈佛结构。本设计采用哈佛 结构,并根据指令 cache、数据 cache的局部性和连续 性[7],为指令 cache、数据 cache设置不同的参数;根据 设计需求为 cache设计了可配置的替换算法,包括轮询、 LFU(leastfrequentlyused)、LRU(LeastRecentlyUsed) 和专用的伪 LRU替换算法。本文重点介绍基于自主 研发的 SIMT架构的 cache设计与实现。
第 36卷第 7期 2019年 7月
计算机应用与软件 ComputerApplicationsandSoftware
Vol36 No.7 Jul.2019
面向机器学习的高性能 SIMT处理器 cache的设计与实现
许晓燕 李 涛 孙 哲 邢立冬
(西安邮电大学电子工程学院 陕西 西安 710121)
摘 要 为了满足机器学习中大数据、并行计算及降低处理器与主存之间的差距等要求,设计基于自主研发的 SIMT处理器的流水线 cache结构。依据局部性原理与 LRU替换算法相结合设计专用的伪 LRU替换算法,与通 用的轮询、LFU、LRU替换算法共同完成 cache替换算法的可配置要求,实现处理器与主存之间的快速交互。采用 Xilinx公司 virtexultrascale系列的 xcvu440flga28922eFPGA芯片对设计进行综合。结果表明该结构指令 cache 最大时延为 2.923ns,数据 cache最大时延为 3.258ns,满足 SIMT处理器性能要求。 关键词 SIMT处理器 流水线 cache结构 替换算法 中图分类号 TP333 文献标识码 A DOI:10.3969/j.issn.1000386x.2019.07.048
2006年 11月,NVIDIA在其 TeslaGPU架构中提出了 一条指令同时驱动多个不相关线程的 SIMT处 理 方 式[3]。随后不久,ATI公司在 2007年推出了采用类似 处理架构的 TeraScale引擎,及相关产品 R600GPU芯 片[4]。SIMT架构具有多个执行流程[3],可以利用多线 程隐藏存储延时,减少取指、取数开销,而且执行时不 需要将数据凑成合适的矢量长度,便可以进行运算,更 有利于适应机器学习处理大规模数据的要求。
Abstract Inordertomeettherequirementsofbigdata,parallelcomputingandreducethegapbetweenprocessor andmainmemoryinmachinelearning,wedesignedapipelinecachestructurebasedonselfdevelopedSIMTprocessor. ItwasdesignedaccordingtotheprincipleoflocalityandLRU replacementalgorithm.ThededicatedpseudoLRU replacementalgorithm,togetherwiththegeneralRoundRobin,LFU,andLRUreplacementalgorithms,completedthe configurablerequirementsofthecachereplacementalgorithm toachievefastinteractionbetweentheprocessorandthe mainmemory.Thedesignwasintegratedwiththexcvu440flga28922eFPGA chipofXilinxvirtexultrascaleseries. Theresultsshowthatthemaximumlatencyofthestructureinstructioncacheis2.923ns,andthemaximumdelayofthe datacacheis3.258ns,whichsatisfiestheperformancerequirementsofSIMTprocessor.
DESIGNANDIMPLEMENTATIONOFHIGH PERFORMANCE SIMTPROCESSOR CACHEFOR MACHINELEARNING
XuXiaoyan LiTao SunZhe XingLidong
(SchoolofElectronicEngineering,Xi’anUniversityofPostsandTelecommunications,Xi’an710121,Shaanxi,China)
本文基于自主研发的 SIMT架构进行设计,为了解 决 SIMT处理器与主存速度不匹配问题[5],设计使用
收稿日期:2018-12-23。陕西省重点研发计划项目(2017ZDXMGY005);西安市科技局项目(201805040YD18CG24(5))。许 晓燕,硕士生,主研领域:电路,系统。李涛,教授。孙哲,硕士生。邢立冬,博士。
Keywords SIMTprocessor Pipelinedcachestructure Replacementalgorithm
0 引 言
随着大数据时代的到来,机器学习已经应用到人 类生活的各个方面。机器学习的本质是基于互联网的 海量数据以及系统强大的并行运算能力,让机器自主 模拟人类学习的过程,通过不断“学习”数据来做出智 能决策行为[1]。为了解决机器学习中大数据、并行运 算需求,本文基于 SIMT架构进行设计。SIMT概念首 先被 GPU制 造 商 NVIDIA在 产 品 微 架 构 中 提 出[2]。