【技术实现步骤摘要】
本专利技术属于程序移植和自动优化领域,具体涉及一种跨硬件的算子并发调度方法及系统。
技术介绍
1、目前计算机指令集发展呈现多样化格局,国外的包括intel和amd的x86架构和x64架构、arm公司的arm(advanced risc machines)架构以及ibm基于risc(reducedinstruction set computer)指令集的power架构等;我国国产芯片也发展迅速,研发出如龙芯系列处理器(基于risc授权的核心技术自主产权)、神威系列(基于dec的alpha架构发展而来的自主产权神威架构)以及飞腾处理器(arm架构国产化且具有自主产权)等自主知识产权产品。除了cpu外,科学计算和高性能计算领域还广泛应用gpu和fpga(fieldprogrammable gate array)板等计算平台。每种计算平台都有其独特的程序设计语言,如nvidia公司的gpu使用cuda,amd公司的gpu现采用rocm平台,而不同的fpga产品也拥有各自专属的编程语言与环境。这些多样化的编程环境无疑增加了科学计算人员在编程和优化
本文档来自技高网...【技术保护点】
1.一种跨硬件的算子并发调度方法,其步骤包括:
2.根据权利要求1所述的方法,其特征在于,采用环形链表、环形队列或状态机模型存储各所述算子对应的节点。
3.根据权利要求2所述的方法,其特征在于,所述调度器根据节点中算子的本身状态、输入对象状态、输出对象状态确定对应的节点是否可被执行;当算子的本身和输入对象可读、输出对象可写时,或者该算子的数据对象处于被写了一部分时,该算子对应的节点为可被执行的节点。
4.根据权利要求1所述的方法,其特征在于,所述对象的状态包括:待分配、待建构、待析构、待读取、读取中、待写入、写入中、已打包。
...【技术特征摘要】
1.一种跨硬件的算子并发调度方法,其步骤包括:
2.根据权利要求1所述的方法,其特征在于,采用环形链表、环形队列或状态机模型存储各所述算子对应的节点。
3.根据权利要求2所述的方法,其特征在于,所述调度器根据节点中算子的本身状态、输入对象状态、输出对象状态确定对应的节点是否可被执行;当算子的本身和输入对象可读、输出对象可写时,或者该算子的数据对象处于被写了一部分时,该算子对应的节点为可被执行的节点。
4.根据权利要求1所述的方法,其特征在于,所述对象的状态包括:待分配、待建构、待析构、待读取、读取中、待写入、写入中、已打包。
5.根据权利要求1所述的方法,其特征在于,所述硬件驱动为与硬件无关的抽象接口。
6.根据权利要求1所述的方法,其特征在于,步骤1)中,利用脚本语言描述所述算子及有向有环图;其中,利用脚本语言指定算子的调用、输入输出数据、数据类型和属性;其中,通过“<”和“[]”指定算子的输入输出数据,“<”表示有向有环图中的一条有向边,数据包含在“[]”中以空格作为分隔,使用变量名或变量类型指定数据变量;变量的类型使用load_type原语和变量类型的文件路径调用,调用算子时,通过有向有环图脚本的上下文和算子脚本进行数据类型匹配检查;使用“=”表示相等的关系,“=”左右两侧的数据是等价的,具...
【专利技术属性】
技术研发人员:宫明,韩斌,陈莹,刘朝峰,栾钟治,徐顺,张克龙,
申请(专利权)人:中国科学院高能物理研究所,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。