一种高速缓冲存储器Cache读写方法、系统、介质及设备技术方案

技术编号:37467595 阅读:23 留言:0更新日期:2023-05-06 09:43
本公开实施例提供的一种高速缓冲存储器Cache读写方法、系统、介质及设备,属于数据处理领域,根据计算任务特性配置Cache机制和数据区特性,一方面可以较灵活地对不同的数据块做合适的控制,另外一方面对高速缓冲存储器Cache设计添加了预缓存prefetch功能,能很快速地把需要prefetch的数据提前加载到Cache中,减少后续数据读取的延时,特别是对于人工智能算法等比较规律的计算工作,可以减少数据等待时间,提升整体的性能。提升整体的性能。提升整体的性能。

【技术实现步骤摘要】
一种高速缓冲存储器Cache读写方法、系统、介质及设备


[0001]本公开实施例涉及数据处理领域,具体地涉及一种高速缓冲存储器Cache读写方法、系统、介质及设备。

技术介绍

[0002]Cache(高速缓冲存储器)通常用来缓存数据以减少从下一级的存储中搬移数据,来节省计算延时等。在CPU和GPU等芯片中广泛使用。人工智能算法包括了各种各样的模型算法或AI框架,开发使用时包括推理和训练两个重要的过程,一般用GPU进行并行加速。
[0003]一般Cache都是多路(way)多组(set)的,如果处理器数据请求发现在Cache中,则快速返回;如果数据缺失,则替换一条数据并开始从外层存储中去读取数据,这个过程耗时较长。经典的数据缺失替换策略是通过LRU(最近最少被使用)等算法把同组内的一条不常使用数据替换掉,基本达到高频使用的数据被缓存下来的目的,基本满足数据处理不规律的场景。但人工智能算法的工作比较有规律性和周期性,数据训练通常一轮接着一轮,内部计算通常一层(layer)接着一层。在处理新的一层时,很多数据都会缺失,导致局部计算单元的数据读本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种高速缓冲存储器Cache读写方法,其特征在于,包括:接收数据读取请求,所述读取请求至少包括第一数据地址、预缓存标识和预缓存大小,如果所述预缓存标识为真,所述读取请求为第一预缓存请求,基于所述第一数据地址和所述预缓存大小计算地址标签tag,将所述地址标签tag记录在预缓存请求Cache中,并把所述第一预缓存请求传递至预缓存请求生成器,所述预缓存请求生成器基于所述预缓存大小和Cache line的大小,将所述第一预缓存请求展开成多个第二预缓存请求,并将所述多个第二预缓存请求传递至预缓存请求队列,如果所述预缓存标识为假,所述读取请求为普通请求,并将所述普通请求传递至普通请求队列,所述普通请求队列中的请求和所述预缓存请求队列中的请求,经仲裁后进入所述高速缓冲存储器Cache进行请求的处理。2.根据权利要求1所述的方法,其特征在于:所述预缓存标识在为数据分配缓存区buffer时或在需要时通过接口程序设置。3.根据权利要求2所述的方法,其特征在于:基于计算任务特性或基于先验知识或基于AI框架模型特性选择需要设置预缓存标识的数据区,以及相应的预缓存大小。4.根据权利要求1所述的方法,其特征在于:如果计算得到的地址标签tag已经被记录,则对应的所述第一预缓存请求转为普通请求进行处理。5.根据权利要求1所述的方法,其特征在于:所述第一预缓存请求传递至所述普通请求队列或所述预缓存请求队列。6.根据权利要求1所述的方法,其特征在于:所述预缓存请求生成器基于所述预缓存大小和Cache line的大小,将所述第一预缓存请求展开成多个第二预缓存请求,包括,假设预缓存大小为MB,Cache line的大小为mB,则将所述第一预缓存请求展开成n个请求,其中n=

M/m

。7.根据权利要求1所述的方法,其特征在于:所述高速缓冲存储器Cache可以通过接口程序选择开启或关闭预缓存特性。8.一种高速缓冲存储器Cache读写系统,其特征在于,包括:处理器,用于从存储器接收数据,高速缓冲存储器,可操作地连接在存储器和处理器单元之间,用于从存储器接收数据,并将所述数据传送至处理器,所述高速缓冲存储器包括,普通请求队列单元,预缓存请求队列单元,预缓存请求cache单元,预缓存请求生成器单元,预缓存标识判断单元,仲裁单元和高速缓冲存储Data cache单元,其中,所述高速缓冲存储器接收数据读取请求,所述读取请求至少...

【专利技术属性】
技术研发人员:虞新阳杨建李兆石
申请(专利权)人:沐曦集成电路上海有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1