【技术实现步骤摘要】
一种数据预取的方法和系统
本专利技术涉及通信
,具体涉及一种数据预取的方法和系统。
技术介绍
随着信息技术的迅速发展,网络规模随着用户数呈指数级增长,也越来越庞大,为了支持断接操作采用了预取技术,预取技术利用程序的局部性原理,从主存预取数据到缓存器中,使处理器访存时直接从缓存器中取数据,大大减少访存时间和网络延迟,提高系统性能。预取技术可以分为软件预取和硬件预取。目前,对于软件预取,大部分的处理器支持不同格式的预取指令,但通过指令进行数据预取会有指令开销;硬件预取技术在真实环境中应用广泛,它不需要程序员和编译器的参与,不需要修改可执行文件,所以没有指令开销,硬件预取也可以利用系统运行时的信息修改预取系统参数,使预取更加有效。在服务器集群中,利用互联技术,可以在节点之间共享内存,即有些节点可以使用不属于自己的内存,而使用远端节点的内存,但是访问远端内存的时延要比访问本地内存的时延高很多。假设有个节点使用了不属于自己的内存,该节点上的预取器不区分处理器发出的访存地址是本地内存还是远端内存,也就无法针对访问远端内存的情况进行数据预取优化。本专利技术的专利技术人发现 ...
【技术保护点】
一种数据预取的方法,其特征在于,包括:接收第一终端的处理器发送的访存地址;根据预设的第一关系表获取所述访存地址所属的终端及所述终端对应的预取深度值,其中,所述第一关系表包括所述第一终端对应的预取深度值、与所述第一终端相连的终端的内存地址、及与所述第一终端相连的终端对应的预取深度值;利用获取的预取深度值对所述第一终端进行数据预取。
【技术特征摘要】
1.一种数据预取的方法,其特征在于,包括:接收第一终端的处理器发送的访存地址;根据预设的第一关系表获取所述访存地址所属的终端及所述访存地址所属的终端对应的预取深度值,其中,所述第一关系表包括所述第一终端对应的预取深度值、与所述第一终端相连的终端的内存地址、及与所述第一终端相连的终端对应的预取深度值;利用获取的预取深度值对所述第一终端进行数据预取;其中,所述根据预设的第一关系表获取所述访存地址所属的终端及所述访存地址所属的终端对应的预取深度值包括:将接收到的访存地址与所述第一关系表中的与所述第一终端相连的终端的内存地址进行匹配,若匹配成功,则根据第一关系表获取与所述第一终端相连的终端的内存地址所对应的预取深度值;若匹配不成功,则根据所述第一关系表获取所述第一终端对应的预取深度值;或,所述第一关系表中的第一终端对应的预取深度值、与所述第一终端相连的终端对应的预取深度值分别存储于M个预取深度寄存器中,与所述第一终端相连的终端的内存地址分别存储于N个地址寄存器中,其中,M和N都为正整数;所述根据第一关系表获取所述访存地址所属的终端及所述访存地址所属的终端对应的预取深度值包括:将接收到的访存地址依次与所述N个地址寄存器中存储的内存地址进行匹配;若匹配成功,则从所述M个预取深度寄存器中,选择与匹配成功的地址寄存器相对应的预取深度寄存器,并获取预取深度值;若匹配不成功,则从第一终端对应的预取深度寄存器中获取预取深度值。2.根据权利要求1所述的数据预取的方法,其特征在于,所述访存地址为所述处理器发送的虚拟地址经旁路转换缓冲TLB转换后得到的物理地址。3.根据权利要求1所述的数据预取的方法,其特征在于,还包括:定期对所述第一关系表中的所述第一终端对应的预取深度值、与所述第一终端相连的终端对应的预取深度值进行更新。4.根据权利要求1所述的数据预取的方法,其特征在于,所述将接收到的访存地址依次与所述N个地址寄存器中存储的内存地址进行匹配具体包括:将所述访存地址与预设的地址掩码进行相与运算;将相与运算后所得结果依次与所述N个地址寄存器中存储的内存地址进行匹配。5.一种数据预取的系统,其特征在于,包括:接收模块,用于接收第一终端的处理器发送的访存地址;获取...
【专利技术属性】
技术研发人员:张乾龙,江涛,侯锐,张立新,
申请(专利权)人:华为技术有限公司,中国科学院计算技术研究所,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。