-
公开(公告)号:CN117075868A
公开(公告)日:2023-11-17
申请号:CN202311050170.6
申请日:2023-08-21
Applicant: 中国科学院计算技术研究所
IPC: G06F8/30 , G06F8/75 , G06F16/901 , G06F16/903 , G06N3/045 , G06N3/0475 , G06N3/08
Abstract: 本发明提供一种用于编译器后端生成的神经网络模型的训练方法,包括:对于不同目标架构的函数,将同组函数对应的抽象语法树进行匹配,得到各个函数中的语句所对应的语句模板,以及特定于目标架构的信息的位置;分析语句模板和特定于目标架构的信息,形成目标相关索引表,以保存特征至特征值定义位置的映射关系;根据所述每一个语句模板,查找所述目标相关索引表,在不同目标架构的目标描述文件中提取所述语句模板的特征值以生成所述不同目标架构下与所述语句模板对应的特征序列。本发明能够解决编译器后端开发慢和难的问题,节约时间与人工成本,改变了传统编译器后端手工移植方式,极大地提高了编译器开发效率。
-
公开(公告)号:CN114237573A
公开(公告)日:2022-03-25
申请号:CN202111563671.5
申请日:2021-12-20
Applicant: 中国科学院计算技术研究所
IPC: G06F8/30 , G06F8/33 , G06F40/186
Abstract: 本发明提供一种编译器后端代码自动构建方法,所述方法包括:S1、获取与目标平台同一框架下的已有样本平台的后端描述文件,构建其基于定义‑引用关系的标识符引用关系图;S2、基于标识符引用关系图,对标识符分类,其中,标识符被分为语言特定类型、平台特性信息类型、开发者定义类型;S3、将每条指令中不同类型的标识符转换为对应的敏捷标识符,并基于标识符引用关系图生成每条指令对应的以敏捷标识符表示的代码布局模板,所述代码布局模板中包含有平台特性信息的标识符定位;S4、基于代码布局模板生成目标平台的指令模块,按照定位将目标平台编码指令中的平台特性信息属性值填入指令模板中以生成当前目标平台编码指令对应的编译器后端代码。
-
公开(公告)号:CN114237573B
公开(公告)日:2024-09-17
申请号:CN202111563671.5
申请日:2021-12-20
Applicant: 中国科学院计算技术研究所
IPC: G06F8/30 , G06F8/33 , G06F40/186
Abstract: 本发明提供一种编译器后端代码自动构建方法,所述方法包括:S1、获取与目标平台同一框架下的已有样本平台的后端描述文件,构建其基于定义‑引用关系的标识符引用关系图;S2、基于标识符引用关系图,对标识符分类,其中,标识符被分为语言特定类型、平台特性信息类型、开发者定义类型;S3、将每条指令中不同类型的标识符转换为对应的敏捷标识符,并基于标识符引用关系图生成每条指令对应的以敏捷标识符表示的代码布局模板,所述代码布局模板中包含有平台特性信息的标识符定位;S4、基于代码布局模板生成目标平台的指令模块,按照定位将目标平台编码指令中的平台特性信息属性值填入指令模板中以生成当前目标平台编码指令对应的编译器后端代码。
-
公开(公告)号:CN118312154A
公开(公告)日:2024-07-09
申请号:CN202410518261.6
申请日:2024-04-28
Applicant: 中国科学院计算技术研究所
Abstract: 本发明提出一种编译器生成方法、编译器、存储介质,该方法包含:收集待优化的用户应用程序;将该用户应用程序转换为目标机器无关的中间表示,将该目标机器无关的中间表示划分为多个微调区域;针对每一微调区域构建一优化确定型系统,该优化确定型系统使用程序图来描述该微调区域的优化过程;利用该优化确定型系统对大语言模型微调进行至少一次调优;基于调优后的大语言模型,生成一峰值性能可执行文件。该方法大大降低了高性能编译器开发的人工及时间成本,提高研发效率。
-
公开(公告)号:CN118312153A
公开(公告)日:2024-07-09
申请号:CN202410518260.1
申请日:2024-04-28
Applicant: 中国科学院计算技术研究所
Abstract: 本发明提出一种编译器后端代码生成方法、装置、存储介质,该方法其包括:将目标架构指令集手册构建为目标架构知识库;收集编译器已有后端代码并进行预处理;将预处理后的编译器已有后端代码分离为目标平台特性相关的目标相关代码、以及与目标平台特性无关的目标无关代码;将所述目标相关代码、所述目标无关代码分别与所述目标架构知识库结合,构建目标相关信息提取提示与代码生成提示;基于所述目标相关信息提取提示与所述代码生成提示,自动生成新目标平台的编译器后端代码。该方法提高了编译器后端的开发效率。
-
-
-
-