-
公开(公告)号:CN114661460B
公开(公告)日:2025-05-20
申请号:CN202210136541.1
申请日:2022-02-15
Applicant: 无锡江南计算技术研究所
Abstract: 本发明公开一种面向异构众核处理器的AI框架两级并行加速方法,包括以下步骤:AI框架调用模型优化模块优化深度学习模型或者预训练好的模型,将其组织成更具可并行性的树形计算图;AI框架将优化后的树形计算图转换成由计算任务组成的线程池;线程管理模块根据相关性将线程池组织成不同的线程队列;线程管理模块监测各个核组的状态,如果发现某个核组处于空闲状态,则将某队列的计算任务调度到该核组上执行;当整个运行任务完成后,线程管理模块和核组管理模块均中止运行,等到下一次运行任务开始后。本发明可以充分利用异构众核的多级存储资源和计算能力,实现自动化的AI框架两级并行加速,显著提升AI框架在异构众核上的好用性和高性能。
-
公开(公告)号:CN114564150B
公开(公告)日:2024-03-22
申请号:CN202210185703.0
申请日:2022-02-28
Applicant: 无锡江南计算技术研究所
IPC: G06F3/06
Abstract: 本发明公开一种动态链接模式片上存储器空间分配方法,包括以下步骤:在程序源文件中为需要优化的数据添加动态链接模式局部存储器数据关键字__ldm;编译器判断该局部存储器变量是否位于动态库中;对于动态库中的局部存储器变量,在链接脚本中为其设置单独的PT_LOAD段;对于动态库中的局部存储器变量,在动态链接器中修正局部存储器数据地址。本发明能够有效避免动态库中LDM变量地址相互冲突的问题,显著提升了异构众核AI处理器的好用性。
-
公开(公告)号:CN114217941A
公开(公告)日:2022-03-22
申请号:CN202110381665.1
申请日:2021-04-09
Applicant: 无锡江南计算技术研究所
Abstract: 本发明公开一种面向国产异构众核处理器的TensorFlow框架核心计算加速引擎,独立设置于TensorFlow框架与多个众核计算加速库之间,包括以下功能模块:算子接口模块,用于将运行流程转入核心计算加速引擎;分析调度模块,用于分析算子类型和算子参数特性,将算子参数封装为各个众核计算加速库的参数结构,并根据算子类型调用不同的众核计算加速库,当同种算子类型有多种算子实现时,根据算子参数特点自动选择最优的实现方式并进行调用;调试模块,用于记录各个算子的运行时间,从算子层面分析模型推理或训练过程的性能表现。本发明可充分发挥国产异构众核强大的强大计算能力,提供自动化的深度学习任务核心加速能力。
-
公开(公告)号:CN112540764A
公开(公告)日:2021-03-23
申请号:CN201910897632.5
申请日:2019-09-23
Applicant: 无锡江南计算技术研究所
Abstract: 本发明公开一种条件转移预测方向变换的编译优化方法,当发现因为频繁的分支预测失败带来了严重的性能损失时,执行以下步骤:S1、对源程序重新进行编译,并在编译时添加转移预测方向变换的编译优化选项;S2、对源程序进行控制流分析,并将源程序划分为若干个基本块,同时识别出包含在源程序的最内层循环的条件分支语句,并将其划分为几个独立的基本块,将第一个基本块打上分支预测失败的特殊属性;S3、在具有分支预测失败特殊属性的基本块的起始位置插入一条转移预测器方向切换指令;S4、编译器继续进行剩余的编译过程,产生目标代码。本发明可以避免嵌汇编方式带来的性能损失和潜在的错误问题,还可以提高条件转移预测准确率,达到降低性能损失的目的。
-
公开(公告)号:CN114217770B
公开(公告)日:2025-05-16
申请号:CN202110325186.8
申请日:2021-03-26
Applicant: 无锡江南计算技术研究所
Abstract: 本发明公开一种基于异构众核架构的C++融合编程方法,包括以下步骤:S1、主核以头文件“athreadcxx.h”的形式提供athreadcxx类的对象;S2、athreadcxx类的对象通过构造函数进行从核资源的初始化,通过析构函数进行从核资源的回收;S3、编译器通过选项‑mhost将使用athreadcxx类的对象编程的主核程序进行编译;S4、从核以头文件“slavecxx.h”的形式提供线程私有全局变量PEN、COL和ROW,用于保存当前从核的编号和行列信息。本发明解决了不同架构的指令集混合链接符号多重定义问题、从核间的全局变量访存问题。
-
公开(公告)号:CN114217807A
公开(公告)日:2022-03-22
申请号:CN202110381660.9
申请日:2021-04-09
Applicant: 无锡江南计算技术研究所
Abstract: 本发明公开一种基于异构众核架构的直接内存访问编译优化方法,包括以下步骤:S1、通过调度原语cache_read,将张量数据由主存搬移到局存;S2、通过调度原语pragma,将S11中的数据搬移操作改写为DMA GET操作;S3、通过调度原语double_buffer,将S2中的DMA GET操作优化为双缓冲模式;S4、通过调度原语pragma,在局存副本AA使用位置前插入回答字判断操作;S5、通过调度原语cache_write,将结果张量B的局存副本BB由局存搬移至主存。本发明充分利用硬件资源,最大程度实现算子的计算访存操作的重叠,从而提升深度学习负载在异构众核平台上的性能。
-
公开(公告)号:CN114661460A
公开(公告)日:2022-06-24
申请号:CN202210136541.1
申请日:2022-02-15
Applicant: 无锡江南计算技术研究所
Abstract: 本发明公开一种面向异构众核处理器的AI框架两级并行加速方法,包括以下步骤:AI框架调用模型优化模块优化深度学习模型或者预训练好的模型,将其组织成更具可并行性的树形计算图;AI框架将优化后的树形计算图转换成由计算任务组成的线程池;线程管理模块根据相关性将线程池组织成不同的线程队列;线程管理模块监测各个核组的状态,如果发现某个核组处于空闲状态,则将某队列的计算任务调度到该核组上执行;当整个运行任务完成后,线程管理模块和核组管理模块均中止运行,等到下一次运行任务开始后。本发明可以充分利用异构众核的多级存储资源和计算能力,实现自动化的AI框架两级并行加速,显著提升AI框架在异构众核上的好用性和高性能。
-
公开(公告)号:CN114564150A
公开(公告)日:2022-05-31
申请号:CN202210185703.0
申请日:2022-02-28
Applicant: 无锡江南计算技术研究所
IPC: G06F3/06
Abstract: 本发明公开一种动态链接模式片上存储器空间分配方法,包括以下步骤:在程序源文件中为需要优化的数据添加动态链接模式局部存储器数据关键字__ldm;编译器判断该局部存储器变量是否位于动态库中;对于动态库中的局部存储器变量,在链接脚本中为其设置单独的PT_LOAD段;对于动态库中的局部存储器变量,在动态链接器中修正局部存储器数据地址。本发明能够有效避免动态库中LDM变量地址相互冲突的问题,显著提升了异构众核AI处理器的好用性。
-
公开(公告)号:CN114217807B
公开(公告)日:2024-04-30
申请号:CN202110381660.9
申请日:2021-04-09
Applicant: 无锡江南计算技术研究所
Abstract: 本发明公开一种基于异构众核架构的直接内存访问编译优化方法,包括以下步骤:S1、通过调度原语cache_read,将张量数据由主存搬移到局存;S2、通过调度原语pragma,将S11中的数据搬移操作改写为DMA GET操作;S3、通过调度原语double_buffer,将S2中的DMA GET操作优化为双缓冲模式;S4、通过调度原语pragma,在局存副本AA使用位置前插入回答字判断操作;S5、通过调度原语cache_write,将结果张量B的局存副本BB由局存搬移至主存。本发明充分利用硬件资源,最大程度实现算子的计算访存操作的重叠,从而提升深度学习负载在异构众核平台上的性能。
-
公开(公告)号:CN114253545A
公开(公告)日:2022-03-29
申请号:CN202110381428.5
申请日:2021-04-09
Applicant: 无锡江南计算技术研究所
Abstract: 本发明公开一种基于编译的神经网络异构众核多层次资源映射方法,包括以下步骤:S1、进行众核核组资源映射;S2、进行从核线程资源映射;S3、进行向量部件资源映射。本发明可充分挖掘神经网络算子并行潜力,发挥片上多级并行优势,从而提升深度学习负载在异构众核平台上的性能。
-
-
-
-
-
-
-
-
-