-
公开(公告)号:CN112446471B
公开(公告)日:2022-09-13
申请号:CN201910799257.0
申请日:2019-08-28
Applicant: 无锡江南计算技术研究所
Abstract: 本发明公开一种基于异构众核处理器的卷积加速方法,包括以下步骤:S1、根据异构众核处理器的核数,确定输入特征图和卷积核的多核划分方法,实现众核并行加速,S2、各计算核心将划分后的数据通过DMA的方式传输至片上存储器,实现片上存储加速,S3、将卷积操作核心计算过程中的标量计算操作优化为向量计算操作,实现SIMD指令加速,S4、结合异构众核处理器流水线特性,对卷积操作核心计算过程的指令流进行优化,以提高执行效率,实现指令并行加速。本发明对卷积操作进行加速,显著提升了卷积神经网络在异构众核处理器上的训练和推理性能。
-
公开(公告)号:CN114253545A
公开(公告)日:2022-03-29
申请号:CN202110381428.5
申请日:2021-04-09
Applicant: 无锡江南计算技术研究所
Abstract: 本发明公开一种基于编译的神经网络异构众核多层次资源映射方法,包括以下步骤:S1、进行众核核组资源映射;S2、进行从核线程资源映射;S3、进行向量部件资源映射。本发明可充分挖掘神经网络算子并行潜力,发挥片上多级并行优势,从而提升深度学习负载在异构众核平台上的性能。
-
公开(公告)号:CN114217770A
公开(公告)日:2022-03-22
申请号:CN202110325186.8
申请日:2021-03-26
Applicant: 无锡江南计算技术研究所
Abstract: 本发明公开一种基于异构众核架构的C++融合编程方法,包括以下步骤:S1、主核以头文件“athreadcxx.h”的形式提供athreadcxx类的对象;S2、athreadcxx类的对象通过构造函数进行从核资源的初始化,通过析构函数进行从核资源的回收;S3、编译器通过选项‑mhost将使用athreadcxx类的对象编程的主核程序进行编译;S4、从核以头文件“slavecxx.h”的形式提供线程私有全局变量PEN、COL和ROW,用于保存当前从核的编号和行列信息。本发明解决了不同架构的指令集混合链接符号多重定义问题、从核间的全局变量访存问题。
-
公开(公告)号:CN112445479A
公开(公告)日:2021-03-05
申请号:CN201910794733.X
申请日:2019-08-27
Applicant: 无锡江南计算技术研究所
IPC: G06F8/41
Abstract: 本发明公开一种针对结构体成员的重组优化方法,包括以下步骤:S11、编译器扫描目标程序中的每个基本块,构建待优化的结构体类型集合;S12、对程序中所有结构体的引用进行分析,从待优化的结构体类型集合中移除不满足优化条件的结构体类型;S13、根据结构体定义、声明以及引用的信息对满足优化条件的结构体的成员进行重组,并将结果记录在sbitmap类型的变量中;S14、根据步骤S13记录的待重组的结构体成员的信息,创建多个新结构体的定义;S15、遍历目标程序的所有基本块,将目标程序中对旧结构体的引用替换为对新结构体的引用,对结构体声明及引用信息进行更新。本发明解决了现有的数据变换技术无法针对结构体成员进行数据重组优化的问题,达到了进一步提升数据Cache性能的效果。
-
公开(公告)号:CN112445316A
公开(公告)日:2021-03-05
申请号:CN201910794732.5
申请日:2019-08-27
Applicant: 无锡江南计算技术研究所
IPC: G06F1/3234 , G06F8/41
Abstract: 本发明公开一种基于向量计算的编译时低功耗优化方法,包括以下步骤:编译器读入源程序,通过词法分析、语法分析、语义分析、控制流分析、数据流分析的优化分析手段,识别出向量计算参数为常量的情况并进行标记;编译器在分析出向量计算表达式中参数为立即数向量时,在进行表达式匹配时,调用向量静态预计算库进行计算,然后用计算后的结果替换原有的表达式;编译器分析出向量计算中参数为赋初值变量或者常量变量时,调用向量静态预计算库进行计算,然后用计算后的结果替换原有的表达式。本发明实现在编译时尽量挖掘向量数据的预计算能力的目的,挖掘向量数据的预计算能力,减少运行时的向量访存与计算,提高程序性能,降低处理器能耗。
-
公开(公告)号:CN109240702A
公开(公告)日:2019-01-18
申请号:CN201810929684.1
申请日:2018-08-15
Applicant: 无锡江南计算技术研究所
IPC: G06F8/41
Abstract: 本发明公开一种多线程模式下的快速段式编址配置和访问方法,包括如下步骤:S101、用户程序中使用存储层次关键字;S102、编译器识别并处理用户程序中的关键字;S103、链接器处理重定位信息及多层次数据段;S104、加载器内存加载;S105、程序运行时读取内部寄存器。本发明在编译链接阶段识别和处理多层次存储关键字,程序加载阶段识别和处理多层次存储数据段,程序运行时充分利用CPU提供的内部寄存器获取本线程多层次存储数据段基址,提高了访存效率和灵活性。
-
公开(公告)号:CN102541611B
公开(公告)日:2014-09-03
申请号:CN201010597808.4
申请日:2010-12-21
Applicant: 无锡江南计算技术研究所
IPC: G06F9/45
CPC classification number: Y02D10/41
Abstract: 一种指令翻译装置和方法、指令处理装置和处理器,所述指令处理装置包括,拆分单元,将逻辑运算指令拆分为多条单逻辑运算指令;转换单元,将所述单逻辑运算指令转换成具有预定格式的中间指令,所述预定格式包含逻辑值、源操作数和目标操作数;合并单元,合并预定指令及其定值点指令生成具有所述预定格式的合并指令;所述预定指令是指源操作数具有定值点指令的中间指令,所述预定指令的定值点指令是指对该预定指令的源操作数进行赋值的中间指令;所述合并指令的逻辑值通过数组索引所述预定指令及其定值点指令的逻辑值生成。本发明的指令翻译装置和方法、指令处理装置和处理器,提高了处理器处理逻辑运算的效率,降低了处理器的功耗。
-
公开(公告)号:CN112558977B
公开(公告)日:2022-11-15
申请号:CN201910910502.0
申请日:2019-09-25
Applicant: 无锡江南计算技术研究所
IPC: G06F8/41
Abstract: 本发明公开一种面向异构众核后端基于代价模型的多面体优化方法,包括以下步骤:S1、编译器解析位于主核和从核上的用户程序的编译标识,生成对应的主核中间表示和从核中间表示;S2、编译器对S1中生成的主核和从核的中间表示层代码进行分析和优化;S3、对是否实施多面体调度与优化方法进行收益评估;S4、对有收益的静态控制单元实施多面体调度与优化,生成新的中间表示;S5、编译器将新的向量中间表示生成可重定向文件;S6、将中的可重定向文件与库文件链接,生成可执行文件。本发明首次提出并实现了片上异构众核的程序多面体优化自动变换方法,并加入了主核和从核独立的代价模型计算框架,保证了在有收益的前提下进行程序变换以节省程序的编译时间。
-
公开(公告)号:CN112445520B
公开(公告)日:2022-11-15
申请号:CN201910794939.2
申请日:2019-08-27
Applicant: 无锡江南计算技术研究所
Abstract: 本发明公开一种针对循环内条件转移指令的转移预测优化方法,包括以下步骤:S11、判断一次循环内的指令条数是否能够满足带条件标记的运算指令在带条件转移标志位的条件转移指令之前至少提前N条的条件;S12、如果满足条件,编译器直接生成汇编代码,如果不满足,编译器根据循环体代码量与条件N计算需要循环展开的次数,进行循环展开,生成汇编代码;S13、带条件标记的运算指令提前改变条件转移指令的转移标志位;S14、条件转移指令根据对应的条件标记位进行判断,如果成立,则处理器根据条件转移标记指示跳转取指,否则顺序取指;S15、不论预测为跳转还是不跳转,条件标记位使用后即作废,转移指令条件标记位清0。本发明能够规避循环最后一次转移带来的性能损失。
-
公开(公告)号:CN109240702B
公开(公告)日:2022-06-14
申请号:CN201810929684.1
申请日:2018-08-15
Applicant: 无锡江南计算技术研究所
IPC: G06F8/41
Abstract: 本发明公开一种多线程模式下的快速段式编址配置和访问方法,包括如下步骤:S101、用户程序中使用存储层次关键字;S102、编译器识别并处理用户程序中的关键字;S103、链接器处理重定位信息及多层次数据段;S104、加载器内存加载;S105、程序运行时读取内部寄存器。本发明在编译链接阶段识别和处理多层次存储关键字,程序加载阶段识别和处理多层次存储数据段,程序运行时充分利用CPU提供的内部寄存器获取本线程多层次存储数据段基址,提高了访存效率和灵活性。
-
-
-
-
-
-
-
-
-