System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及计算机,尤其涉及一种数据预取方法和装置。
技术介绍
1、预取是处理器(central processingunit,cpu)使用的一种技术,在指令实际执行之前,将指令所需的数据从内存提取到缓存(cache)中,cpu就可以即时获得该数据,从而提高执行性能。相关技术中,现有的预取机制做得还不够好,容易造成cache污染(例如额外的预取数据占用了cache的有限空间,使得cache中的有用数据被替换),导致cpu的执行性能下降。
技术实现思路
1、本申请提供了一种数据预取方法和装置,包括以下技术方案:
2、一种数据预取方法,包括:
3、获得预取请求;所述预取请求用于指示从内存提取到缓存中的预取数据;所述缓存包括空间等级不同的多个空间;
4、基于缓存数据使用方的历史数据请求,确定所述预取请求的预取等级;所述预取等级用于表征所述预取数据的有用性;
5、将所述预取请求对应的预取数据,从所述内存提取到空间等级与所述预取请求的预取等级匹配的空间中。
6、可选的,将所述预取请求对应的预取数据,从所述内存提取到空间等级与所述预取请求的预取等级匹配的空间中,包括:
7、确定空间等级与所述预取请求的预取等级匹配的目标空间;
8、基于所述目标空间所响应的数据请求,确定所述目标空间的响应状态;
9、如果所述目标空间的响应状态为空闲,将所述预取请求对应的预取数据,从所述内存提取到所述目标空间中。
< ...【技术保护点】
1.一种数据预取方法,包括:
2.根据权利要求1所述的方法,将所述预取请求对应的预取数据,从所述内存提取到空间等级与所述预取请求的预取等级匹配的空间中,包括:
3.根据权利要求2所述的方法,如果所述目标空间的响应状态为繁忙,将所述预取请求对应的预取数据,从所述内存提取到第一空间中;所述第一空间包括空间等级低于所述目标空间的空间等级,且响应状态为空闲的空间;所述第一空间中所存数据的有用性,低于所述目标空间中所存数据的有用性。
4.根据权利要求2所述的方法,如果所述目标空间的响应状态为繁忙,且所述目标空间的空间等级为最低级别的空间等级,取消所述预取请求。
5.根据权利要求1所述的方法,基于缓存数据使用方的历史数据请求,确定所述预取请求的预取等级,包括:
6.根据权利要求1-5中任一所述的方法,基于缓存数据使用方的历史数据请求,确定所述预取请求的预取等级,包括:
7.根据权利要求6所述的方法,所述数据特征包括数据利用率,所述数据利用率基于历史时间段内的数据预取次数以及数据命中次数所确定,基于所述初始空间的数据特征,
8.根据权利要求7所述的方法,如果所述初始空间的数据利用率大于所述阈值,确定所述预取请求的预取等级高于所述初始预取等级;其中,如果所述初始预取等级为最高级别的预取等级,基于所述初始预取等级,确定为所述预取请求的预取等级。
9.根据权利要求7所述的方法,如果所述初始空间的数据利用率小于所述阈值,确定所述预取请求的预取等级低于所述初始预取等级;其中,如果所述初始预取等级为最低级别的预取等级,取消所述预取请求。
10.一种数据预取装置,包括:
...【技术特征摘要】
1.一种数据预取方法,包括:
2.根据权利要求1所述的方法,将所述预取请求对应的预取数据,从所述内存提取到空间等级与所述预取请求的预取等级匹配的空间中,包括:
3.根据权利要求2所述的方法,如果所述目标空间的响应状态为繁忙,将所述预取请求对应的预取数据,从所述内存提取到第一空间中;所述第一空间包括空间等级低于所述目标空间的空间等级,且响应状态为空闲的空间;所述第一空间中所存数据的有用性,低于所述目标空间中所存数据的有用性。
4.根据权利要求2所述的方法,如果所述目标空间的响应状态为繁忙,且所述目标空间的空间等级为最低级别的空间等级,取消所述预取请求。
5.根据权利要求1所述的方法,基于缓存数据使用方的历史数据请求,确定所述预取请求的预取等级,包括:
6.根据权利要求1-5中任一所述的方...
【专利技术属性】
技术研发人员:高宇翔,孙志文,马梦,
申请(专利权)人:鼎道智芯上海半导体有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。