[发明专利]一种冗余cache淘汰操作消除方法在审
申请号: | 202110478519.0 | 申请日: | 2021-04-30 |
公开(公告)号: | CN114218137A | 公开(公告)日: | 2022-03-22 |
发明(设计)人: | 杨小川;李雁冰;郑岩;方燕飞;董恩铭;于康;刘齐;文延华;王云飞 | 申请(专利权)人: | 无锡江南计算技术研究所 |
主分类号: | G06F12/123 | 分类号: | G06F12/123 |
代理公司: | 苏州创元专利商标事务所有限公司 32103 | 代理人: | 王健 |
地址: | 214038 江苏*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 冗余 cache 淘汰 操作 消除 方法 | ||
本发明公开一种冗余cache淘汰操作消除方法,包括以下步骤:S1、分析程序代码,直至找到第一个cache淘汰操作;S2、继续分析程序代码,若发现函数调用语句,则执行S3,否则执行S4;S3、依次分析并记录子函数调用链中语句的操作;S4、若找到第二个cache淘汰操作,则将其与第一个cache淘汰操作共同组成cache淘汰操作组;S5、判断是否可对该cache淘汰操作组进行优化,若是则执行S6,否则执行S7;S6、对cache淘汰操作进行优化,并将优化后的cache淘汰操作作为第一个cache淘汰操作,返回S2继续执行。本发明能够实现更优的冗余同步消除,进一步提升优化后程序的运行时性能。
技术领域
本发明涉及一种冗余cache淘汰操作消除方法,属于高性能计算技术领域。
背景技术
目前,高性能计算领域的处理器发展已经进入了众核时代,为了降低功耗以及节省芯片面积,高性能计算领域的处理器经常使用cache作为从核的高速缓存,优化用户程序中的访存操作。但是,由于cache数据与主存数据的不一致以及众核处理器的多从核结构,需要用户在编程时充分考虑众核cache的一致性问题。比如,若某一块内存中的数据映射到1号从核的cache中,且1号从核对cache行的数据进行了写操作,如果2号从核要读取1号从核所写的内容,就需要先将1号从核的cache行淘汰到主存后,2号从核再从主存中读取到最新的内容,由于cache使用还存在假共享等问题,实际程序中的一致性问题更为复杂。
因此,为了保证众核程序中cache数据的一致性,用户常常会在包含cache数据操作的代码段之后加入cache淘汰操作,使得修改后的数据能够被其他从核看到或使用,但这容易造成程序中存在不必要的冗余cache淘汰操作,降低程序的运行时性能。
在发表于2009年的《Openmp程序分析及优化研究》一文中,提出通过标量分析、数据依赖分析以及数据和计算划分信息等技术来确定Openmp程序中的冗余栅障同步,然后对代码进行相应的消除,以减少因维护程序数据一致性而导致的程序运行时性能降低。但是,该方法只考虑了对程序中的循环结构代码进行分析来识别和消除冗余栅障同步,无法对非循环结构代码进行冗余栅障同步消除;同时,该方式仅对本函数中的代码进行分析,没有考虑对全程序的过程间分析,因此优化范围有限。
发明内容
本发明的目的是提供一种冗余cache淘汰操作消除方法,其能够实现更优的冗余同步消除,进一步提升优化后程序的运行时性能。
为达到上述目的,本发明采用的技术方案是:提供一种冗余cache淘汰操作消除方法,基于过程间分析模块,在编译器中设定冗余cache淘汰操作的特征和冗余cache淘汰操作优化策略,用于自动识别并优化用户程序中冗余的cache淘汰操作;
包括以下步骤:
S1、从用户程序的入口函数开始,调用过程间分析模块,以程序执行流顺序分析程序代码,直至找到第一个cache淘汰操作,否则执行S8;
S2、继续分析程序代码,若发现函数调用语句,则执行S3,否则执行S4;
S3、调用过程间分析模块,依次分析并记录子函数调用链中语句的操作;
S4、若找到第二个cache淘汰操作,则将其与第一个cache淘汰操作共同组成cache淘汰操作组,并执行S5,否则执行S8;
S5、根据预先定义的冗余cache淘汰操作的特征,判断是否可对该cache淘汰操作组进行优化,若是则执行S6,否则执行S7;
S6、根据预先定义的冗余cache淘汰优化策略,对cache淘汰操作组进行优化,并将优化后的cache淘汰操作作为第一个cache淘汰操作,返回S2继续执行;
S7、将S4中找到的第二个cache淘汰操作作为第一个cache淘汰操作,返回S2继续执行;
S8、程序执行结束。
由于上述技术方案的运用,本发明与现有技术相比具有下列优点:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于无锡江南计算技术研究所,未经无锡江南计算技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110478519.0/2.html,转载请声明来源钻瓜专利网。