调度操作的方法及计算机可读介质技术

技术编号:26478347 阅读:37 留言:0更新日期:2020-11-25 19:22
本文公开了调度操作的方法及计算机可读介质。该方法可以包括获得被配置成以串行方式执行以实现功能的多个操作。在一些实施方式中,可以关于参数和输入来执行每个操作。方法还可以包括获得被配置成执行操作的多个资源的指示以及多个资源中的每个资源单独执行多个操作中的每个操作的持续时间。方法还可以包括将执行多个操作的资源的调度建模为二进制优化,所述调度基于多个资源中的每个资源单独执行多个操作中的每个操作的持续时间来减少执行多个操作的总持续时间。方法还可以包括求解二进制优化以确定多个资源的调度表,以及由多个资源根据调度表执行多个操作,以实现功能。

【技术实现步骤摘要】
调度操作的方法及计算机可读介质
本公开内容中讨论的实施方式涉及调度操作。
技术介绍
任务图可以表示执行特定任务的操作以及操作之间的数据流。例如,任务图可以表示机器学习算法用以生成机器学习模型的操作和数据流。可以使用任务图来调度可以用于执行任务图中的操作的装置集群,例如服务器集群。本公开内容中要求保护的主题不限于解决任何缺点的实施方式或仅在诸如上述环境中操作的实施方式。确切地说,提供该
技术介绍
仅用于示出可以实践本公开内容中描述的一些实施方式的一个示例

技术实现思路
根据实施方式的方面,方法可以包括获得被配置成以串行方式执行以实现功能的多个操作。在一些实施方式中,可以关于参数和输入来执行每个操作。方法还可以包括获得被配置成关于参数和输入执行操作的多个资源的指示,以及多个资源中的每个资源单独执行多个操作中的每个操作的持续时间。方法还可以包括将执行多个操作的资源的调度建模为二进制优化,所述调度基于多个资源中的每个资源单独执行多个操作中的每个操作的持续时间来减少执行多个操作的总持续时间。方法还可以包括:求解二进制优化,以确定多个资源的调度表,以及由多个资源根据调度表执行多个操作以实现功能。将至少通过权利要求中特别指出的元件、特征和组合来实现和取得实施方式的目的和优点。前述总体描述和以下详细描述两者被作为示例给出并且是说明性的,且不限制所要求保护的本专利技术。附图说明将通过使用附图更具体和详细地描述和说明示例实施方式,在附图中:图1是表示与调度操作有关的示例环境的图;图2a示出了示例操作流;图2b示出了示例资源;图3示出了可以被配置成辅助调度操作的示例计算系统;图4是使用操作的调度的示例方法的流程图;以及图5是调度操作的示例方法的流程图。具体实施方式对数据执行的操作在增加。例如,机器学习算法(例如,深度学习网络)在训练期间对数据执行数百万次操作。因此,在某些情形下,由单个装置执行操作可能会导致执行操作慢。本公开内容中描述的系统和方法可以致力于以减少执行操作的时间的方式跨多个不同资源的操作的调度。在这些和其他实施方式中,可以基于资源的可用性以及操作的流、跨资源调度操作。确定用于处理操作的资源的调度表可以是非确定性多项式时间(NP)完全问题。因此,确定可以减少执行操作的时间的调度表可能是困难的。本公开内容的一个或更多个实施方式可以涉及可以确定用于资源执行操作的调度表的系统和/或方法。可以使用操作的指示、被配置成执行操作的资源以及资源中的每个资源单独执行操作中的每个操作的持续时间来确定调度表。在一些实施方式中,可以通过使用二元优化对执行操作的资源的调度进行建模来确定减少执行多个操作的总持续时间的执行多个操作的调度表。可以基于执行多个操作的资源单独执行操作中的每个操作的持续时间对二进制优化进行建模。在这些和其他实施方式中,可以求解二次约束二进制优化以确定调度表,以及可以根据调度表来执行操作。这样,根据本公开内容的一个或更多个实施方式,本文中描述的操作允许改善对操作的执行的调度。改善对操作的执行的调度可以导致更好地使用可以执行操作的资源,例如,装置和/或系统。替选地或另外地,改善对操作的执行的调度可以减少资源执行操作的时间。替选地或另外地,改善对操作的执行的调度可以提高正在执行操作的资源的执行。例如,针对机器学习算法改善对操作的执行的调度可以减少诸如服务器的计算机系统训练机器学习模型的时延和时间。替选地或另外地,针对机器学习算法改善对操作的执行的调度可以增加在生成机器学习模型时可以使用的输入的数目,使得可以改善机器学习模型。因此,本文中所公开的实施方式可以解决机器学习、针对大型操作的资源的调度(例如,任务图)以及计算系统资源的使用的
中的问题。此外,本文中所公开的实施方式可以减少用于执行操作的计算系统资源的处理时间以及沿用于执行操作的计算系统资源的时延。参照附图来说明本公开内容的实施方式。图1是表示根据本公开内容中描述的至少一个实施方式布置的与调度操作有关的示例环境100的图。环境100可以包括调度模块120和执行环境130。调度模块120和/或执行环境130可以包括被配置成使得一个或更多个计算装置或系统能够执行随其描述的操作中的一个或更多个操作的代码和例程。在这些和其他实施方式中,可以使用包括任何数目的处理器、微处理器(例如,执行或控制一个或更多个操作的执行)、现场可编程门阵列(FPGA)、专用集成电路(ASIC)或其两个或更多个的任何合适组合的硬件来实现调度模块120和/或执行环境130。替选地或另外地,可以使用硬件和软件的组合来实现调度模块120和执行环境130。在本公开内容中,被描述为由调度模块120和执行环境130执行的操作可以包括调度模块120和执行环境130可以指导对应的系统执行的操作。在一些实施方式中,环境100可以获得操作数据110、资源数据112和输入数据114。操作数据110可以表示实现特定功能的操作以及操作之间的数据流。例如,操作数据110可以表示向不同操作提供了何输入和/或参数,以及是否向第二操作的输出提供了第一操作的输出。替选地或另外地,操作数据110可以指示操作之间的串行或并行关系。串行关系可以指示直到第二操作完成之后才可以开始第一操作。并行关系可以指示可以在交叠的时间段中执行第一操作和第二操作。输入数据114可以表示可以用于执行操作的信息,例如,一个或更多个输入、一个或更多个参数以及用于执行不是由操作生成的操作的其他数据。图2a示出了根据本公开内容的至少一个实施方式的示例操作流200。操作流200可以示出用于训练机器学习算法的操作流。例如,操作流200可以示出使用单个输入来训练机器学习算法。在一些实施方式中,操作流200可以表示可以在单个输入机器学习训练中使用的任务图。操作流200可以包括第一输入212、第二输入214、参数220(包括第一参数220a、第二参数220b和第三参数220c)、正向操作230(包括第一正向操作230a、第二正向操作230b和第三正向操作230c)、反馈操作240(包括第一反馈操作240a、第二反馈操作240b和第三反馈操作240c)、中间操作250和输出260(包括第一输出260a、第二输出260b和第三输出260c)。可以以串行方式执行正向操作230。例如,第一正向操作230a可以获得第一输入212和第一参数220a,并且对其执行第一操作以生成第一正向输出。可以在第一正向操作230a完成之后执行第二正向操作230b。第二正向操作230b可以获得第一正向输出和第二参数220b,并且对其执行第二操作以生成第二正向输出。可以在第二正向操作230b完成之后执行第三正向操作230c。第三正向操作230c可以获得第二正向输出和第三参数220c,并且对其执行第三操作以生成第三正向输出。可以在第三正向操作230c完成之后执行中间操作250。中间操作250可以获得第三正向输出和第二输入21本文档来自技高网
...

【技术保护点】
1.一种方法,包括:/n获得被配置成以串行方式执行以实现功能的多个操作,每个操作是关于参数和输入被执行的;/n获得被配置成关于所述参数和所述输入执行所述操作的多个资源的指示,以及所述多个资源中的每个资源单独执行所述多个操作中的每个操作的持续时间;/n将执行所述多个操作的资源的调度建模为二进制优化,所述调度基于所述多个资源中的每个资源单独执行所述多个操作中的每个操作的持续时间来减少执行所述多个操作的总持续时间;/n求解所述二进制优化,以确定所述多个资源的调度表;以及/n由所述多个资源根据所述调度表执行所述多个操作,以实现所述功能。/n

【技术特征摘要】
20190522 US 16/420,0711.一种方法,包括:
获得被配置成以串行方式执行以实现功能的多个操作,每个操作是关于参数和输入被执行的;
获得被配置成关于所述参数和所述输入执行所述操作的多个资源的指示,以及所述多个资源中的每个资源单独执行所述多个操作中的每个操作的持续时间;
将执行所述多个操作的资源的调度建模为二进制优化,所述调度基于所述多个资源中的每个资源单独执行所述多个操作中的每个操作的持续时间来减少执行所述多个操作的总持续时间;
求解所述二进制优化,以确定所述多个资源的调度表;以及
由所述多个资源根据所述调度表执行所述多个操作,以实现所述功能。


2.根据权利要求1所述的方法,还包括:获得在所述多个资源之间传递信息的通信延迟,其中,对资源的调度进行建模还基于所述通信延迟。


3.根据权利要求2所述的方法,还包括:获得与所述资源中的每个资源相关联的存储器容量、所述参数的存储器需求、以及所述输入的存储器需求,
其中,对所述资源的调度进行建模包括:基于所述参数的存储器需求以及所述输入的存储器需求,对关于所述多个操作中的每个操作的与所述资源中的每个资源相关联的存储器容量约束进行建模,所建模的存储器容量约束在求解所述二进制优化时被应用。


4.根据权利要求3所述的方法,其中,将所述资源的调度建模为二进制优化包括:生成二进制优化公式,所述二进制优化公式使用执行所述多个操作中的被定位在所述多个操作中的第一操作之前的操作的执行时间以及获得用于所述第一操作的输入的通信延迟来定义所述第一操作的完成时间。


5.根据权利要求1所述的方法,其中,用于所述多个操作中的第一操作的输入是所述多个操作中的第二操作的输出,所述第二操作在所述多个操作的串行执行中紧邻在所述第一操作之前。


6.根据权利要求1所述的方法,其中,对所述资源的调度进行建模包括:建模为所述多个操作中的每个操作由所述资源中之一执行,以及在求解所述二进制优化时应用使得所述多个操作中的每个操作由所述资源中之一执行的建模作为约束。


7.根据权利要求1所述的方法,其中,所述多个操作与多个子任务中的子任务相关联,所述多个子任务中的每个子任务与不同的多个操作相关联,并且
对执行所述多个操作的所述资源的调度进行建模包括:将由所述多个资源对所述多个子任务中的每个子任务执行所述不同的多个操作的所述资源的调度建模为二进制优化。


8.根据权利要求7所述的方法,其中,所述多个资源的数目大于所述多个子任务的数目。


9.根据权利要求1所述的方法,其中,所述参数中的每个参数由所述多个操作中的两个操作使用。


10.根据权利要求1所述的方法,其中,由执行所述多个操作实现的所述功能生成机器学习模型,所述方法还包括:将所述机器学习模型应用于未分类的输入,以关于所述输入的分类将所述未分类的输入进行分类。


11.一种或更多种计算机可读介质,被配置成存储指令,所述指令在由系统执行时导致或指导...

【专利技术属性】
技术研发人员:阿夫拉迪普·曼达尔萨瓦吉亚·乌帕德亚雅
申请(专利权)人:富士通株式会社
类型:发明
国别省市:日本;JP

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

1