【技术实现步骤摘要】
【国外来华专利技术】为编译器提供多面体调度器的数据处理装置和方法
[0001]本专利技术涉及数据处理
。
更具体地,本专利技术涉及一种为编译器实现多面体调度器的数据处理装置和方法
。
技术介绍
[0002]在大数据的可用性
、
强大的处理能力和便捷的高级抽象的支持下,深度学习
(Deep Learning
,
DL)
的发展速度非常快
。
为了高效地开发和优化
DL
算法,编译器需要支持快速的高级原型设计和高效的低级并行代码生成
。
在编译器中,调度用于负责各种各样的关键优化动作和决策,即处理可能相互冲突的调度约束,例如,并行性提取
(
即定位并行块和循环,包括外部并行循环和
/
或内部并行循环
)
,置换性提取
(
即定位可以划分成较小块的循环,即“平铺”变换
)、
融合和
/
或分裂
(
即将计算组合在一起或不组合在一起
)、
数据局部性优化
(
即执行重用相互更靠近的相同数据的计算
)
,并且强制执行特定的数据访问模式
。
根据输入问题和目标架构,一些调度约束通常可能会比其它约束更关键
。
[0003]十多年前,多面体调度器是为了解决多核
CPU
架构的线性代数和科学计算内核而开发的
。
随着 ...
【技术保护点】
【技术特征摘要】
【国外来华专利技术】1.
一种数据处理装置
(020)
,其特征在于,所述数据处理装置
(020)
包括处理电路
(021)
,所述处理电路
(021)
用于实现:调度约束注入实体
(011)
,用于根据一个或多个调度约束
(001)
,适配输入代码的多面体中间表示
(000)
,以获取所述输入代码的适配的多面体中间表示;多面体调度器
(012)
,用于根据所述输入代码的所述适配的多面体中间表示,生成所述输入代码的已调度多面体中间表示
(010)
,其中,所述调度约束注入实体
(011)
还用于根据所述一个或多个调度约束
(001)
,调整所述多面体调度器
(012)。2.
根据权利要求1所述的数据处理装置
(020)
,其特征在于,所述调度约束注入实体
(011)
用于根据所述一个或多个调度约束
(001)
和所述输入代码的所述多面体中间表示
(000)
,调整所述多面体调度器
(012)。3.
根据上述权利要求中任一项所述的数据处理装置
(020)
,其特征在于,所述处理电路
(021)
还用于根据所述输入代码的所述已调度多面体中间表示
(010)
,将所述输入代码处理成可执行输出代码
。4.
根据上述权利要求中任一项所述的数据处理装置
(020)
,其特征在于,所述数据处理装置
(020)
还包括通信接口
(022)
和
/
或用户接口,所述通信接口
(022)
和
/
或用户接口用于接收所述一个或多个调度约束
(001)
,并且将所述一个或多个调度约束
(001)
提供给所述调度约束注入实体
(011)。5.
根据上述权利要求中任一项所述的数据处理装置
(020)
,其特征在于,所述一个或多个调度约束
(001)
由一个或多个文本文件
、
二进制文件和
/
或编码文件限定
。6.
根据上述权利要求中任一项所述的数据处理装置
(020)
,其特征在于,所述调度约束注入实体
(011)
包括约束分配器
(002)
,所述约束分配器
(002)
用于从所述一个或多个调度约束
(001)
中的每个调度约束中提取域信息部分和优先调度信息部分
。7.
根据上述权利要求中任一项所述的数据处理装置
(020)
,其特征在于,所述调度约束注入实体
(011)
还包括数据依赖分析单元
(003)
,所述数据依赖分析单元
(003)
用于根据所述一个或多个调度约束
(001)
,适配所述输入代码的所述多面体中间表示
(000)
,以获取所述输入代码的所述适配的多面体中间表示
。8.
根据权利要求7所述的数据处理装置
(020)
,其特征在于,所述数据依赖分析单元
(003)
还用于在所述输入代码的所述多面体中间表示
(000)
内定位受数据依赖关系影响的一个或多个迭代对,并且根据所述一个或多个调度约束
(001)
,生成所述一个或多个迭代对的一个或多个仿射集合
。9.
根据权利要求8所述的数据处理装置
(020)
,其特征在于,所述调度约束注入实体
(011)
还包括有效性约束构建器
(004)
,所述有效性约束构建器
(004)
用于根据所述一个或多个迭代对的所述一个或多个仿射集合,为与所述输入代码的所述已调度多面体中间表示
(010)
相关联的一个或多个调度系数生成一个或多个仿射约束,并且根据所述一个或多个仿射约束,调整所述多面体调度器
(012)。10.
根据权利要求8或9所述的数据处理装置
(020)
,其特征在于,所述调度约束注入实体
(011)
还包括内置优化约束实体
(005)
,所述内置优化约束实体
(005)
用于根据所述一个或多个迭代对的所述一个或多个仿射集合,生成一个或多个成本函数,并且将所述一个或
多个成本函数提供给所述多面体调度器
(012)
,以根据所述一个或多个成本函数调整所述多面体调度...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。