CN114138274A - 一种深度学习编译器的高层中间表示转换方法及相关装置 - Google Patents
一种深度学习编译器的高层中间表示转换方法及相关装置 Download PDFInfo
- Publication number
- CN114138274A CN114138274A CN202111338661.1A CN202111338661A CN114138274A CN 114138274 A CN114138274 A CN 114138274A CN 202111338661 A CN202111338661 A CN 202111338661A CN 114138274 A CN114138274 A CN 114138274A
- Authority
- CN
- China
- Prior art keywords
- operator
- deep learning
- intermediate representation
- library
- operations
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000013135 deep learning Methods 0.000 title claims abstract description 108
- 238000006243 chemical reaction Methods 0.000 title claims abstract description 50
- 238000000034 method Methods 0.000 title claims abstract description 39
- 238000012545 processing Methods 0.000 claims abstract description 24
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 12
- 238000005457 optimization Methods 0.000 claims description 14
- 238000004590 computer program Methods 0.000 claims description 11
- 238000012549 training Methods 0.000 claims description 10
- 230000006870 function Effects 0.000 claims description 8
- 238000004458 analytical method Methods 0.000 claims description 6
- 238000004891 communication Methods 0.000 claims description 5
- 230000004927 fusion Effects 0.000 claims description 5
- 238000013139 quantization Methods 0.000 claims description 5
- 238000012827 research and development Methods 0.000 abstract description 7
- 230000006978 adaptation Effects 0.000 abstract description 2
- 230000009286 beneficial effect Effects 0.000 abstract 1
- 239000011159 matrix material Substances 0.000 description 6
- 238000013461 design Methods 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Stored Programmes (AREA)
Abstract
本申请公开了一种深度学习编译器的高层中间表示转换方法,包括:基于算子操作的功能信息对多个深度学习框架的算子操作进行分类,得到多个算子操作类别;对所述多个算子操作类别添加反向算子操作类别,得到初始算子库;对所述初始算子库中的每个算子操作进行属性定义处理,得到目标算子库;基于所述目标算子库对深度学习算法模型进行中间表示转换,得到高层中间表示。实现了将多个深度学习框架的算子操作统一至统一的算子库中,提高了对深度学习框架进行支持的适配度,提高了研发效率。本申请还公开了一种深度学习编译器的高层中间表示转换装置、服务器以及计算机可读存储介质,具有以上有益效果。
Description
技术领域
本申请涉及深度学习技术领域,特别涉及一种深度学习编译器的高层中间表示转换方法、高层中间表示转换装置、服务器以及计算机可读存储介质。
背景技术
目前深度学习编译器的通用设计架构主要包括编译前端和编译后端,深度学习AI算法模型在深度学习编译器中被转换为多级IR(Intermediate Representation,中间表示),其中高层IR在编译器前端,低层IR在编译器后端。编译前端主要负责与硬件无关的处理,前端转换层会首先将不同框架的输入转换至使用高层中间表示的统一格式(High-Level IR,高层中间表示),并对其进行硬件无关的优化,再将其送给后端。编译后端也拥有自己的中间表示,称为低层中间表示,主要工作是将优化后的高层中间表示转化为低层中间表示,然后针对于输出硬件进行一些特定的优化,并编译到对应的硬件指令,最后调用各硬件设备执行计算。
相关技术中,目前各深度学习框架都是独立开发自己的算子库,每种框架里面算子的分类情况是不相同的,包括类别名称和类别数量,而且对于一个算子,它在不同的框架里所处的类别也不尽相同,同样的算子名称代表的计算方式也不一样。以matmul为例,在TensorFlow里面这是一个math_OP,里面涉及的就是矩阵乘法运算;但是在其他里面,这是个融合OP(Operator,算子操作),可以根据矩阵维度解析为dot、矩阵乘等运算。但是在使用不同的深度学习框架进行开发时,就需要重新研究新的框架算子定义及其含义,降低了研发效率。
因此,如何提高深度学习编译器对不同深度学习框架的支持性,提高进行编译的效果是本领域技术人员关注的重点问题。
发明内容
本申请的目的是提供一种深度学习编译器的高层中间表示转换方法、高层中间表示转换装置、服务器以及计算机可读存储介质,以提高高层中间表示转换的效率和效果。
为解决上述技术问题,本申请提供一种深度学习编译器的高层中间表示转换方法,包括:
基于算子操作的功能信息对多个深度学习框架的算子操作进行分类,得到多个算子操作类别;
对所述多个算子操作类别添加反向算子操作类别,得到初始算子库;
对所述初始算子库中的每个算子操作进行属性定义处理,得到目标算子库;
基于所述目标算子库对深度学习算法模型进行中间表示转换,得到高层中间表示。
可选的,基于算子操作的功能信息对多个深度学习框架的算子操作进行分类,得到多个算子操作类别,包括:
从预设路径获取所述多个深度学习框架;
对所述多个深度学习框架进行算子操作分析,得到每个深度学习框架对应的算子操作;
基于每个算子操作的功能信息将所有所述算子操作进行分类,得到所述多个算子操作类别。
可选的,基于每个算子操作的功能信息将所有所述算子操作进行分类,得到所述多个算子操作类别,包括:
基于按元素算术张量运算、通用张量比较操作、张量逻辑运算、常规张量算术运算、张量数据移动操作、特定类型融合操作、传统深度学习层、分布式通信操作、量化操作、数据流控制操作以及用户自定义操作将所有所述算子操作进行分类,得到所述多个算子操作类别。
可选的,对所述多个算子操作类别添加反向算子操作类别,得到初始算子库,包括:
对深度学习训练任务进行分析,得到多个反向算子操作;
将所述多个反向算子操作作为所述反向算子操作类别;
对所述多个算子操作类别添加所述反向算子操作类别,得到初始算子库。
可选的,对所述初始算子库中的每个算子操作进行属性定义处理,得到目标算子库,包括:
对所述初始算子库中同一个算子操作进行接口定义、参数列表设置以及功能实现配置,得到所述目标算子库。
可选的,还包括:
基于所述高层中间表示进行图优化处理,得到图优化结果。
可选的,还包括:
基于所述图优化结果进行编译后端处理,得到编译结果。
本申请还提供一种深度学习编译器的高层中间表示转换装置,包括:
算子操作分类模块,用于基于算子操作的功能信息对多个深度学习框架的算子操作进行分类,得到多个算子操作类别;
反向算子添加模块,用于对所述多个算子操作类别添加反向算子操作类别,得到初始算子库;
算子属性定义模块,用于对所述初始算子库中的每个算子操作进行属性定义处理,得到目标算子库;
模型转换模块,用于基于所述目标算子库对深度学习算法模型进行中间表示转换,得到高层中间表示。
本申请还提供一种服务器,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如以上实施例所述的高层中间表示转换方法的步骤。
本申请还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如以上实施例所述的高层中间表示转换方法的步骤。
本申请所提供的一种深度学习编译器的高层中间表示转换方法,包括:基于算子操作的功能信息对多个深度学习框架的算子操作进行分类,得到多个算子操作类别;对所述多个算子操作类别添加反向算子操作类别,得到初始算子库;对所述初始算子库中的每个算子操作进行属性定义处理,得到目标算子库;基于所述目标算子库对深度学习算法模型进行中间表示转换,得到高层中间表示。
通过对多个深度学习框架的算子操作进行分类,得到多个算子操作类别,然后再添加反向算子操作对应的算子操作类别,最后进行属性定义处理,得到最终的目标算子库,实现了将多个深度学习框架的算子操作统一至统一的算子库中,提高了对深度学习框架进行支持的适配度,提高了研发效率。
本申请还提供一种深度学习编译器的高层中间表示转换装置、服务器以及计算机可读存储介质,具有以上有益效果,在此不做具体限定。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例所提供的一种深度学习编译器的高层中间表示转换方法的流程图;
图2为本申请实施例所提供的一种深度学习编译器的高层中间表示转换装置的结构示意图。
具体实施方式
本申请的核心是提供一种深度学习编译器的高层中间表示转换方法、高层中间表示转换装置、服务器以及计算机可读存储介质,以提高高层中间表示转换的效率和效果。
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
相关技术中,目前各深度学习框架都是独立开发自己的算子库,每种框架里面算子的分类情况是不相同的,包括类别名称和类别数量,而且对于一个算子,它在不同的框架里所处的类别也不尽相同,同样的算子名称代表的计算方式也不一样。以matmul为例,在TensorFlow里面这是一个math_OP,里面涉及的就是矩阵乘法运算;但是在其他里面,这是个融合OP,可以根据矩阵维度解析为dot、矩阵乘等运算。但是,在使用不同的深度学习框架进行开发时,就需要重新研究新的框架算子定义及其含义,降低了研发效率。
因此,本申请提供一种深度学习编译器的高层中间表示转换方法,通过对多个深度学习框架的算子操作进行分类,得到多个算子操作类别,然后再添加反向算子操作对应的算子操作类别,最后进行属性定义处理,得到最终的目标算子库,实现了将多个深度学习框架的算子操作统一至统一的算子库中,提高了对深度学习框架进行支持的适配度,提高了研发效率。
以下通过一个实施例,对本申请提供的一种深度学习编译器的高层中间表示转换方法进行说明。
请参考图1,图1为本申请实施例所提供的一种深度学习编译器的高层中间表示转换方法的流程图。
本实施例中,该方法可以包括:
S101,基于算子操作的功能信息对多个深度学习框架的算子操作进行分类,得到多个算子操作类别;
可见,本步骤旨在基于算子操作的功能信息对多个深度学习框架的算子操作进行分类,得到多个算子操作类别。也就是,对现有所有的深度学习框架对应的所有的算子操作进行分析和分类,以便得到所有的深度学习框架中的算子操作。并将所有的算子操作进行分类,得到多个算子操作类别。以便基于该算子操作类别抽象出统一的一个算子操作。
进一步的,本步骤可以包括:
步骤1,从预设路径获取多个深度学习框架;
步骤2,对多个深度学习框架进行算子操作分析,得到每个深度学习框架对应的算子操作;
步骤3,基于每个算子操作的功能信息将所有算子操作进行分类,得到多个算子操作类别。
可见,本可选方案主要是说明如何将算子操作进行分类。本可选方案中,从预设路径获取多个深度学习框架,对多个深度学习框架进行算子操作分析,得到每个深度学习框架对应的算子操作,基于每个算子操作的功能信息将所有算子操作进行分类,得到多个算子操作类别。
进一步的,上一可选方案中的步骤3可以包括:
基于按元素算术张量运算、通用张量比较操作、张量逻辑运算、常规张量算术运算、张量数据移动操作、特定类型融合操作、传统深度学习层、分布式通信操作、量化操作、数据流控制操作以及用户自定义操作将所有算子操作进行分类,得到多个算子操作类别。
可见,本可选方案主要是说明如何进行分类。本可选方案中,基于按元素算术张量运算、通用张量比较操作、张量逻辑运算、常规张量算术运算、张量数据移动操作、特定类型融合操作、传统深度学习层、分布式通信操作、量化操作、数据流控制操作以及用户自定义操作将所有算子操作进行分类,得到多个算子操作类别。
S102,对多个算子操作类别添加反向算子操作类别,得到初始算子库;
在S101的基础上,本步骤旨在对多个算子操作类别添加反向算子操作类别,得到初始算子库。也就是,对得到的多个算子操作的类别中加入到反向算子操作,形成反向算子操作类别。以便实现对深度学习的训练过程进行支持,提高深度学习编译器的适用范围。
进一步的,本步骤可以包括:
步骤1,对深度学习训练任务进行分析,得到多个反向算子操作;
步骤2,将多个反向算子操作作为反向算子操作类别;
步骤3,对多个算子操作类别添加反向算子操作类别,得到初始算子库。
可见,本可选方案中主要是说明如何得到初始算子库。本可选方案中,对深度学习训练任务进行分析,得到多个反向算子操作,将多个反向算子操作作为反向算子操作类别,对多个算子操作类别添加反向算子操作类别,得到初始算子库。
S103,对初始算子库中的每个算子操作进行属性定义处理,得到目标算子库;
在S102的基础上,本步骤旨在对初始算子库中的每个算子操作进行属性定义处理,得到目标算子库。也就是,对初始算子库中的每个算子操作进行属性配置,以便可以使用该初始算子裤中的算子操作。
其中,进行属性定义处理的操作可以采用现有技术提供的任意一种属性定义操作。
进一步的,本步骤可以包括:
对初始算子库中同一个算子操作进行接口定义、参数列表设置以及功能实现配置,得到目标算子库。
可见,本可选方案中主要是说明如何进行配置。本可选方案中,对初始算子库中同一个算子操作进行接口定义、参数列表设置以及功能实现配置,得到目标算子库。
S104,基于目标算子库对深度学习算法模型进行中间表示转换,得到高层中间表示。
在S103的基础上,本步骤旨在基于目标算子库对深度学习算法模型进行中间表示转换,得到高层中间表示。
在获取到目标算子库的基础上,本步骤可以采用现有技术提供的任意一种中间表示转换操作。
此外,本实施例还可以包括:
基于高层中间表示进行图优化处理,得到图优化结果。
可见,本可选方案中说明还可以基于高层中间表示进行图优化处理,得到图优化结果。
此外,本实施例还可以包括:
基于图优化结果进行编译后端处理,得到编译结果。
可见,本可选方案中基于图优化结果进行编译后端处理,得到编译结果。
综上,本实施例通过对多个深度学习框架的算子操作进行分类,得到多个算子操作类别,然后再添加反向算子操作对应的算子操作类别,最后进行属性定义处理,得到最终的目标算子库,实现了将多个深度学习框架的算子操作统一至统一的算子库中,提高了对深度学习框架进行支持的适配度,提高了研发效率。
以下通过一个具体的实施例,对本申请提供的一种深度学习编译器的高层中间表示转换方法做进一步说明。
本实施例中,该方法可以包括:
步骤1,首先制定编译器高层中间表示算子分类,通过对现有主流深度学习框架中OP算子的支持分析和统计,设计深度学习编译器高层中间表示的算子类别,对深度学习AI训练任务中通用OP操作按照其功能进行分类,用于实现各深度学习框架中算子类别到深度学习编译器的统一映射。主要包括通用的按元素算术张量运算、通用张量比较操作、张量逻辑运算、常规张量算术运算、张量数据移动操作、特定类型融合操作、传统深度学习层、分布式通信操作、量化操作、数据流控制操作和用户自定义操作。
步骤2,其次需要新增OP定义,通过对比现有深度学习框架中支持的OP列表等主流深度学习编译器的高层中间表示算子库,提出需要在高层中间表示添加的深度学习训练任务涉及的反向OP以及数据加载相关OP的定义。
步骤3,最后OP属性定义,针对各深度学习框架中同一OP操作,接口、参数列表以及功能实现不统一的问题,对同一OP抽象出统一的算子接口设计和算子分类,包括算子类别、接口定义、参数列表以及功能实现,使得编译器能够满足不同通用深度学习框架到高层中间表示算子库映射的需求,以方便实现算子标准库到面向AI设备的底层算子库的统一调度。
完成以上开发步骤,即完成面向AI训练的深度学习编译器高层中间表示设计,对各框架中算子的不统一进行规范,降低了用户使用门槛,满足了深度学习训练应用的映射需求。
可见,本实施例通过对多个深度学习框架的算子操作进行分类,得到多个算子操作类别,然后再添加反向算子操作对应的算子操作类别,最后进行属性定义处理,得到最终的目标算子库,实现了将多个深度学习框架的算子操作统一至统一的算子库中,提高了对深度学习框架进行支持的适配度,提高了研发效率。
下面对本申请实施例提供的深度学习编译器的高层中间表示转换装置进行介绍,下文描述的深度学习编译器的高层中间表示转换装置与上文描述的深度学习编译器的高层中间表示转换方法可相互对应参照。
请参考图2,图2为本申请实施例所提供的一种深度学习编译器的高层中间表示转换装置的结构示意图。
本实施例中,该装置可以包括:
算子操作分类模块100,用于基于算子操作的功能信息对多个深度学习框架的算子操作进行分类,得到多个算子操作类别;
反向算子添加模块200,用于对多个算子操作类别添加反向算子操作类别,得到初始算子库;
算子属性定义模块300,用于对初始算子库中的每个算子操作进行属性定义处理,得到目标算子库;
模型转换模块400,用于基于目标算子库对深度学习算法模型进行中间表示转换,得到高层中间表示。
可选的,该算子操作分类模块100,具体用于从预设路径获取多个深度学习框架;对多个深度学习框架进行算子操作分析,得到每个深度学习框架对应的算子操作;基于每个算子操作的功能信息将所有算子操作进行分类,得到多个算子操作类别。
可选的,该反向算子添加模块200,具体用于对深度学习训练任务进行分析,得到多个反向算子操作;将多个反向算子操作作为反向算子操作类别;对多个算子操作类别添加反向算子操作类别,得到初始算子库。
可选的,该算子属性定义模块300,具体用于对初始算子库中同一个算子操作进行接口定义、参数列表设置以及功能实现配置,得到目标算子库。
本申请实施例还提供一种服务器,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如以上实施例所述的高层中间表示转换方法的步骤。
本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如以上实施例所述的高层中间表示转换方法的步骤。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上对本申请所提供的一种深度学习编译器的高层中间表示转换方法、高层中间表示转换装置、服务器以及计算机可读存储介质进行了详细介绍。本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
Claims (10)
1.一种深度学习编译器的高层中间表示转换方法,其特征在于,包括:
基于算子操作的功能信息对多个深度学习框架的算子操作进行分类,得到多个算子操作类别;
对所述多个算子操作类别添加反向算子操作类别,得到初始算子库;
对所述初始算子库中的每个算子操作进行属性定义处理,得到目标算子库;
基于所述目标算子库对深度学习算法模型进行中间表示转换,得到高层中间表示。
2.根据权利要求1所述的高层中间表示转换方法,其特征在于,基于算子操作的功能信息对多个深度学习框架的算子操作进行分类,得到多个算子操作类别,包括:
从预设路径获取所述多个深度学习框架;
对所述多个深度学习框架进行算子操作分析,得到每个深度学习框架对应的算子操作;
基于每个算子操作的功能信息将所有所述算子操作进行分类,得到所述多个算子操作类别。
3.根据权利要求2所述的高层中间表示转换方法,其特征在于,基于每个算子操作的功能信息将所有所述算子操作进行分类,得到所述多个算子操作类别,包括:
基于按元素算术张量运算、通用张量比较操作、张量逻辑运算、常规张量算术运算、张量数据移动操作、特定类型融合操作、传统深度学习层、分布式通信操作、量化操作、数据流控制操作以及用户自定义操作将所有所述算子操作进行分类,得到所述多个算子操作类别。
4.根据权利要求1所述的高层中间表示转换方法,其特征在于,对所述多个算子操作类别添加反向算子操作类别,得到初始算子库,包括:
对深度学习训练任务进行分析,得到多个反向算子操作;
将所述多个反向算子操作作为所述反向算子操作类别;
对所述多个算子操作类别添加所述反向算子操作类别,得到初始算子库。
5.根据权利要求1所述的高层中间表示转换方法,其特征在于,对所述初始算子库中的每个算子操作进行属性定义处理,得到目标算子库,包括:
对所述初始算子库中同一个算子操作进行接口定义、参数列表设置以及功能实现配置,得到所述目标算子库。
6.根据权利要求1所述的高层中间表示转换方法,其特征在于,还包括:
基于所述高层中间表示进行图优化处理,得到图优化结果。
7.根据权利要求6所述的高层中间表示转换方法,其特征在于,还包括:
基于所述图优化结果进行编译后端处理,得到编译结果。
8.一种深度学习编译器的高层中间表示转换装置,其特征在于,包括:
算子操作分类模块,用于基于算子操作的功能信息对多个深度学习框架的算子操作进行分类,得到多个算子操作类别;
反向算子添加模块,用于对所述多个算子操作类别添加反向算子操作类别,得到初始算子库;
算子属性定义模块,用于对所述初始算子库中的每个算子操作进行属性定义处理,得到目标算子库;
模型转换模块,用于基于所述目标算子库对深度学习算法模型进行中间表示转换,得到高层中间表示。
9.一种服务器,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至7任一项所述的高层中间表示转换方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的高层中间表示转换方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111338661.1A CN114138274A (zh) | 2021-11-12 | 2021-11-12 | 一种深度学习编译器的高层中间表示转换方法及相关装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111338661.1A CN114138274A (zh) | 2021-11-12 | 2021-11-12 | 一种深度学习编译器的高层中间表示转换方法及相关装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114138274A true CN114138274A (zh) | 2022-03-04 |
Family
ID=80393907
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111338661.1A Pending CN114138274A (zh) | 2021-11-12 | 2021-11-12 | 一种深度学习编译器的高层中间表示转换方法及相关装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114138274A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114661301A (zh) * | 2022-05-24 | 2022-06-24 | 深圳思谋信息科技有限公司 | 图形处理单元编译方法、装置、编译加速库和存储介质 |
CN115423089A (zh) * | 2022-08-19 | 2022-12-02 | 贝式计算(天津)信息技术有限公司 | 基于张量数据计算推理的编译器优化方法、装置及设备 |
CN116301904A (zh) * | 2023-05-18 | 2023-06-23 | 之江实验室 | 一种用于深度学习编译器的算子优化加速方法及装置 |
-
2021
- 2021-11-12 CN CN202111338661.1A patent/CN114138274A/zh active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114661301A (zh) * | 2022-05-24 | 2022-06-24 | 深圳思谋信息科技有限公司 | 图形处理单元编译方法、装置、编译加速库和存储介质 |
CN114661301B (zh) * | 2022-05-24 | 2022-09-06 | 深圳思谋信息科技有限公司 | 图形处理单元编译方法、装置、编译加速库和存储介质 |
CN115423089A (zh) * | 2022-08-19 | 2022-12-02 | 贝式计算(天津)信息技术有限公司 | 基于张量数据计算推理的编译器优化方法、装置及设备 |
CN116301904A (zh) * | 2023-05-18 | 2023-06-23 | 之江实验室 | 一种用于深度学习编译器的算子优化加速方法及装置 |
CN116301904B (zh) * | 2023-05-18 | 2023-08-22 | 之江实验室 | 一种用于深度学习编译器的算子优化加速方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3631618B1 (en) | Automated dependency analyzer for heterogeneously programmed data processing system | |
CN114138274A (zh) | 一种深度学习编译器的高层中间表示转换方法及相关装置 | |
US9946514B1 (en) | Systems and methods for generating functional application designs | |
US9811325B2 (en) | Systems and methods for dynamically replacing code objects for code pushdown | |
CN110941467A (zh) | 数据处理方法、装置及系统 | |
CN113641701B (zh) | 一种数据查询方法、系统、异构加速平台及存储介质 | |
CN112988130A (zh) | 一种基于大数据的可视化建模方法、装置、设备及介质 | |
US11593342B2 (en) | Systems and methods for database orientation transformation | |
CN112163420A (zh) | 一种基于nlp技术的rpa流程自动生成方法 | |
CN112199086A (zh) | 自动编程控制系统、方法、装置、电子设备及存储介质 | |
CN110941427B (zh) | 代码生成方法及代码生成器 | |
CN110750298B (zh) | 一种ai模型编译方法、设备及存储介质 | |
Teran-Somohano et al. | A model-driven engineering approach to simulation experiment design and execution | |
CN113379070A (zh) | 一种深度学习框架转换方法、系统、存储介质及设备 | |
CN114201144A (zh) | 基于领域驱动设计的微服务系统构建方法、设备及介质 | |
CN114546365B (zh) | 一种流程可视化的建模方法、服务器、计算机系统及介质 | |
CN102779044A (zh) | 表达式的解析处理系统和解析处理方法 | |
CN117235527A (zh) | 端到端容器化的大数据模型构建方法、装置、设备及介质 | |
JP2008293186A (ja) | 鉄鋼プラント制御プログラムの自動生成方法およびその装置 | |
CN113626035B (zh) | 基于tvm面向risc-v设备的神经网络编译方法 | |
KR102533019B1 (ko) | Ai 연산 프로세서 가속 성능 평가 인터페이스 시스템 및 그 방법 | |
CN113885844A (zh) | 一种业务服务编排方法及相关装置 | |
US20240281218A1 (en) | Intelligent and predictive modules for software development and coding using artificial intelligence and machine learning | |
US20240345808A1 (en) | Intelligent and predictive modules for software development and coding using artificial intelligence and machine learning | |
Couto et al. | MapIt: A model based pattern recovery tool |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |