CN115136118A - 用于工作负载执行的神经路径 - Google Patents

用于工作负载执行的神经路径 Download PDF

Info

Publication number
CN115136118A
CN115136118A CN202080096748.XA CN202080096748A CN115136118A CN 115136118 A CN115136118 A CN 115136118A CN 202080096748 A CN202080096748 A CN 202080096748A CN 115136118 A CN115136118 A CN 115136118A
Authority
CN
China
Prior art keywords
workload
execution
computing
network
neural
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
Application number
CN202080096748.XA
Other languages
English (en)
Inventor
伊尔万·哈勒姆
特列娅·埃利奥特
托马斯·弗林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hewlett Packard Development Co LP
Original Assignee
Hewlett Packard Development Co LP
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hewlett Packard Development Co LP filed Critical Hewlett Packard Development Co LP
Publication of CN115136118A publication Critical patent/CN115136118A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3442Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for planning or managing the needed capacity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/535Tracking the activity of the user
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/55Push-based network services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3447Performance evaluation by modeling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3452Performance evaluation by statistical analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Quality & Reliability (AREA)
  • Debugging And Monitoring (AREA)

Abstract

在一个示例中,可以为具有多个计算资源的计算网络生成神经网络模型。性能度量和历史使用模式是学习计算资源的当前利用率模式的基础。可以确定计算资源中的每一个的工作负载能力,并且可以为指定工作负载的执行生成神经路径。

Description

用于工作负载执行的神经路径
背景技术
许多组织具有多种计算资源。例如,组织可以具有用于该组织的每个成员的计算系统。这种计算系统可以促进成员计算系统执行多个工作负载。每个成员组织都可以利用自己的计算资源来执行工作负载。网络的计算资源的工作负载能力可以是MIPS(每秒百万条指令)。MIPS通常可以指示计算资源在一秒内可以执行的机器指令的数量,尽管不同的指令比其他指令需要更多或者更少的时间。
附图说明
本公开的示例将通过参考在附图中图示出的本公开的特定示例来呈现。附图仅图示出了本公开的特定示例,并且因此,不应当被认为是对其范围的限制。本文中的原理通过使用附图以附加的特征和细节来描述和解释,在附图中:
图1A图示出根据本公开的存储在示例性的非暂时性计算机可读存储介质上以实现基于人工智能的分布式工作负载执行的示例指令。
图1B图示出根据本公开的示例性的计算装置。
图2图示出根据本公开的一些示例的示例性的基于人工智能的工作负载执行过程。
图3图示出根据本公开的一些示例的实现基于人工智能的分布式工作负载执行的计算系统的示例性的网络。
图4图示出根据本公开的示例的计算资源的节点网络。
具体实施方式
如上所述,组织可以具有多个计算资源以促进每个成员执行工作负载。然而,尽管许多这种计算资源在工作时间被利用,但它们在非高峰或者非工作时间保持空闲或者处于睡眠模式。这种不使用可以说表示可用计算能力减少了66%。更糟糕的是,计算资源在不使用期间继续消耗电力。计算资源也可能利用不足,因为难以确定计算资源的主机用户是否在满负载下使用计算资源。因此,在一些情况下,为了执行期望的工作负载,组织可能在具有空闲计算资源的同时产生附加的计算资源或者数据转换的成本。此外,在大数据摄取或者ETL(提取、转换、加载)过程期间,可能运行大量虚拟机来将数据从一个计算资源复制到另一计算资源。在该复制过程期间,数据结构可以被改变以满足数据存储需求。
因此,本公开的示例利用神经网络模型来促进计算系统的网络执行工作负载。在本公开的一些示例中,计算系统的网络可以用于执行工作负载。神经网络模型可以包括多个互连的计算系统,使得数据可以传播到网络的每个计算系统。网络可以通过重复估计数据、基于估计生成预测以及基于预测的准确性调整结果来学习。
在一个示例中,网络可以通过将预测与已知结果进行比较来训练从而进行学习。随着训练的进行,神经网络模型的预测可以变得越来越准确。例如,网络的计算系统可以具有学习每个计算系统的当前利用率模式以确定工作负载能力的神经网络模型。神经网络模型然后可以生成用于执行指定工作负载的神经路径。神经路径是通过网络的路径,其可以提供满足工作负载执行成本的能力。该路径被认为是神经路径,因为它是基于通过试错过程的神经网络学习而不断修正的。
对于一些示例,神经路径可以在任何计算系统的工作负载能力改变时动态地更新。对于一些示例,指定工作负载的估计执行成本可以通过模拟工作负载执行或者通过参考过去的工作负载执行来确定。
在一个示例中,网络的计算系统可以具有学习每个计算系统的当前利用率模式以确定工作负载能力的神经网络模型。神经网络模型然后可以生成用于执行指定工作负载的神经路径。以这种方式,为指定的工作能力识别到利用不足的计算资源的路径和工作能力。组织不需要购买附加的计算资源,因为他们可以利用现有的计算资源,否则这些资源将保持空闲。
在本公开的一个示例中,神经路径可以基于任何计算系统的工作负载能力的改变来动态地更新。在一个示例中,指定工作负载的估计能力可以通过模拟工作负载执行或者通过参考过去的工作负载执行来确定。
在一个示例中,神经网络模型通过测量可以包括CPU利用率、RAM利用率、磁盘I/O活动和网络活动的与性能相关的度量来计算每个计算系统的系统利用率。在执行工作负载时,可以获取每个计算系统的附加利用率信息,并将其用于修正工作负载执行的神经路径,并且更准确地预测工作负载能力。
神经网络模型可以随着时间的推移并在多次执行之后学习计算资源可用性的模式,以提高预测工作负载能力的准确性。随着更多数据被分析,神经网络模型可以变得更加准确和有效。准确的预测可以允许跨多个计算系统执行工作负载,而对计算系统的主用户影响较小。
对于一些示例,工作负载可以被容器化(containerized),以允许跨许多不同的计算系统执行。容器化可以提供主用户的数据的隔离和安全性。
图1A图示出根据本公开的存储在非暂时性计算机可读存储介质100上以实现基于人工智能的分布式工作负载执行的示例指令,并且图1B图示出根据本公开的示例性的计算装置150。
如图1A中所示,非暂时性计算机可读存储介质100包括指令102,指令102可以使处理器110(图1B)生成神经网络模型120(图1B)以传播到具有多个计算系统305a-305d(图3)的计算网络300(图3)上。神经网络模型120可以对计算机资源利用率进行预测,以生成用于跨多个计算机资源的执行工作负载的神经路径。随着更多数据的分析,这些预测可以具有更高的准确性。
指令102可以包括指令104、指令106和指令108。指令104可以使处理器执行基于性能度量和历史使用模式来学习计算资源中的每一个的当前利用率模式的操作。这种性能度量可以包括CPU利用率、RAM利用率、磁盘I/O活动和网络性能(即,网络上的带宽或者数据传输速率)。
指令106可以使处理器110执行为计算系统305a-305d(图3)中的每一个确定工作负载能力的操作。性能度量和历史使用模式为计算系统305a-305d中的每一个提供工作负载能力的初始估计。可以监控系统利用率模式,并且实时更新可以允许神经网络模型120(图1B)学习系统利用率并改进网络的计算资源中的每一个的工作负载能力估计。
指令108可以使处理器110执行生成用于执行指定工作负载的神经路径的操作。可以确定指定工作负载的工作负载执行成本。工作负载执行成本是对可用于执行工作负载的计算系统资源的估计。工作负载执行成本可以包括用于执行工作负载的时间。为了获取指定工作负载的工作负载执行成本的准确估计,神经网络模型120可以使用计算系统的性能度量和工作负载执行时间。神经网络模型120可以将性能度量和工作负载执行时间一起使用,以确定哪些系统能够执行工作负载以及这些系统执行工作负载的时间量。可以通过模拟工作负载来估计指定工作负载的工作负载执行成本。此外,可以通过执行实际工作负载并分析系统性能度量和工作负载执行时间来估计指定工作负载的工作负载执行成本。
非暂时性计算机可读存储介质100可以是存储可执行指令的任何电子、磁性、光学或者其他物理存储装置。例如,非暂时性计算机可读存储介质100可以是随机存取存储器(RAM)、电可擦除可编程只读存储器(EEPROM)、存储驱动器、光盘等。非暂时性计算机可读存储介质100可以被编码以存储使处理器110执行根据本公开的示例的操作的可执行指令。
图2图示出根据本公开的一些示例的过程。图2中图示出的过程200可以代表可以由处理器执行以实现用于工作负载执行的过程的计算机可读指令。
过程200从操作202开始,在操作202处,可以分析计算系统网络的每个计算系统的实时性能,以确定每个计算系统的工作负载能力。分析每个计算系统的实时性能可以包括分析CPU利用率、RAM利用率、磁盘I/O速度、指令执行速度、网络带宽和浮点运算速度。分析每个计算系统的实时性能可以包括分析计算系统的可用性。
在操作204处,可以确定执行工作负载容器的工作负载执行成本。如上文参考图1所描述,指定工作负载的工作负载执行成本可以通过测量性能度量和执行时间来确定。对于一些示例,工作负载可以被容器化,以允许跨多个资源执行分布式工作负载。工作负载的容器化可以提供主用户的数据的隔离和安全性。容器化是整机虚拟化的替代方案,这涉及到将工作负载封装到具有自己的操作环境的容器中。容器可以被设计成在各种平台上运行。工作负载的容器化可以提供与在虚拟机上执行工作负载类似的优点。这可以解决数据结构改变的问题以满足数据存储需求。工作负载容器化还可以允许数据锁定以保护主用户的数据免受未经授权的访问。
在操作206处,可以向网络的计算系统中的每一个报告每个计算系统的工作负载能力和工作负载执行成本。每个计算系统的工作负载能力和工作负载执行成本信息可用于调度工作负载执行。例如,基于每个计算系统的工作负载能力和工作负载执行成本,可以请求、拒绝或者转移工作负载。对于本公开的一些示例,每个计算系统的工作负载能力和工作负载执行成本信息可以被广播到网络的其他计算系统中的每一个。对于本公开的一些示例,每个计算系统的工作负载能力和工作负载执行成本信息可以被报告给用于工作负载执行调度的集中式工作负载管理服务。
在操作208处,可以生成通过网络的神经路径。神经路径可以满足所确定的执行工作负载容器的工作负载执行成本。可以基于允许跨多个计算系统执行工作负载的可用信息来生成神经路径。
在操作210处,神经路径可以基于一个或多个计算系统的工作负载能力的改变来动态地更新。最初,可能拒绝一些工作负载,但随着时间的推移,神经网络模型学习网络的计算资源如何交互,并且可以为工作负载执行生成更准确的神经路径。
神经路径可以根据过程的迭代和更新的信息来修正。例如,计算装置的工作负载能力可能随时间的推移而改变,并且所生成的神经路径可能不再满足所确定的工作负载执行成本,或者可能不如另一神经路径有效。当神经网络从过程的迭代中学习时,所生成的神经路径可以动态地更新以满足所确定的工作负载执行成本。
图3图示出根据本公开的一些示例的实现基于人工智能的分布式工作负载执行的计算系统的示例性的网络。如图3中所示,计算网络300包括计算系统305a-305d。计算系统305a-305d通过网络310(例如互联网、内联网等)彼此通信地耦接。根据本公开的示例,网络可以具有任意数量的计算系统,并且计算系统可以以各种方式彼此通信地耦接。根据本公开的示例,计算系统可以包括或者可以是例如个人计算机、台式计算机、移动计算机、膝上型计算机、笔记本计算机、终端、工作站、服务器计算机、网络装置或者任何其他合适的计算装置。
如图3中所示,计算系统305a-305d中的每一个可以包括计算部件320。计算部件320可以包括控制器/CPU 325,其可以是例如CPU、芯片或者任何合适的计算或者计算机式的装置。可以包括输入/输出装置355的计算部件320可以包括操作系统330、存储器340、可执行代码345以及存储系统350。
控制器/CPU 325可以被配置成执行本文中描述的方法和/或执行各种模块。计算系统305a-305d中的每一个可以包括一个以上的计算部件320,并且一个或多个计算部件320可以用作根据本公开的示例的计算系统的部件。
操作系统330可以是或者可以包括被设计和/或被配置成执行涉及控制或者以其他方式管理计算部件320的操作的任务的任何代码。这可以包括调度软件程序的执行或者使软件程序或者其他模块或者单元能够通信。作为示例,操作系统330可以是商业操作系统。对于本公开的一些示例,计算部件320可以包括不使用操作系统的计算装置(例如,微控制器、ASIC、FPGA或者SOC)。
存储器340可以以各种形式实现,包括随机存取存储器(RAM)、只读存储器(ROM)、易失性或者非易失性存储器、高速缓冲存储器或者其他合适的存储器单元或者存储单元。存储器340可以是计算机可读的非暂时性存储介质。
可执行代码345可以是任何可执行代码(例如,应用、程序或者进程)。可执行代码345可以在操作系统330的控制下由控制器/CPU 325执行。本公开的示例可以包括可以被加载到存储器340中并使控制器/CPU 325执行本文中描述的方法的多个可执行代码。
存储系统350可以是或者可以包括例如硬盘驱动器、闪存、嵌入微控制器的存储器或者可移动存储。内容可以存储在存储系统350中,并且可以从存储系统350加载到存储器340中,在存储器340中,内容可以被控制器/CPU 325处理。尽管存储系统350被示出为单独的部件,但是存储系统350可以被嵌入或者被包括在存储器340中。
输入/输出装置355可以包括诸如键盘/小键盘、鼠标的任何合适的输入装置和诸如显示器或者监视器的任何合适的输出装置。通用串行总线(USB)装置或者外部硬盘驱动可以被包括在输入/输出装置355中。任何适用的输入/输出装置可以通过例如有线或者无线网络接口连接到计算部件320。
如上所讨论,本公开的示例可以包括计算机可读介质,当由处理器执行时,该计算机可读介质可以使处理器执行本文中公开的操作。根据本公开的示例,可执行代码345包括实现AI工作负载能力模块346和可以提供用于跨计算机系统执行工作负载的神经网络模型的工作负载执行管理模块347的可执行代码。
根据本公开的示例,每个计算系统上的工作负载能力模块346可以连续地监控系统利用率。例如,工作负载能力模块346可以分析计算系统的CPU利用率、RAM利用率、磁盘I/O速度、指令执行速度和浮点运算速度。工作负载能力模块346可以创建系统利用率报告,并将系统利用率报告发送给网络300的其他计算系统305a-305d(图3)。可以为每个计算系统同步系统利用率报告,使得可以校正不一致性。因此,在任何时间,所有计算系统知道网络中所有计算系统的计算资源的可用性。
根据本公开的示例,每个计算系统上的工作负载执行管理模块347确定每个工作负载的工作负载执行成本。指定工作负载的工作负载执行成本可以通过模拟工作负载来确定。模拟可以基于计算系统的可用计算资源来确定每个计算系统的工作负载执行时间。指定工作负载的工作负载执行成本也可以通过执行工作负载并分析系统性能度量和工作负载执行时间来确定。
使用计算资源可用性信息,工作负载执行管理模块347可以预测哪个计算系统(或者一组计算系统)具有可用的计算资源来提供工作负载能力以执行工作负载。工作负载执行管理模块347然后可以生成满足工作负载的预测执行成本的通过计算系统的神经路径。
根据本公开的示例,神经路径可以基于整个网络中计算资源可用性的改变来动态地更新。例如,如果已经被分配工作负载的计算系统变得不可用,则该计算系统可以拒绝该工作负载,并且可以向网络的所有其他计算系统报告不可用性。具有满足工作负载执行成本的可用资源的其他计算系统可以接受该工作负载。
对于本公开的一些示例,工作负载执行管理模块347可以生成满足符合工作负载的预测执行成本的系统的多个神经路径。如上所讨论,神经路径可以基于实时性能测量来确定,并且可以被中断,例如,如果装置意外地不可用。在一些示例中,在神经路径的执行能力中断的情况下,可以生成一个或多个应急神经路径。这可以允许在主神经路径中断时使用应急神经路径来执行工作负载。
如上所讨论,对于本公开的一些示例,每个计算系统的工作负载能力和工作负载执行成本信息以及实现神经网络工作负载执行模型的其他信息可以被报告给网络的其他计算系统中的每一个。
对于这种示例,主机计算系统可以检查公开的事务记录(open transactionrecord),并基于计算系统的工作负载能力来选择工作负载以执行。如果网络中没有其他计算系统正在执行工作负载,则主机计算系统可以通知网络中的其他计算系统该工作负载正在被执行。在执行完成时,主机计算可以通知网络的其他计算系统。如果工作负载完成失败(例如,工作负载执行被中断),则主机计算系统可以暂停工作负载执行,并且在内部将工作负载执行加入队列以便稍后执行,或者请求将工作负载执行转移到网络的另一计算系统。
对于本公开的一些示例,每个计算系统305a-305d的工作负载能力和工作负载执行成本信息可以被报告给集中式工作负载管理服务以用于工作负载执行调度。
工作负载执行请求可以被发送到集中式工作负载管理服务。集中式工作负载管理服务可以管理所有的工作负载执行请求。工作负载执行请求可以被加入队列,并且然后被发送到具有满足工作负载执行请求的工作负载执行成本的工作负载能力的主机计算系统305a。
当主机计算系统305a已经接收到工作负载执行请求时,主机计算系统305a可以向集中式工作负载管理服务发送确认(acknowledgement)并开始工作负载的执行。在完成工作负载的执行时,主机计算系统305a可以向集中式工作负载管理服务报告完成。如果工作负载完成失败(例如,工作负载执行被中断),则主机计算系统305a可以向集中式工作负载管理服务通知该工作负载此时无法被主机计算系统305a执行。根据本公开的示例,集中式工作负载管理服务然后可以将工作负载转移到网络300的不同的计算系统305b-d。如果没有计算系统可用于执行工作负载,则集中式工作负载管理服务可以将工作负载请求加入队列,直到主机计算资源可用于提供满足工作负载执行请求的工作负载执行成本的工作负载能力。
图4图示出根据本公开的示例的计算资源的节点网络400。如图4中所示的节点网络400包括节点N1-N5。本文中使用的术语“节点”是指用于在节点的网络内处理和路由事务的计算机系统。节点可以包括例如个人计算机、组织中的服务器或者由组织操作的数据中心。
通常,根据本公开的示例的计算资源的节点网络可以具有任意数量的节点N1-Nn,并且节点的数量可以随时改变,因为可以添加或者移除节点以反映添加到网络或者从网络移除的计算资源。
神经网络模型可以以MIPS(每秒百万条指令)为单位计算网络的计算资源的工作负载能力。神经网络模型可以计算网络的计算资源在不同时间(例如,图4中所示的时间t1和t2)的工作负载能力。图4的工作负载能力的数值可以表示由神经网络模型基于一段时间内的迭代学习的资源可用性的模式。
如图4中所示,在时间t1处,例如,在一天的特定时间段或者一周的特定日期期间,节点N1具有25MIPS的能力。节点N2具有20MIPS的能力,节点N3具有30MIPS的能力,节点N4具有5MIPS的能力,并且节点N5具有20MIPS的能力。在时间t1处,网络能够执行总共100MIPS的工作负载。
例如,在时间t1处,对于总工作负载执行成本为30MIPS的工作负载,神经路径可以包括节点N3,因为工作负载可以由节点N3执行而无需共享。如果节点N3如预测的那样不可用或者随后被中断,则神经路径可以动态地更新以包括节点N2和节点N5,或者神经路径可以包括具有30MIPS或者更大的组合的总工作负载能力的其他节点。
例如,在时间t1处,对于总工作负载执行成本为75MIPS的工作负载,神经路径可以包括节点N1、节点N3和节点N4。如果节点N1如预测的那样不可用或者随后被中断,则神经路径可以动态地更新以包括节点N2、节点N3、节点N4和节点N5,以满足75MIPS的总工作负载执行成本。
如图4中所示,在时间t2处,例如,在与t1不同的一天的时间段或者一周中不同的日期期间,节点N1具有5MIPS的能力,节点N2具有10MIPS的能力,节点N3具有0MIPS的能力,节点N4具有30MIPS的能力,并且节点N5具有5MIPS的能力。因此,在时间t2处,网络能够执行总共50MIPS的工作负载。
如所图示,节点可以在不同时间(例如,一天中的不同时间段或者一周中不同的日期)具有不同的工作负载能力。因此,例如,在时间t2处,节点N3具有的能力为0,这可以指示计算系统已经从网络中移除,或者主机用户在时间t2处正在使用计算系统的全部工作负载能力。在时间t2处生成的神经路径可以不包括节点N3
本公开的示例可以提高工作负载执行预测的准确性,并且工作负载的容器化可以提供主用户的数据的隔离和安全性。本公开的示例可以允许资源的有效调度和使用,而不会不利地影响主用户。
本公开的示例可以包括使用计算系统的网络的计算系统来执行工作负载的方法。例如,可以分析每个计算系统的实时性能,以确定每个计算系统的工作负载能力。可以确定执行工作负载容器的工作负载执行成本。可以向计算系统中的每一个报告每个计算系统的工作负载能力和工作负载执行成本。然后,可以生成满足所确定的执行工作负载容器的工作负载执行成本的通过网络的神经路径。神经路径可以基于一个或多个计算系统的工作负载能力的改变来动态地更新。
本公开的示例可以包括计算系统的网络。网络的计算系统中的每一个可以具有工作负载能力模块和工作负载执行管理模块。工作负载能力模块可以分析计算系统的实时性能。工作负载执行管理模块可以确定执行工作负载容器的工作负载执行成本并生成通过网络的神经路径。神经路径可以满足执行工作负载容器的预定工作负载执行成本。
如图3和图4中所示的各种部件计算系统是说明性的,并不旨在限制本发明的范围。作为替代,计算系统和/或节点各自包括多个交互计算系统或装置,并且计算系统/节点可以连接到包括通过诸如互联网的一个或多个网络、经由Web或者经由私有网络的其他装置。更一般地,计算系统或者节点可以包括可以与所描述类型的功能交互并执行所描述类型的功能的硬件的任何组合,可选地,当利用特定的软件指令和/或数据结构编程或者以其他方式配置时,包括但不限于台式计算机或者其他计算机、数据库服务器、网络存储装置和其他网络装置。此外,在一些示例中,由所示出的工作负载执行系统提供的功能可以分布在各种模块中。类似地,在一些示例中,可以不提供工作负载执行系统的一些功能和/或可以提供其他附加的功能。
此外,在一些示例中,系统和/或模块中的一些或者全部可以以其他方式实现或者提供,诸如通过由至少部分地在固件和/或硬件中实现的一个或多个装置组成的那些方式,而不是作为整体或者部分地由配置特定处理器的软件指令来实现的装置。在一些示例中,系统、模块和数据结构也可以经由在各种计算机可读传输介质(包括基于无线的介质)上生成的数据信号来传输,并且可以采取各种形式。因此,本公开的示例可以利用其他计算机系统配置来实践。
虽然以上描述是对本公开的具体示例的完整描述,但是其他示例也是可能的。因此,以上描述不应当被视为限制本公开的范围,本公开的范围由所附权利要求及其等同物的全部范围来限定。

Claims (15)

1.一种非暂时性计算机可读存储介质,其上存储有指令,当由处理器执行时,所述指令使所述处理器执行以下操作,包括:
生成神经网络模型以传播到具有多个计算资源的计算网络上,其中,所述生成通过以下步骤来实现:
基于性能度量和历史使用模式来学习所述计算资源中的每一个的当前利用率模式;
确定所述计算资源中的每一个的工作负载能力;以及
为指定工作负载的执行生成神经路径。
2.根据权利要求1所述的非暂时性计算机可读存储介质,其中,所述指令使所述处理器执行进一步操作,包括:
基于计算资源的工作负载能力的改变来动态地更新所述神经路径。
3.根据权利要求1所述的非暂时性计算机可读存储介质,其中,性能度量包括CPU利用率、RAM利用率、磁盘I/O速度、指令执行速度、网络带宽和浮点运算速度。
4.根据权利要求1所述的非暂时性计算机可读存储介质,其中,所述指定工作负载是容器化工作负载,进一步包括:
确定工作负载执行成本,所述工作负载执行成本通过分析性能度量并计算所述容器化工作负载的执行时间来确定。
5.根据权利要求4所述的非暂时性计算机可读存储介质,其中,计算执行时间包括评估模拟工作负载执行和实际工作负载执行中的至少一个。
6.一种使用计算系统的网络的计算系统执行工作负载的方法,所述方法包括:
分析每个计算系统的实时性能,以确定每个计算系统的工作负载能力;
确定执行工作负载容器的工作负载执行成本;
向所述计算系统中的每一个报告每个计算系统的所述工作负载能力和所述工作负载执行成本;
生成通过所述网络的神经路径,所述神经路径满足所确定的执行所述工作负载容器的工作负载执行成本;以及
基于所述神经路径的任何所述计算系统的所述工作负载能力的改变来动态地更新所述神经路径。
7.根据权利要求6所述的方法,其中,分析每个计算系统的实时性能包括分析CPU利用率、RAM利用率、磁盘I/O速度、指令执行速度和浮点运算速度。
8.根据权利要求6所述的方法,其中,确定所述工作负载执行成本包括确定所述工作负载容器的执行时间。
9.根据权利要求8所述的方法,其中,确定执行时间包括评估模拟工作负载执行和实际工作负载执行中的至少一个。
10.根据权利要求6所述的方法,进一步包括:
执行所述工作负载容器;以及
向每个计算系统报告所述工作负载容器的执行。
11.一种系统,包括:
计算系统的网络,所述计算系统中的每一个具有分析所述计算系统的实时性能的工作负载能力模块;
工作负载执行管理模块,用于确定执行工作负载容器的工作负载执行成本,并且生成通过所述网络的神经路径,所述神经路径满足所确定的执行所述工作负载容器的工作负载执行成本。
12.根据权利要求11所述的系统,其中,所述工作负载能力模块分析所述计算系统的CPU利用率、RAM利用率、磁盘I/O速度、指令执行速度和浮点运算速度。
13.根据权利要求11所述的系统,其中,所述工作负载执行管理模块是用于聚集来自所述多个计算系统中的每一个的数据的集中式工作负载管理服务。
14.根据权利要求13所述的系统,其中,所述工作负载执行管理模块生成通过所述网络的至少一条应急神经路径。
15.根据权利要求11所述的系统,其中,所述工作负载执行管理模块通过执行模拟工作负载执行和实际工作负载执行中的至少一个来计算执行时间。
CN202080096748.XA 2020-02-19 2020-02-19 用于工作负载执行的神经路径 Pending CN115136118A (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2020/018901 WO2021167607A1 (en) 2020-02-19 2020-02-19 Neural paths for workload execution

Publications (1)

Publication Number Publication Date
CN115136118A true CN115136118A (zh) 2022-09-30

Family

ID=77391069

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202080096748.XA Pending CN115136118A (zh) 2020-02-19 2020-02-19 用于工作负载执行的神经路径

Country Status (4)

Country Link
US (1) US20230075828A1 (zh)
EP (1) EP4078456A4 (zh)
CN (1) CN115136118A (zh)
WO (1) WO2021167607A1 (zh)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9235801B2 (en) * 2013-03-15 2016-01-12 Citrix Systems, Inc. Managing computer server capacity
US10026070B2 (en) * 2015-04-28 2018-07-17 Solano Labs, Inc. Cost optimization of cloud computing resources
US10412155B2 (en) * 2015-10-29 2019-09-10 Capital One Services, Llc Automated server workload management using machine learning
US10673981B2 (en) * 2017-06-09 2020-06-02 Nutanix, Inc. Workload rebalancing in heterogeneous resource environments
US10908884B2 (en) * 2019-06-27 2021-02-02 Intel Corporation Methods and apparatus for runtime multi-scheduling of software executing on a heterogeneous system

Also Published As

Publication number Publication date
EP4078456A4 (en) 2023-09-13
WO2021167607A1 (en) 2021-08-26
EP4078456A1 (en) 2022-10-26
US20230075828A1 (en) 2023-03-09

Similar Documents

Publication Publication Date Title
Hernández et al. Using machine learning to optimize parallelism in big data applications
Ismaeel et al. Proactive dynamic virtual-machine consolidation for energy conservation in cloud data centres
US11586381B2 (en) Dynamic scheduling of distributed storage management tasks using predicted system characteristics
CN110869909B (zh) 应用机器学习算法来计算健康分数以进行工作负载调度的系统和方法
Verma et al. Dynamic resource demand prediction and allocation in multi‐tenant service clouds
Beloglazov et al. Optimal online deterministic algorithms and adaptive heuristics for energy and performance efficient dynamic consolidation of virtual machines in cloud data centers
EP2972857B1 (en) Managing computer server capacity
US8180604B2 (en) Optimizing a prediction of resource usage of multiple applications in a virtual environment
US8145456B2 (en) Optimizing a prediction of resource usage of an application in a virtual environment
CA3090095C (en) Methods and systems to determine and optimize reservoir simulator performance in a cloud computing environment
US9037880B2 (en) Method and system for automated application layer power management solution for serverside applications
Sampaio et al. Towards high-available and energy-efficient virtual computing environments in the cloud
Ralha et al. Multiagent system for dynamic resource provisioning in cloud computing platforms
Alarifi et al. A fault-tolerant aware scheduling method for fog-cloud environments
De Nardin et al. On revisiting energy and performance in microservices applications: A cloud elasticity-driven approach
Incerto et al. Symbolic performance adaptation
Alrajeh et al. Using Virtual Machine live migration in trace-driven energy-aware simulation of high-throughput computing systems
Alsenani et al. ReMot reputation and resource-based model to estimate the reliability of the host machines in volunteer cloud environment
Hu et al. Cloud model-based security-aware and fault-tolerant job scheduling for computing grid
JP2022011579A (ja) 運用管理装置及び運用管理方法
US20230075828A1 (en) Neural paths for workload execution
Huber et al. Model-based autonomic and performance-aware system adaptation in heterogeneous resource environments: A case study
Lent Grid scheduling with makespan and energy-based goals
McGough et al. Analysis of Reinforcement Learning for determining task replication in workflows
Liang et al. Model-based evaluation and optimization of dependability for edge computing systems

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