基于特征识别的CPU-FPGA任务调度方法及装置制造方法及图纸

技术编号:22166339 阅读:22 留言:0更新日期:2019-09-21 10:20
本发明专利技术实施例提供了一种基于特征识别的CPU‑FPGA任务调度方法及装置,其中方法包括:获取多个待处理任务及各待处理任务的数据量,提取多个待处理任务中各待处理任务的特征信息,基于各待处理任务的CPU特征信息,FPGA特征信息,以及任务自身特征信息,生成各待处理任务的特征向量,将所生成的各待处理任务的特征向量输入预先训练的分类模型中,得到各待处理任务的分类结果,根据各待处理任务的数据量之间的大小关系,对待处理任务进行排序,并将排序后的各待处理任务按照预设策略分别调度至CPU和FPGA中处理。本发明专利技术实施例,能够实现在CPU‑FPGA任务调度过程中,提高CPU‑FPGA的负载均衡性。

CPU-FPGA Task Scheduling Method and Device Based on Feature Recognition

【技术实现步骤摘要】
基于特征识别的CPU-FPGA任务调度方法及装置
本专利技术涉及计算机
,特别是涉及一种基于特征识别的CPU-FPGA任务调度方法及装置。
技术介绍
近年来随着人工智能、多媒体技术和高性能计算的发展,激发了人们对异构计算体系结构的广泛研究兴趣。传统的服务器平台无法承受大批量且多样化的数据处理任务,伴随着分布式计算和高性能计算的发展,异构计算应运而生。异构计算平台整合了异构的计算资源和存储资源,为任务的数据处理提供了弹性的资源配置,提高了资源利用率,降低了服务成本,同时提供了容错和故障恢复技术,为任务的数据处理提供了安全可靠的平台,使得越来越多的任务迁移到异构平台中进行处理。例如,任务可以是视频数据处理、图像数据处理等,异构平台可以为异构服务器等。目前针对CPU(CentralProcessingUnit,中央处理单元)-FPGA(Field-ProgrammableGateArray,现场可编程门阵列)异构平台上需要处理的任务,其采用的处理方法为:CPU针对CPU-FPGA异构平台上所接收到的任务,根据接收任务的先后顺序,将所接收的任务优先分配到FPGA上执行,当FPGA上所需执行的任务达到一定数量时(此时FPGA的内存已完全被占用),再将所接收的任务分配到CPU上执行。然而,现有针对CPU-FPGA异构平台上任务的处理方法,是按照接收任务的先后顺序对任务进行分配处理的,实际应用中,因不同的任务所需处理的数据量的大小不同,使得仅按照接收任务的先后顺序对任务进行分配,容易出现将需处理数据量小或计算复杂度低的任务分配给FPGA,将需处理数据量大或计算复杂度高的任务分配给CPU,导致CPU-FPGA负载不均衡的问题。
技术实现思路
本专利技术实施例的目的在于提供一种基于特征识别的CPU-FPGA任务调度方法及装置,实现在CPU-FPGA任务调度过程中,进一步提高CPU-FPGA的负载均衡性。具体技术方案如下:第一方面,本专利技术实施例提供了一种基于特征识别的CPU-FPGA任务调度方法,所述方法包括:获取多个待处理任务及各待处理任务的数据量,所述待处理任务为所述CPU和所述FPGA中待进行处理的任务,所述数据量用于表示处理所述待处理任务所需的数据处理量;提取所述多个待处理任务中各待处理任务的特征信息,所述特征信息包括:CPU特征信息,FPGA特征信息,以及任务自身特征信息;所述CPU特征信息用于表示CPU处理所述待处理任务时具有的特征,所述FPGA特征信息用于表示FPGA处理所述待处理任务时具有的特征;基于各所述待处理任务的CPU特征信息,FPGA特征信息,以及任务自身特征信息,生成各所述待处理任务的特征向量;所述特征向量为所述待处理任务的特征信息经去除量纲后生成的;将所生成的各所述待处理任务的特征向量输入预先训练的分类模型中,得到各所述待处理任务的分类结果,所述分类结果包括:第一分类结果和第二分类结果,所述第一分类结果对应的第一待处理任务用于在CPU中处理,所述第二分类结果对应的第二待处理任务用于在FPGA中处理;所述分类模型是根据预设任务对应的特征向量,及预设任务所对应的类别标签训练得到的;根据各所述第一待处理任务的数据量之间的大小关系,对所述第一待处理任务进行排序,并将排序后的各所述第一待处理任务按照预设策略调度至CPU中进行处理;根据各所述第二待处理任务的数据量之间的大小关系,对所述第二待处理任务进行排序,并将排序后的各所述第二待处理任务按照预设策略调度至FPGA中进行处理。可选地,所述基于各所述待处理任务的CPU特征信息,FPGA特征信息,以及任务自身特征信息,生成各所述待处理任务的特征向量的步骤,包括:将各所述待处理任务的CPU特征信息,FPGA特征信息以及任务自身特征信息去除量纲,得到各待处理任务的CPU特征数据,FPGA特征数据以及任务自身特征数据;按照预设规则将各所述待处理任务的CPU特征数据,FPGA特征数据以及任务自身特征数据,组合成各待处理任务的特征向量。可选地,所述第一分类结果为CPU任务子集,所述第二分类结果为FPGA任务子集,所述根据各所述第一待处理任务的数据量之间的大小关系,对所述第一待处理任务进行排序的步骤,包括:将所述CPU任务子集对应的第一待处理任务,按照各第一待处理任务的数据量之间的大小关系升序排序,得到第一CPU任务队列;或者,将所述CPU任务子集对应的第一待处理任务,按照各第一待处理任务的数据量之间的大小关系降序排序,得到第二CPU任务队列;所述根据各所述第二待处理任务的数据量之间的大小关系,对所述第二待处理任务进行排序的步骤,包括:将所述FPGA任务子集对应的第二待处理任务,按照各第二待处理任务的数据量之间的大小关系降序排序,得到第一FPGA任务队列;或者,将所述FPGA任务子集对应的第二待处理任务,按照各第二待处理任务的数据量之间的大小关系升序排序,得到第二FPGA任务队列。可选地,所述将排序后的各所述第一待处理任务按照预设策略调度至CPU中进行处理的步骤,包括:针对排序后的各所述第一待处理任务,按照第一CPU任务队列中各第一待处理任务的先后顺序,依次将所述第一CPU任务队列中的各第一待处理任务调度至CPU中进行处理;或者,针对排序后的各所述第一待处理任务,按照第二CPU任务队列中各第一待处理任务的倒序顺序,依次将所述第二CPU任务队列中的各第一待处理任务调度至CPU中进行处理。可选地,所述将排序后的各所述第二待处理任务按照预设策略调度至FPGA中进行处理的步骤,包括:针对排序后的各所述第二待处理任务,按照第一FPGA任务队列中各第二待处理任务的先后顺序,依次将所述第一FPGA任务队列中的各第二待处理任务调度至FPGA中进行处理;或者,针对排序后的各所述第二待处理任务,按照第二FPGA任务队列中各第二待处理任务的倒序顺序,依次将所述第二FPGA任务队列中的各第二待处理任务调度至FPGA中进行处理。第二方面,本专利技术实施例提供了一种基于特征识别的CPU-FPGA任务调度装置,所述装置包括:获取模块,用于获取多个待处理任务及各待处理任务的数据量,所述待处理任务为所述CPU和所述FPGA中待进行处理的任务,所述数据量用于表示处理所述待处理任务所需的数据处理量;提取模块,用于提取所述多个待处理任务中各待处理任务的特征信息,所述特征信息包括:CPU特征信息,FPGA特征信息,以及任务自身特征信息;所述CPU特征信息用于表示CPU处理所述待处理任务时具有的特征,所述FPGA特征信息用于表示FPGA处理所述待处理任务时具有的特征;生成模块,用于基于各所述待处理任务的CPU特征信息,FPGA特征信息,以及任务自身特征信息,生成各所述待处理任务的特征向量;所述特征向量为所述待处理任务的特征信息经去除量纲后生成的;分类模块,用于将所生成的各所述待处理任务的特征向量输入预先训练的分类模型中,得到各所述待处理任务的分类结果,所述分类结果包括:第一分类结果和第二分类结果,所述第一分类结果对应的第一待处理任务用于在CPU中处理,所述第二分类结果对应的第二待处理任务用于在FPGA中处理;所述分类模型是根据预设任务对应的特征向量,及预设任务所对应的类别标签训练得到的;第一调度模块,用于根据本文档来自技高网
...

【技术保护点】
1.一种基于特征识别的CPU‑FPGA任务调度方法,其特征在于,所述方法包括:获取多个待处理任务及各待处理任务的数据量,所述待处理任务为所述CPU和所述FPGA中待进行处理的任务,所述数据量用于表示处理所述待处理任务所需的数据处理量;提取所述多个待处理任务中各待处理任务的特征信息,所述特征信息包括:CPU特征信息,FPGA特征信息,以及任务自身特征信息;所述CPU特征信息用于表示CPU处理所述待处理任务时具有的特征,所述FPGA特征信息用于表示FPGA处理所述待处理任务时具有的特征;基于各所述待处理任务的CPU特征信息,FPGA特征信息,以及任务自身特征信息,生成各所述待处理任务的特征向量;所述特征向量为所述待处理任务的特征信息经去除量纲后生成的;将所生成的各所述待处理任务的特征向量输入预先训练的分类模型中,得到各所述待处理任务的分类结果,所述分类结果包括:第一分类结果和第二分类结果,所述第一分类结果对应的第一待处理任务用于在CPU中处理,所述第二分类结果对应的第二待处理任务用于在FPGA中处理;所述分类模型是根据预设任务对应的特征向量,及预设任务所对应的类别标签训练得到的;根据各所述第一待处理任务的数据量之间的大小关系,对所述第一待处理任务进行排序,并将排序后的各所述第一待处理任务按照预设策略调度至CPU中进行处理;根据各所述第二待处理任务的数据量之间的大小关系,对所述第二待处理任务进行排序,并将排序后的各所述第二待处理任务按照预设策略调度至FPGA中进行处理。...

【技术特征摘要】
1.一种基于特征识别的CPU-FPGA任务调度方法,其特征在于,所述方法包括:获取多个待处理任务及各待处理任务的数据量,所述待处理任务为所述CPU和所述FPGA中待进行处理的任务,所述数据量用于表示处理所述待处理任务所需的数据处理量;提取所述多个待处理任务中各待处理任务的特征信息,所述特征信息包括:CPU特征信息,FPGA特征信息,以及任务自身特征信息;所述CPU特征信息用于表示CPU处理所述待处理任务时具有的特征,所述FPGA特征信息用于表示FPGA处理所述待处理任务时具有的特征;基于各所述待处理任务的CPU特征信息,FPGA特征信息,以及任务自身特征信息,生成各所述待处理任务的特征向量;所述特征向量为所述待处理任务的特征信息经去除量纲后生成的;将所生成的各所述待处理任务的特征向量输入预先训练的分类模型中,得到各所述待处理任务的分类结果,所述分类结果包括:第一分类结果和第二分类结果,所述第一分类结果对应的第一待处理任务用于在CPU中处理,所述第二分类结果对应的第二待处理任务用于在FPGA中处理;所述分类模型是根据预设任务对应的特征向量,及预设任务所对应的类别标签训练得到的;根据各所述第一待处理任务的数据量之间的大小关系,对所述第一待处理任务进行排序,并将排序后的各所述第一待处理任务按照预设策略调度至CPU中进行处理;根据各所述第二待处理任务的数据量之间的大小关系,对所述第二待处理任务进行排序,并将排序后的各所述第二待处理任务按照预设策略调度至FPGA中进行处理。2.根据权利要求1所述的方法,其特征在于,所述基于各所述待处理任务的CPU特征信息,FPGA特征信息,以及任务自身特征信息,生成各所述待处理任务的特征向量的步骤,包括:将各所述待处理任务的CPU特征信息,FPGA特征信息以及任务自身特征信息去除量纲,得到各待处理任务的CPU特征数据,FPGA特征数据以及任务自身特征数据;按照预设规则将各所述待处理任务的CPU特征数据,FPGA特征数据以及任务自身特征数据,组合成各待处理任务的特征向量。3.根据权利要求2所述的方法,其特征在于,所述第一分类结果为CPU任务子集,所述第二分类结果为FPGA任务子集,所述根据各所述第一待处理任务的数据量之间的大小关系,对所述第一待处理任务进行排序的步骤,包括:将所述CPU任务子集对应的第一待处理任务,按照各第一待处理任务的数据量之间的大小关系升序排序,得到第一CPU任务队列;或者,将所述CPU任务子集对应的第一待处理任务,按照各第一待处理任务的数据量之间的大小关系降序排序,得到第二CPU任务队列;所述根据各所述第二待处理任务的数据量之间的大小关系,对所述第二待处理任务进行排序的步骤,包括:将所述FPGA任务子集对应的第二待处理任务,按照各第二待处理任务的数据量之间的大小关系降序排序,得到第一FPGA任务队列;或者,将所述FPGA任务子集对应的第二待处理任务,按照各第二待处理任务的数据量之间的大小关系升序排序,得到第二FPGA任务队列。4.根据权利要求3所述的方法,其特征在于,所述将排序后的各所述第一待处理任务按照预设策略调度至CPU中进行处理的步骤,包括:针对排序后的各所述第一待处理任务,按照第一CPU任务队列中各第一待处理任务的先后顺序,依次将所述第一CPU任务队列中的各第一待处理任务调度至CPU中进行处理;或者,针对排序后的各所述第一待处理任务,按照第二CPU任务队列中各第一待处理任务的倒序顺序,依次将所述第二CPU任务队列中的各第一待处理任务调度至CPU中进行处理。5.根据权利要求3所述的方法,其特征在于,所述将排序后的各所述第二待处理任务按照预设策略调度至FPGA中进行...

【专利技术属性】
技术研发人员:张海涛杜沛伦马华东
申请(专利权)人:北京邮电大学
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1