[发明专利]一种数据预读取的优化方法和装置有效
申请号: | 202010693391.5 | 申请日: | 2020-07-17 |
公开(公告)号: | CN111858400B | 公开(公告)日: | 2022-07-08 |
发明(设计)人: | 李龙翔;刘羽;崔坤磊;张敏;杨振宇;于占乐;王倩 | 申请(专利权)人: | 苏州浪潮智能科技有限公司 |
主分类号: | G06F12/0862 | 分类号: | G06F12/0862 |
代理公司: | 北京连和连知识产权代理有限公司 11278 | 代理人: | 杨帆;李红萧 |
地址: | 215100 江苏省苏州市吴*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据 读取 优化 方法 装置 | ||
本发明公开了一种数据预读取的优化方法和装置,方法包括:在CFD程序运行期间采集CFD程序中各函数的运行特征信息,并分析运行特征信息以确定待优化函数并写入分析日志;针对分析日志中的每个待优化函数,将其预读取调度距离和预读取调度位置作为状态、将其优化结果变化作为动作构建动作价值函数;针对每个动作价值函数,使用强化学习算法以CFD求解器的单步速度作为奖励进行迭代训练,直到动作价值函数收敛;根据对应的状态、动作、和收敛的动作价值函数确定最优的预读取调度距离和预读取调度位置以在缓存中执行数据预读取。本发明能够获得PSD和PSP的最优预读取优化结果值,进而提高CFD求解器的运行速度。
技术领域
本发明涉及机器学习领域,更具体地,特别是指一种数据预读取的优化方法和装置。
背景技术
在CFD(计算流体动力学)等高性能软件中,由于计算过程包含大量稀疏矩阵计算,在实际运行过程中一般对内存带宽需求较高。运行性能除了受处理器性能影响,同时还受到数据访问速度的限制。在大部分CFD软件中,稀疏矩阵数据结构被广泛采用,因此不可避免的产生大量的不连续数据访问,使得对内存访问需求极高。在过去十年中,分层缓存子系统、非均匀内存、同步多执行序和乱序执行等技术的应用和发展,使得现代处理器的性能和计算能力提升了数倍以上,但是CPU与内存之间数据访问速度却增长缓慢。这使得目前在部分高性能应用软件中,内存带宽读取速度逐渐成为了主要瓶颈。
针对内存中数据读取优化,目前主要有两种方法:(1)充分利用缓存,将大部分访问数据放入内存中;(2)使用缓存技术,有效地利用最大内存带宽掩盖内存访问造成的延迟。由于处理器工艺水平和大小限制,目前主流处理器中缓存大小有限,针对大部分应用来说不可能将所有使用数据放入缓存中,并且随着应用软件处理问题规模随着处理器性能逐年增加,使用的数据也呈指数形式增长,而处理器缓存大小增长缓慢,因此方法(1)实现难度较大。方法(2)主要是通过软件预读取技术实现。数据预读取是微架构体系中增强功能,通过有效利用内存读写带宽,将需要使用的数据提前放入处理器的高速缓存中。通过与软件优化相结合,对于大部分应用程序的性能都可以得到显著提高,因此方法(2)是目前主要使用方法。对于应用软件来说,在过去以主频提升为主的时代,可以不需要对代码进行任何修改,就可以在新平台上获得更高的性能,但是在使用预读取技术对软件优化时,却缺少一种统一的模式,这与预读取优化的方式和实现方法有关。采用预读取方法对软件进行优化时,需要确定以下相关参数:(1)预读取数据调度的距离(PSD)。PSD单位为指令个数,当PSD要足够大时才能使访问内存的延迟被其他指令的执行时间掩藏,但是PSD的值过大时会同时造成缓存污染,并且由于其他指令数据对缓存占用导致预读取的数据丢失。并且针对不同处理器平台和不同数据,指定预读取指令的PSD最优值会发生变化;(2)预读取指令的位置(PSP)。预读取指令并非对应用性能没有影响,频繁使用预读取指令也会导致应用性能降低。此外,必须将预读取指令与计算指令交叉,并且指令的位置对于优化性能也有较大影响。可以看出,预读取优化的结果对于平台和应用软件处理的数据有极高的依赖性,并且对于PSD和PSP的最优值无法通过理论公式获得,必须采用测试方法,因此使用预读取方法进行软件优化的工作量极大。
针对现有技术中PSD和PSP的优化工作量大、难以实施的问题,目前尚无有效的解决方案。
发明内容
有鉴于此,本发明实施例的目的在于提出一种数据预读取的优化方法和装置,能够获得PSD和PSP的最优预读取优化结果值,进而提高CFD求解器的运行速度。
基于上述目的,本发明实施例的第一方面提供了一种数据预读取的优化方法,包括执行以下步骤:
在CFD程序运行期间采集CFD程序中各函数的运行特征信息,并分析运行特征信息以确定待优化函数并写入分析日志;
针对分析日志中的每个待优化函数,将其预读取调度距离和预读取调度位置作为状态、将其优化结果变化作为动作构建动作价值函数;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏州浪潮智能科技有限公司,未经苏州浪潮智能科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010693391.5/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种图像匹配方法及装置、电子设备和存储介质
- 下一篇:一种结构可靠的音乐设备
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置