针对异构众核的快速线程启动方法

    公开(公告)号:CN112445581A

    公开(公告)日:2021-03-05

    申请号:CN201910799253.2

    申请日:2019-08-28

    Abstract: 本发明公开一种针对异构众核的快速线程启动方法,包括以下步骤:S1、控制核心进行线程信息初始化的工作;S2、控制核心获取加速核心上将要运行的线程函数的PC值、参数等信息;S3、控制核心根据异构众核的结构特征选择传输方式;S4、控制核心写入线程信息并置传输标志;S5、控制核心进入等待线程结束的状态;S6、加速核心进入等待传输标志的状态;S7、加速核心启动传输操作;S8、启动线程函数执行;S9、各加速核心的线程函数执行完毕后,进行加速核心间的同步操作;S10、通知控制核心线程函数已执行结束;S11、控制核心进行线程回收操作。本发明实现了快速的线程启动与回收,减少了控制核心和加速核心在线程启动交互过程中的访存和控制开销,为应用程序的高效执行奠定了基础。

    针对循环内条件转移指令的转移预测优化方法

    公开(公告)号:CN112445520A

    公开(公告)日:2021-03-05

    申请号:CN201910794939.2

    申请日:2019-08-27

    Abstract: 本发明公开一种针对循环内条件转移指令的转移预测优化方法,包括以下步骤:S11、判断一次循环内的指令条数是否能够满足带条件标记的运算指令在带条件转移标志位的条件转移指令之前至少提前N条的条件;S12、如果满足条件,编译器直接生成汇编代码,如果不满足,编译器根据循环体代码量与条件N计算需要循环展开的次数,进行循环展开,生成汇编代码;S13、带条件标记的运算指令提前改变条件转移指令的转移标志位;S14、条件转移指令根据对应的条件标记位进行判断,如果成立,则处理器根据条件转移标记指示跳转取指,否则顺序取指;S15、不论预测为跳转还是不跳转,条件标记位使用后即作废,转移指令条件标记位清0。本发明能够规避循环最后一次转移带来的性能损失。

    低功耗的寄存器分配编译优化方法

    公开(公告)号:CN112445481A

    公开(公告)日:2021-03-05

    申请号:CN201910794940.5

    申请日:2019-08-27

    Abstract: 本发明公开一种低功耗的寄存器分配编译优化方法,包括以下步骤:S1、分析程序的热点函数和循环段;S2、统计热点代码段中依赖关系语句执行频率;S3、登记存在依赖关系语句中临时变量的生存周期;S4、关闭针对该依赖关系语句性能相关的指令调度优化,防止因为考虑流水线性能而进行的指令调度;S5、对每个依赖关系的临时变量进行基本块内的生存周期分析;S6、对每个依赖关系的临时变量进行跨基本块的生存周期分析;S7、遍历所有基本块,对标记为可低功耗优化的临时变量追踪其定义和使用点(define&use);S8、进行W_set指令循环外提优化。本发明在一定程度上优化系统运行功耗,且软硬件开发成本低,对降低功耗的方法简单直接,在考虑性能的前提下,最大限度的挖掘寄存器低功耗潜力。

    一种异构代码融合的编译和生成方法

    公开(公告)号:CN105426226A

    公开(公告)日:2016-03-23

    申请号:CN201510828419.0

    申请日:2015-11-24

    CPC classification number: G06F8/443

    Abstract: 本发明提供了一种异构代码融合的编译和生成方法,包括:利用运算控制核心编译器和运算核心编译器分别为运算控制核心和运算核心生成第一对象文件和第二对象文件;运算核心编译器自动实现对第一对象文件中的函数的重命名,在函数名的前加上前缀;链接器将重命名后第一对象文件与第二对象文件链接融合为统一的可执行程序。

    基于异构众核的轻量级线程快速触发方法

    公开(公告)号:CN105242962A

    公开(公告)日:2016-01-13

    申请号:CN201510828182.6

    申请日:2015-11-24

    Abstract: 本发明提供了一种基于异构众核的轻量级线程快速触发方法,包括:在轻量级线程库中编写异构众核的多线程程序,其中多线程程序在轻量级线程库中的创建和回收以显式的接口来调用,然后完成多线程程序代码的编译,生成一个异构融合的可执行代码;运行该可执行码;其中,首先执行在主处理器上运行的程序加载器,再将可执行代码作为参数传入给程序加载器;程序加载器将整个当做一个文件读入,然后解析出符合ELF格式的段信息,并将其写入内存的相应位置,并完成程序执行环境变量的配置。

    一种指令转化方法及系统
    56.
    发明公开

    公开(公告)号:CN102981802A

    公开(公告)日:2013-03-20

    申请号:CN201210441177.6

    申请日:2012-11-06

    Abstract: 本发明提供的一种指令转化方法及系统,获得处理器对外部存储器中第一地址进行访问的指令并判断是否为常数,如果是,则判断第一地址中保存的数据的宽度是否满足预设的第一宽度要求,如果是,则对所述该指令进行转化,生成处理器对内部指令缓存器访问的立即数指令。本发明针对没有数据缓存器的处理器,可以将处理器对外部存储器中地址进行访问的指令转化为处理器对内部指令缓存器访问的立即数指令,从而无需处理器再对外部存储器进行访问。因此,本发明可以不再使处理器的处理速度受限于对外部存储器的访问速度,有效的解决了“存储墙”的问题,提高了处理器的实际处理速度。

    一种程序调试方法及系统
    57.
    发明公开

    公开(公告)号:CN102541727A

    公开(公告)日:2012-07-04

    申请号:CN201010594006.8

    申请日:2010-12-17

    Abstract: 本发明公开了一种程序调试方法及系统,能够将针对尚未研制成功的CPU芯片的程序转换为针对已研制成功并可靠性高的CPU芯片体系结构上的程序,并使用标准的调试器进行调试,对程序的正确性和性能进行分析和评估,从而避免了使用体系结构模拟器进行模拟所带来的处理速度慢、可靠性低的缺点。由于使用了已有的硬件资源和标准的调试器,所以处理速度较快,并且可靠性较高。

    基于异构平台的自适应节点融合编译优化方法

    公开(公告)号:CN112527304B

    公开(公告)日:2022-10-04

    申请号:CN201910885756.1

    申请日:2019-09-19

    Abstract: 本发明公开一种基于异构平台的自适应节点融合编译优化方法,包括以下步骤:S1、生成中间表示;S2、DAG融合子图识别;S3、节点融合策略;S4、代价评估;S5、自适应选择节点融合策略,即根据S4计算得到的第k个融合策略代价,结合目标后端的寄存器、cache、内存使用情况,自适应地选择最优的节点融合策略;S6、目标相关节点融合,根据节点融合策略,将S23中匹配得到的DAG子图的控制流和数据流关系,转移到S5选择出的节点融合策略所生成的融合后的DAG子图上,使用融合后的DAG子图替换融合前的DAG子图,转到S22;S7、生成目标代码,即编译器对降级完成后的DAG进行编译处理,生成异构平台代码。本发明为异构平台的节点融合优化提供精确指导,能够进一步挖掘异构平台复合指令的潜力,提升异构平台的性能。

    基于国产异构平台的自适应可变参数优化方法

    公开(公告)号:CN112527263B

    公开(公告)日:2022-10-04

    申请号:CN201910885748.7

    申请日:2019-09-19

    Abstract: 本发明公开一种基于国产异构平台的自适应可变参数优化方法,包括以下步骤:S1、根据架构信息选择相应架构的ABI接口,编译器前端根据相应的ABI接口中的ABI约定对源程序进行处理,生成中间表示;S2、编译器后端扫描分析函数中的可变参函数,收集可变参函数的参数使用情况;S3、根据S2中扫描分析得到的信息,依据可变参数的数据类型和可变参数所存入的寄存器的不同,对可变参数进行后端对函数降级前的处理,为编译器后端的函数降级过程做准备;S4、编译器后端对可变参数的内建函数进行降级处理,获得降级后的中间表示;S5、生成汇编文件,即根据降级后的中间表示生成汇编指令。本发明实现了优化可变参函数的内存和减少访存指令的算法,提高了程序的性能。

    针对片上存储器重用的链接时地址分配方法

    公开(公告)号:CN112445724B

    公开(公告)日:2022-09-13

    申请号:CN201910805599.9

    申请日:2019-08-29

    Abstract: 本发明公开一种针对片上存储器重用的链接时地址分配方法,包括以下步骤:S1、在编译器上构建片上存储器的重用段类型,生成片上存储器的访存模式;S2、在执行S1中操作的同时,对链接脚本进行配置;S31、链接器对S2中所述的链接脚本进行信息扫描,进入链接器的重用处理函数;S32、从二进制文件格式描述符文件中获取段信息;S33、循环处理S32中获取的段信息,识别并找出重用段;S34、解析出S12中所述的重用段属性的数据结构中所带的重用段名字,对满足同一个重用段名字的段分配相同的虚拟内存地址;S35、从S32中获取的段信息中找出最大的段,用作该重用段空间分配时的空间大小。本发明通过链接时地址分配方法实现空间重用,有效提高片上存储器的空间利用率、提升程序性能。

Patent Agency Ranking