[发明专利]一种数据过滤方法及终端设备有效
申请号: | 201610797468.7 | 申请日: | 2016-08-31 |
公开(公告)号: | CN107783911B | 公开(公告)日: | 2021-06-08 |
发明(设计)人: | 于绩洋;方磊;顾雄礼 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | G06F12/0862 | 分类号: | G06F12/0862;G06F12/084 |
代理公司: | 广州三环专利商标代理有限公司 44202 | 代理人: | 郝传鑫;熊永强 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据 过滤 方法 终端设备 | ||
一种数据过滤方法及终端设备,该方法应用于终端设备,终端设备设置有至少一个处理器,每个处理器包括共享高速缓存和至少两个内核,共享高速缓存被该至少两个内核所共享,包括:接收第一数据;判断第一数据是否是预取返回的数据;当第一数据是预取返回的数据时,判断第二数据是否是共享数据,第二数据是将要被第一数据替换的数据;当第二数据是共享数据时,获取第一数值,第一数值是与当前采样周期相邻的上一采样周期统计的预取返回的数据中未被使用的数据的数量;当第一数值大于或等于第一预设值时,丢弃第一数据。本发明实施例,可以提高系统性能。
技术领域
本发明涉及计算机技术领域,尤其涉及一种数据过滤方法及终端设备。
背景技术
随着计算机技术的不断发展,存储时延已成为限制多内核系统性能的一个重要因素。为了解决上述问题,业界提出数据预取机制,即通过软件指令或硬件数据预取引擎,将数据提前取到高速缓存或专用的预取缓存。在多内核处理器系统中,可能同时运行着多个线程,这些线程间通常会共享末级高速缓存(Last level cache,LLC)和片外存储器。为了维持处于LLC和片外存储器中共享数据的一致性,如果一个正在被共享的数据块被来自于预取请求的数据替换,这个共享数据块的所有共享者都需要对该数据块在其本地的备份做无效化处理。因此,数据预取请求会导致线程间的数据无效化,以及导致缓存缺失率增加,以致降低了系统性能。
发明内容
本发明实施例公开了一种数据过滤方法及终端设备,用于提高系统性能。
第一方面公开一种数据过滤方法,该方法应用于终端设备,终端设备设置有至少一个处理器,每个处理器可以包括共享高速缓存和至少两个内核,共享高速缓存被这至少两个内核所共享,接收第一数据,判断第一数据是否是预取返回的数据,当第一数据是预取返回的数据时,判断第二数据是否是共享数据,当第二数据是共享数据时,获取第一数值,当第一数值大于或等于第一预设值时,丢弃第一数据。其中,第二数据是将要被第一数据替换的数据,第一数值是与当前采样周期相邻的上一采样周期统计的预取返回的数据中未被使用的数据的数量。当接收的数据是预取返回的数据,且将要被替换的数据是共享数据时,将根据上一采样周期采样的预取返回的数据中未被使用的数据的数量来确定是否过滤预取返回的数据,当采样的预取返回的数据中未被使用的数据的数量大于或等于一个阈值时才过滤预取返回的数据,而不是盲目的过滤所有预取返回的数据,也不是所有的预取返回的数据均不过滤,因此,可以合理的对预取返回的数据进行处理,从而可以提高系统性能。
在一个实施例中,当第一数值小于第一预设值时,获取第二数值,当第二数值大于或等于第二预设值时,获取第三数值,当第三数值小于第三预设值时,丢弃第一数据。其中,第二数值是与当前采样周期相邻的上一采样周期统计的被预取返回的数据替换的共享数据被替换后被访问的数据的数量,第三数值是与当前采样周期相邻的上一采样周期中预取返回的数据中被使用的数据的数量与预取返回的数据的总数量的比值。当上一采样周期中采样的预取返回的数据中未被使用的数据的数量小于一个阈值时,先考虑上一采样周期中被预取返回的数据替换的共享数据被替换后被访问的数据的数量,当被预取返回的数据替换的共享数据被替换后被访问的数据的数量大于或等于另一阈值时,考虑上一采样周期中预取返回的数据的使用概率,当使用概率小于又一阈值时,才过滤预取返回的数据,而不是盲目的过滤所有预取返回的数据,也不是所有的预取返回的数据均不过滤,因此,可以合理的对预取返回的数据进行处理,从而可以提高系统性能。
在一个实施例中,当第二数值小于第二预设值,或第三数值大于或等于第三预设值时,使用第一数据替换第二数据。当上一采样周期中被预取返回的数据替换的共享数据被替换后被访问的数据的数量小于另一阈值,或者上一采样周期中预取返回的数据的使用概率大于或等于又一阈值时,将不过滤预取返回的数据,而不是盲目的过滤所有预取返回的数据,也不是所有的预取返回的数据均不过滤,因此,可以合理的对预取返回的数据进行处理,从而可以提高系统性能。
在一个实施例中,根据缓存块被替换的次数确定采样周期,缓存块是高速缓存中用于存储数据的最小单位,以便根据采样周期对预取返回的数据进行处理。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610797468.7/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种电弧喷涂防腐涂层的方法
- 下一篇:一种复合涂层耐磨球的制备方法
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置