首页> 中国专利> 基于不同计算范式内的计算出的计算引力的分布式计算工作负载

基于不同计算范式内的计算出的计算引力的分布式计算工作负载

摘要

提供了在不同计算范式中的计算节点之间分布计算工作负载。系统互联网内的云计算范式中的每个计算节点和客户端网络计算范式中的每个计算节点的计算引力被计算。基于系统互联网内的每个相应计算节点的计算出的计算引力,算法的每个组件部分被分布到云计算范式和客户端网络计算范式中的适当计算节点。算法的每个组件部分的计算工作负载被分布到所述云计算范式和所述客户端网络计算范式中的具有所述算法的对应组件部分的相应计算节点以用于处理。

著录项

  • 公开/公告号CN114930296A

    专利类型发明专利

  • 公开/公告日2022-08-19

    原文格式PDF

  • 申请/专利权人 国际商业机器公司;

    申请/专利号CN202080092212.0

  • 申请日2020-12-18

  • 分类号G06F9/50(2006.01);G06F9/455(2006.01);

  • 代理机构北京市柳沈律师事务所 11105;

  • 代理人陈金林

  • 地址 美国纽约阿芒克

  • 入库时间 2023-06-19 16:25:24

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2022-09-06

    实质审查的生效 IPC(主分类):G06F 9/50 专利申请号:2020800922120 申请日:20201218

    实质审查的生效

说明书

技术领域

本公开总体上涉及内容递送网络,并且更具体地涉及计算系统互联网的不同计算范式(computing paradigm)内的每个计算节点的计算引力(computing gravity),以便在不同计算范式的计算节点之间分布具有复杂人工智能组件的大型应用的计算工作负载。

背景技术

内容递送网络是指地理上分布的服务器群组,这些服务器共同工作以提供数据内容的快速分发。内容递送网络允许快速传输加载数据内容所需的资产,例如HTML页面、JavaScript文件、样式表、图像、视频等。内容递送网络服务的流行度继续增长,并且当前大部分网络流量通过内容递送网络来服务,包括来自主要网站(例如,社交介质网站)的流量。

虽然内容递送网络不托管内容并且不能替代对web托管的需要,但内容递送网络确实帮助在网络边缘处高速缓存内容,这改善了网站性能。许多网站很难通过传统的托管服务来满足它们的性能需求,这就是为什么这些网站选择内容递送网络。通过利用高速缓存来减少托管带宽、帮助防止服务中断以及提高安全性,内容递送网络是缓解与传统web托管相关联的一些问题的流行选择。

内容递送网络在不同网络之间的交换点定位服务器。这些交换点是不同的数据提供商连接的主要位置,以便向彼此提供对源自它们的不同网络上的流量的访问。内容递送网络边缘服务器是存在于网络的逻辑极点或边缘的计算机。边缘服务器通常充当不同网络之间的连接。内容递送网络边缘服务器的主要目的是尽可能靠近请求客户端设备来高速缓存数据内容,从而减少延迟并改善加载时间。

雾计算(fog computing)是使用边缘服务器来执行大量计算、存储和通信的架构。雾联网(fog networking)由控制平面和数据平面组成。例如,在数据平面上,雾计算使得计算服务能够驻留在网络的边缘处,而不是驻留在数据中心中的服务器处。与云计算相比,雾计算强调对终端用户和客户端设备的接近度、密集的地理分布和本地资源池、实现更好服务质量的延迟减少和主干带宽节省、以及边缘分析/流挖掘,这产生优异的用户体验。雾计算促进端点设备与云计算数据中心之间的计算、存储和联网服务的操作。虽然边缘计算通常被提到服务被实例化的位置,但雾计算意味着通信、计算、存储资源和服务分布在终端用户控制中的设备和系统上或这些设备和系统附近。

具有复杂的数据处理流水线的大规模计算系统通常在混合云上运行。数据处理流水线是一组串联的数据处理设备,其中一个设备的输出是串联的下一个设备的输入。临时服务可通过作为接受数据的有效载荷的无状态微服务的混合云获得。平台即服务(例如,具有Docker的Kubernetes)为这些计算密集型应用提供许多计算资源。需要高输入/输出、网络带宽和专用硬件要求的其他计算机算法需要基础设施作为服务或具有其中传统Kubernetes不能供应的虚拟机的可共享机器。然而,传统的云计算范式随着高用户需求而崩溃。

在这些高使用需求的情况下,原始服务器被内容递送网络边缘服务器屏蔽。边缘服务器向服务器静态内容提供web加速层。然而,基于人工智能的应用和其他动态内容生成平台每天创建拍字节(petabyte)的数据。信息量可以用特征空间的组合爆炸来代表。数十亿个请求和动态生成的数据的组合使得内容递送网络边缘计算和混合云计算不够充分。

发明内容

根据一个说明性实施例,提供了一种用于在不同计算范式的计算节点之间分布计算工作负载的计算机实现的方法。云计算范式中的每个计算节点和系统互联网内的客户端网络计算范式中的每个计算节点的计算引力被计算。算法的每个组件部分基于系统互联网内的每个相应计算节点的计算出的计算引力被分布到云计算范式和客户端网络计算范式中的适当计算节点。算法的每个组件部分的计算工作负载被分布到具有该算法的对应组件部分的云计算范式和客户端网络计算范式中的相应计算节点以用于处理。根据其他说明性实施例,提供了用于在不同计算范式的计算节点之间分布计算工作负载的计算机系统和计算机程序产品。

根据不同的说明性实施例,将与算法的每个组件部分对应的每个相应计算工作负载的结果高速缓存在内容递送网络边缘服务器上,该内容递送网络边缘服务器将结果提供给其他客户端计算节点而无需重复计算。进一步地,该不同的说明性实施例识别算法的位于系统互联网的云计算范式中的组件部分。此外,该不同的说明性实施例接收用于在系统互联网中部署算法的组件部分的输入,并计算云计算范式中的每个计算节点和客户端网络计算范式中的每个计算节点针对要被部署在系统互联网中的算法的组件部分的计算引力。然后,该不同的说明性实施例基于与云计算范式中的每个计算节点和客户端网络计算范式中的每个计算节点对应的计算引力来确定在系统互联网中的具有最高计算引力分数的计算节点以用于部署算法的组件部分,并将算法的组件部分部署到在系统互联网中的具有最高计算引力分数的计算节点。

因此,该不同的说明性实施例通过计算系统互联网的不同计算范式内的每个计算节点的计算引力来在不同计算范式的计算节点之间分布算法的组件部分的计算工作负载,从而提供数据处理领域中的技术效果和实践应用。因此,该不同的说明性实施例的优点包括:减少了不同计算范式内的计算节点工作负载、减少了网络延迟、减少了加载时间、提高了数据传输速度和性能,以及减少了对用户请求的响应时间。

附图说明

现在将参考附图仅通过示例的方式来描述本发明的实施例,在附图中:

图1是可以实现说明性实施例的数据处理系统的网络的图形表示;

图2是可以实现说明性实施例的数据处理系统的图;

图3是示出了可以实现说明性实施例的云计算环境的图;

图4是示出了根据说明性实施例云计算环境的抽象层的示例的图;

图5是示出了根据说明性实施例的系统互联网的示例的图;

图6是示出了根据说明性实施例的用于在系统互联网内部署人工智能应用的过程的流程图;以及

图7是示出了根据说明性实施例的用于基于系统互联网内的计算引力来分布人工智能应用的组件部分的计算工作负载的过程的流程图。

具体实施方式

本发明可以是任何可能的技术细节集成度的系统、方法和/或计算机程序产品。计算机程序产品可包括其上具有用于使处理器执行本发明的各方面的计算机可读程序指令的计算机可读存储介质(或多个介质)。

计算机可读存储介质可以是可保留和存储供指令执行设备使用的指令的有形设备。计算机可读存储介质可以是,例如但不限于,电子存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备、或者前述的任意合适的组合。计算机可读存储介质的更具体示例的非穷尽列表包括以下各项:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式紧凑盘只读存储器(CD-ROM)、数字通用盘(DVD)、记忆棒、软盘、诸如穿孔卡之类的机械编码设备或具有记录在其上的指令的槽中的凸出结构、以及上述各项的任何合适的组合。如本文所使用的计算机可读存储介质不应被解释为暂时性信号本身,例如无线电波或其他自由传播的电磁波、通过波导或其他传输介质传播的电磁波(例如,穿过光纤电缆的光脉冲)或通过电线发射的电信号。

本文所描述的计算机可读程序指令可以经由网络(例如,互联网、局域网、广域网和/或无线网络)从计算机可读存储介质下载到相应的计算/处理设备,或者下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光传输纤维、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配器卡或网络接口接收来自网络的计算机可读程序指令,并转发计算机可读程序指令以存储在相应计算/处理设备内的计算机可读存储介质中。

用于执行本发明的操作的计算机可读程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、集成电路的配置数据、或以一种或多种程序设计语言的任何组合编写的源代码或目标代码,这些程序设计语言包括面向对象的程序设计语言(诸如Smalltalk、C++等)和过程程序设计语言(诸如“C”程序设计语言或类似的程序设计语言)。计算机可读程序指令可以完全地在用户计算机上执行、部分在用户计算机上执行、作为独立软件包执行、部分在用户计算机上部分在远程计算机上执行或者完全在远程计算机或服务器上执行。在后一种情况下,远程计算机可通过任何类型的网络(包括局域网(LAN)或广域网(WAN))连接至用户计算机,或者可连接至外部计算机(例如,使用互联网服务提供商通过互联网)。在一些实施例中,包括例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA)的电子电路可以通过利用计算机可读程序指令的状态信息使电子电路个性化来执行计算机可读程序指令,以便执行本发明的各方面。

下面将参考根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述本发明。应当理解,流程图和/或框图的每个框以及流程图和/或框图中各框的组合,都可以由计算机可读程序指令实现。

这些计算机可读程序指令可被提供给计算机或其他可编程数据处理装置的处理器以产生机器,使得经由计算机或其他可编程数据处理装置的处理器执行的指令创建用于实现在流程图和/或框图的或多个框中指定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置、和/或其他设备以特定方式工作,从而,其中存储有指令的计算机可读存储介质包括包含实现流程图和/或框图中的或多个框中规定的功能/动作的方面的指令的制造品。

计算机可读程序指令也可以被加载到计算机、其他可编程数据处理装置、或其他设备上,使得在计算机、其他可编程装置或其他设备上执行一系列操作步骤,以产生计算机实现的处理,使得在计算机、其他可编程装置或其他设备上执行的指令实现流程图和/或框图中的或多个框中规定的功能/动作。

附图中的流程图和框图示出了根据本发明的不同实施例的系统、方法和计算机程序产品的可能实现方式的架构、功能和操作。对此,流程图或框图中的每个框可表示指令的模块、段或部分,其包括用于实现指定的逻辑功能的一个或多个可执行指令。在一些替代的实施方式中,框中标注的功能可以不按照图中标注的顺序发生。例如,连续示出的两个框实际上可以作为一个步骤完成,同时、基本上同时、以部分或完全时间上重叠的方式执行,或者框有时可以以相反的顺序执行,这取决于所涉及的功能。也要注意的是,框图和/或流程图中的每个框、以及框图和/或流程图中的框的组合,可以用执行规定的功能或动作或执行专用硬件与计算机指令的组合的专用的基于硬件的系统来实现。

现在参考附图,并且具体地参考图1-图5,提供了可以实现说明性实施例的数据处理环境的图。应当理解,图1-图5仅意味着示例,并且不旨在断言或暗示针对其中可以实现不同实施例的环境的任何限制。可以对所描绘的环境做出许多修改。

图1描绘了可以实现说明性实施例的数据处理系统的网络的图形表示。网络数据处理系统100是在其中可以实现说明性实施例的计算机、数据处理系统和其他设备(例如,系统互联网)的网络。网络数据处理系统100包含网络102,网络102是用于提供计算机、数据处理系统和在网络数据处理系统100内连接在一起的其他设备之间的通信链路的介质。例如,网络102可以是例如包括具有诸如有线通信链路、无线通信链路、光纤电缆等的连接的边缘服务器的内容递送网络。

在所描绘的示例中,服务器104和服务器106连同存储装置108连接到网络102。服务器104和服务器106可以是例如具有到网络102的高速连接的服务器计算机。此外,服务器104和服务器106可向客户端设备提供一个或多个服务,例如人工智能数据服务等。而且,应当注意,服务器104和服务器106可各自表示多个服务器计算机,例如云计算范式或环境中的集中式经典计算机和量子计算机。

客户端110、客户端112和客户端114也连接到网络102。客户端110、112和114是服务器104和服务器106的客户端。客户端110、112和114表示客户端网络计算范式或环境内的多个客户端侧计算节点或设备。在该示例中,客户端110、112和114被示为具有到网络102的有线通信链路的桌上型计算机或个人计算机。然而,应当注意,客户端110、112和114仅是示例并且可以表示具有到网络102的有线或无线通信链路的其他类型的数据处理系统,例如网络计算机、膝上型计算机、手持式计算机、智能电话、智能手表、智能电视、智能电器、智能家居、智能车辆、游戏设备、自助服务终端等。客户端110、112和114的用户可以利用客户端110、112和114来请求由服务器104和服务器106提供的服务。

存储装置108是能够以结构化格式或非结构化格式存储任何类型的数据的网络存储设备。此外,存储装置108可以表示多个网络存储设备。进一步,存储器108可存储具有多个组件部分的人工智能应用或计算机算法、每个相应人工智能应用或计算机算法的多个组件部分的标识符和网络地址、每个相应人工智能应用或算法的每个相应组件部分的计算复杂度和计算要求等。此外,存储装置108可存储其他类型的数据,诸如认证或凭证数据,其可包括例如与客户端设备用户相关联的用户名、密码和生物统计数据。

此外,应当注意,网络数据处理系统100可以包括任何数量的附加服务器、客户端、存储设备和未示出的其他设备。位于网络数据处理系统100中的程序代码可以存储在计算机可读存储介质上并且下载到计算机或其他数据处理设备以供使用。例如,程序代码可存储在服务器104上的计算机可读存储介质上,且通过网络102下载到客户端110以在客户端110上使用。

在所描绘的示例中,网络数据处理系统100可以被实现为许多不同类型的通信网络,例如互联网、内联网、局域网(LAN)、广域网(WAN)、电信网络或其任何组合。图1旨在仅作为示例,而不是作为对于不同说明性实施例的架构限制。

现在参考图2,描绘了根据说明性实施例的数据处理系统的图。数据处理系统200是计算机(诸如图1中的服务器104或客户端110)的示例,实现说明性实施例的处理的计算机可读程序代码或指令可以位于所述计算机中。在该示例中,数据处理系统200包括通信结构202,其提供处理器单元204、存储器206、永久性存储装置208、通信单元210、输入/输出(I/O)单元212和显示器214之间的通信。

处理器单元204用于执行可以被加载到存储器206中的软件应用和程序的指令。处理器单元204可以是一个或多个硬件处理器设备的集合或者可以是多核处理器,这取决于特定的实施方式。

存储器206和永久性存储装置208是存储设备216的示例。计算机可读存储设备是能够存储信息(例如但不限于,数据、功能形式的计算机可读程序代码、和/或基于瞬时或永久的其他合适的信息)的任何硬件。进一步地,计算机可读存储设备排除传播介质。在这些实例中,存储器206可以是(例如)随机存取存储器(RAM)或任何其他合适的易失性或非易失性存储设备,例如快闪存储器。永久性存储装置208可以采取各种形式,这取决于特定的实施方式。例如,永久性存储装置208可包含一个或多个设备。例如,永久性存储装置208可以是磁盘驱动器、固态驱动器、可重写光盘、可重写磁带或上述的一些组合。由永久性存储装置208使用的介质可以是可移除的。例如,可移动硬盘驱动器可以用于永久性存储装置208。

在该示例中,通信单元210经由网络(例如,图1中的网络102)提供与其他计算机、数据处理系统和设备的通信。通信单元210可通过使用物理和无线通信链路两者提供通信。物理通信链路可以利用例如有线、电缆、通用串行总线、或任何其他物理技术来建立用于数据处理系统200的物理通信链路。无线通信链路可以利用例如短波、高频、超高频、微波、无线保真(Wi-Fi)、蓝牙

输入/输出单元212允许与可以连接到数据处理系统200的其他设备进行数据的输入和输出。例如,输入/输出单元212可以通过小键盘、键盘、鼠标、麦克风和/或一些其他合适的输入设备为用户输入提供连接。显示器214提供向用户显示信息的机制,并且可以包括允许用户通过例如用户界面或输入数据进行屏幕上选择的触摸屏能力。

用于操作系统、应用和/或程序的指令可以位于存储设备216中,存储设备216通过通信结构202与处理器单元204通信。在该说明性的示例中,指令是永久性存储装置208上的功能形式。这些指令可以被加载到存储器206中用于由处理器单元204运行。不同实施例的过程可以由处理器单元204使用计算机实现的指令来执行,所述计算机实现的指令可以位于存储器(例如,存储器206)中。这些程序指令被称为可以由处理器单元204中的处理器读取和运行的程序代码、计算机可用程序代码或计算机可读程序代码。在不同的实施方式中,程序指令可实施在不同的物理计算机可读存储设备上,例如存储器206或永久性存储装置208。

程序代码218以功能形式位于选择性可移除的计算机可读介质220上,并且可被加载到或传送到数据处理系统200以用于处理器单元204运行。程序代码218和计算机可读介质220形成计算机程序产品222。在一个示例中,计算机可读介质220可以是计算机可读存储介质224或计算机可读信号介质226。计算机可读存储介质224可以包括,例如,光盘或磁盘,光盘或磁盘被插入或放置到作为永久性存储装置208的一部分的驱动器或其他设备中,用于传送到作为永久性存储装置208的一部分的存储设备(诸如,硬盘驱动器)上。计算机可读存储介质224还可以采用永久性存储装置的形式,例如连接到数据处理系统200的硬盘驱动器、拇指驱动器或闪存。在一些实例中,计算机可读存储介质224可能不能从数据处理系统200移除。

替代地,可以使用计算机可读信号介质226将程序代码218传送至数据处理系统200。计算机可读信号介质226可以是例如包含程序代码218的传播的数据信号。例如,计算机可读信号介质226可以是电磁信号、光信号和/或任何其他合适类型的信号。这些信号可以通过通信链路(例如,无线通信链路、光纤电缆、同轴电缆、电线和/或任何其他合适类型的通信链路)传输。换言之,在说明性示例中,通信链路和/或连接可以是物理或无线的。计算机可读介质还可采取非有形介质的形式,诸如包含程序代码的通信链路或无线传输。

在一些说明性实施例中,程序代码218可以通过网络从另一设备或数据处理系统通过计算机可读信号介质226下载到永久性存储装置208,以在数据处理系统200内使用。例如,存储在数据处理系统中的计算机可读存储介质中的程序代码可以通过网络从数据处理系统下载到数据处理系统200。提供程序代码218的数据处理系统可以是服务器计算机、客户端计算机或能够存储和传输程序代码218的一些其他设备。

为数据处理系统200示出的不同组件不意味着对可以实现不同实施例的方式提供架构限制。不同的说明性实施例可以在数据处理系统中实现,该数据处理系统包括除了为数据处理系统200示出的那些组件之外的组件或包括作为为数据处理系统200示出的那些组件的替代的组件。图2中示出的其他组件可以不同于示出的说明性示例。不同的实施例可以使用能够执行程序代码的任何硬件设备或系统来实现。作为一个示例,数据处理系统200可以包括与无机组件集成的有机组件和/或可以完全由不包括人类的有机组件组成。例如,存储设备可以由有机半导体组成。

作为另一示例,数据处理系统200中的计算机可读存储设备是可存储数据的任何硬件装置。存储器206、永久性存储装置208和计算机可读存储介质224是有形形式的物理存储设备的示例。

在另一示例中,总线系统可用于实现通信结构202,并且可包括一个或多个总线,诸如系统总线或输入/输出总线。当然,可以使用在附接到总线系统的不同组件或设备之间提供数据传送的任何合适类型的架构来实现总线系统。此外,通信单元可包括用于发送和接收数据的一个或多个设备,诸如调制解调器或网络适配器。进一步地,存储器可以是例如存储器206或诸如在可能存在于通信结构202中的接口和存储器控制器集线器中发现的高速缓存。

应当理解,虽然本公开包括关于云计算的详细描述,但是本文所引用的教导的实现不限于云计算环境。相反,说明性实施例能够结合现在已知的或以后开发的任何其他类型的计算环境来实现。云计算是服务递送的模型,用于使得能够方便地、按需地网络访问可配置计算资源的共享池,该可配置计算资源例如是网络、网络带宽、服务器、处理、存储器、存储装置、应用、虚拟机和服务,其可以以最小的管理努力或与服务的提供者的交互来快速供应和释放。该云模型可以包括至少五个特性、至少三个服务模型和至少四个部署模型。

这些特性可包括例如按需自助服务、广泛网络接入、资源池、快速弹性和测量服务。按需自助服务允许云消费者单方面地按需自动提供计算能力,诸如服务器时间和网络存储,而不需要与服务的提供者的人类交互。广泛网络接入提供通过网络可用和通过标准机制访问的能力,该标准机制促进异构瘦客户端平台或胖客户端平台(例如,移动电话、膝上型计算机和个人数字助理)的使用。资源池允许提供商的计算资源被池化以使用多租户模型来服务多个消费者,其中不同的物理和虚拟资源根据需要动态地分配和重新分配。存在位置独立性的感觉,因为消费者通常不具有对所提供的资源的确切位置的控制或了解,但可能能够在较高抽象层次上指定位置,例如国家、州或数据中心。快速弹性提供能够被快速和弹性地提供(在一些情况下自动地)以快速缩小和快速释放以快速放大的能力。对于消费者而言,可用于供应的能力通常显得不受限制并且可以在任何时间以任何数量购买。测量的服务允许云系统通过在适合于服务类型的某个抽象级别(例如,存储、处理、带宽和活跃用户账户)处利用计量能力来自动控制和优化资源使用。可以监视、控制和报告资源使用,为所利用的服务的提供者和消费者提供透明度。

服务模型可包括例如软件即服务(SaaS)、平台即服务(PaaS)和基础设施即服务(IaaS)。软件即服务是提供给消费者使用提供商在云基础设施上运行的应用的能力。可通过诸如web浏览器(例如,基于web的电子邮件)之类的瘦客户端接口从不同客户端设备访问应用。消费者不管理或控制包括网络、服务器、操作系统、存储或甚至单独的应用能力的底层云基础设施,可能的例外是有限的用户特定应用配置设置。平台即服务是提供给消费者以将消费者创建或获取的使用由提供者支持的编程语言和工具创建的应用部署到云基础结构上的能力。消费者不管理或控制包括网络、服务器、操作系统或存储的底层云基础设施,但是对所部署的应用和可能的应用托管环境配置具有控制。基础架构即服务是提供给消费者供应处理、存储、网络和消费者能够部署并运行任意软件的其他基本计算资源的能力,所述任意软件可包括操作系统和应用程序。消费者不管理或控制底层云基础设施,而是具有对操作系统、存储、所部署的应用的控制,以及对所选联网组件(诸如例如主机防火墙)的可能受限的控制。

部署模型可以包括例如私有云、社区云、公共云和混合云。私有云是仅为组织操作的云基础设施。私有云可由组织或第三方管理,并且可存在于场所内或场所外。社区云是由若干组织共享的云基础设施,并且支持共享了诸如任务、安全要求、策略和合规性考虑之类的问题的特定社区。社区云可由组织或第三方管理,并且可存在于场所内或场所外。公共云是公众或大型行业组可用的云基础设施,并且由销售云服务的组织拥有。混合云是由两个或更多个云(诸如例如私有云、社区云和公共云)组成的云基础设施,这些云保持为唯一实体,但通过使数据和应用可移植性的标准化或专有技术(诸如例如云突发以用于云之间的负载平衡)绑定在一起。

云计算环境是面向服务的,集中于无状态、低耦合、模块化和语义互操作性。云计算的核心是包括互连节点网络的基础设施。

现在参考图3,描绘了图示可以实现说明性实施例的云计算环境的图。在该说明性示例中,云计算环境300包括云消费者使用的本地计算设备可以与其通信的一组一个或多个云计算节点310,本地计算设备是例如个人数字助理或智能电话320A、桌上型计算机320B、膝上型计算机320C和/或汽车计算机系统320N。云计算节点310可以是例如图1中的服务器104和服务器106,并且可以包括经典计算机和量子计算机。本地计算设备320A-320N可以是例如图1中的客户端110-114。

云计算节点310可彼此通信并且可被物理地或虚拟地分组成一个或多个网络,诸如上文所述的私有云、社区云、公共云或混合云或其组合。这允许云计算环境300提供基础设施、平台和/或软件作为服务,云消费者无需为其维护本地计算设备(诸如,本地计算设备320A-320N)上的资源。应当理解,本地计算设备320A-320N的类型仅旨在是说明性的,并且云计算节点310和云计算环境300可以使用例如web浏览器通过任何类型的网络和/或网络可寻址连接与任何类型的计算机化设备通信。

现在参考图4,描绘了根据说明性实施例的说明抽象模型层的图。在该说明性示例中示出的功能抽象层的集合可以由云计算环境提供,诸如图3中的云计算环境300。应事先理解,图4中所示的组件、层和功能仅旨在是说明性的,并且本发明的实施例不限于此。如所描绘的,提供了以下的层和对应的功能。

云计算环境400的抽象层包括硬件和软件层402、虚拟化层404、管理层406和工作负载层408。硬件和软件层402包括云计算环境的硬件和软件组件。硬件组件可包括例如主机410、基于RISC(精简指令集计算机)架构的服务器412、服务器414、刀片服务器416、存储设备418以及网络和联网组件420。在一些说明性实施例中,软件组件可包括例如网络应用服务器软件422和数据库软件424。

虚拟化层404提供抽象层,从该抽象层可以提供虚拟实体的以下示例:虚拟服务器426;虚拟存储装置428;虚拟网络430,包括虚拟专用网络;虚拟应用和操作系统432;以及虚拟客户端434。

在一个示例中,管理层406可以提供以下描述的功能。资源供应436提供用于在云计算环境内执行任务的计算资源和其他资源的动态采购。计量和定价438在资源被利用在云计算环境内时提供成本跟踪,并为这些资源的消费开具账单或发票。在一个示例中,这些资源可以包括应用软件许可证。安全性为云消费者和任务提供身份验证,以及为数据和其他资源提供保护。用户门户440为消费者和系统管理员提供对云计算环境的访问。服务水平管理442提供云计算资源分配和管理,使得满足所需的服务水平。服务水平协议(SLA)规划和履行444提供根据SLA预期未来需求的云计算资源的预安排和采购。

工作负载层408提供可以利用云计算环境的功能的示例。可以由工作负载层408提供的示例工作负载和功能可以包括地图和导航446、软件开发和生命周期管理448、虚拟教室教育递送450、数据分析处理452、事务处理454和计算工作负载分布管理456。

雾计算引力分量(例如,物联网)可以建议计算机算法的哪些部分可以被划分成不同的计算范式。应当注意,计算机算法的步骤可以并行运行、在专用硬件上运行等。说明性实施例计算雾计算引力,使得说明性实施例可以将计算机算法和对应的静态数据推送到客户端设备边缘以用于计算。利用诸如Swift、C#或JavaScript之类的各种编程语言将算法移动到客户端设备边缘创建了雾计算的流水线。

说明性实施例将计算机算法或算法的组件部分往外分布到客户端设备边缘,使得每个客户端侧边缘计算机可以执行算法的计算工作负载的一部分,并且然后将计算工作负载的该部分的结果高速缓存在内容递送网络边缘服务器上以供其他客户端计算机利用,而无需重复计算。说明性实施例分割和运输基于雾计算引力的算法。雾计算引力是基于特定计算工作负载与特定边缘计算节点或设备的拟合的该计算工作负载对该特定边缘计算节点的拉力。

说明性实施例桥接在具有高度复杂的人工智能组件的大型人工智能应用内的内容递送网络边缘计算和混合云计算。例如,虚拟专业体育应用可以利用超过14种人工智能数据洞察服务和定制的数学和机器学习方法。每天,来自客户端用户的超过100亿个用户请求可被人工智能数据服务接收。当前,内容递送网络边缘计算和混合云计算不能预先计算人工智能数据洞察,这是由于例如优化团队阵容、建议玩家交易、或评估团队价值的组合特征空间。说明性实施例使得人工智能应用(或计算机算法)的适当组件部分能够经由雾计算引力被向上拉到客户端侧边缘计算机节点。

说明性实施例可以将计算机算法的其他组件部分转变成不同的计算范式,例如量子计算。在此上下文中,量子计算是用于特定问题的计算加速器。说明性实施例可以通过在云计算范式中使用量子计算机来加速对支持向量机的应用和训练。支持向量机是具有相关联的学习算法的监督学习模型,其分析用于分类和回归分析的数据。神经元形态计算机芯片(例如,真北芯片(True North chip))可加速神经网络的处理,诸如人工智能应用。

说明性实施例在由不同的计算范式组成的系统互联网内的集中式基于云的经典计算机、集中式基于云的量子计算机以及客户端网络边缘计算机之间分布计算工作负载。说明性实施例将来自不同计算范式的计算机的工作负载计算的结果高速缓存在内容递送网络边缘服务器上,该内容递送网络边缘服务器将结果提供给客户端网络计算节点而无需重复计算。当计算雾计算引力时,说明性实施例考虑与计算机算法的不同组件相关联的计算的复杂度、计算节点可用性、以及用于确定哪个计算节点应该被分配给定计算工作负载的计算工作负载拟合。

边缘计算使处理更靠近数据源。换言之,数据不需要被发送到远程云或其他集中式系统来进行处理。通过消除将数据发送到集中式系统以便处理所花费的距离和时间,说明性实施例提高了数据传输速度和性能。应注意,数据传输包括来自用户的请求。

雾计算是定义边计算如何工作的标准。雾计算促进在边缘计算设备和云计算设备之间的计算、存储和联网服务的操作。云计算经由互联网提供计算资源作为服务,该服务是集中可用的实用程序。

说明性实施例利用雾引力组件(其包括计算边缘节点)来确定算法传输流水线的出现。算法传输流水线对数据进行预处理,准备数据供目标边缘计算节点或设备计算。说明性实施例利用算法传输流水线相切(tangent)来将特定操作者(例如,人工智能应用组件)移动到边缘计算设备上的不同计算范式组件。换言之,算法传输流水线相切将计算移动到不同的计算范式,这需要完全不同的数据表示。说明性实施例基于拟合到内容递送网络边缘服务器的问题(即,计算工作负载)来增强算法传输流水线亲和性。说明性实施例还基于拟合到云计算的问题(即,计算工作负载)来增强算法传输流水线亲和性。说明性实施例从已经被用于解决全计算问题(即,分布在不同计算范式和边缘设备之间的全计算工作负载的结果)的不同计算范式(例如,不同网络)和边缘计算设备的组合中确定紧急云。

说明性实施例将计算引力方程放置在系统互联网的每个端点设备上,该系统互联网包括存储器、芯片、核、盘等。说明性实施例向每个潜在的算法传输流水线分配在位于云上的算法或算法的部分处拉动的力。此外,云在位于边缘服务器的算法的聚合处具有拉动的引力,该算法的聚合是在系统互联网中运行的所有算法。计算引力方程的示例如下:

其中,“F”是力;“G”是等于客户端计算的签名、网络带宽、请求量和数据有效载荷的大小的引力常数;“m”是质量;“r”是网络的半径;以及

其中,“x”描述计算问题(例如,多少次计算);“c”描述计算节点的硬件;“B

到向量模型的输入数据模式(其与计算机节点的能力一起被输入到深度学习算法(例如,人工智能应用)中)为良好计算模式(即,计算范式的类型,诸如量子计算)提供softmax类和概率。Softmax向多类问题中的每个类分配十进制概率。这些十进制概率必须加起来为1.0。Softmax通过在输出层之前的神经网络层来实现。softmax层必须具有与输出层相同数量的节点。Softmax计算每个可能的类的概率。当构建针对仅具有一个正确回答的问题的分类器时,softmax被应用于原始输出。应用softmax在分母中考虑原始输出的所有元素,这意味着由softmax函数产生的不同概率是相关的。

混合云内的计算节点中的每个计算节点计算针对每个人工智能应用模型或机器学习流水线的一部分(例如,人工智能应用模型的集合)的计算引力组件分数。获胜的计算引力组件(即,具有最高计算引力分数的计算端点节点)将人工智能应用模型拉到它们在系统互联网内的位置。

因此,说明性实施例提供了克服在不同的计算范式之间分配计算工作负载的技术问题的一个或多个技术方案。因此,这些一个或多个技术方案通过计算系统互联网的不同计算范式内的每个计算节点的计算引力来提供数据处理领域中的技术效果和实际应用,以便在不同计算范式的计算节点之间分布具有复杂人工智能组件的大型应用的计算工作量。因此,说明性实施例的优点包括减少了不同计算范式内的计算节点工作量、减少了网络延迟、减少了加载时间、提高了数据传输速度和性能以及减少了对用户请求的响应时间。

现在参考图5,描绘了根据说明性实施例的系统互联网的示例的图。系统的互联网500可在数据处理系统的网络中实现,诸如图1中的网络数据处理系统100。系统的互联网500是用于基于与不同计算范式内的每个相应计算节点对应的计算出的计算引力在系统的互联网500内的不同计算范式的计算节点之间分布具有复杂人工智能组件的大型应用的计算工作负载的网络、硬件和软件的组合。

在该示例中,系统互联网500包括云计算范式502、客户端网络计算范式504和内容递送网络506。云计算范式502包括人工智能应用508、集中式经典计算机510和集中式量子计算机512。人工智能应用508可表示任何类型的人工智能应用或计算机算法。集中式经典计算机510和集中式量子计算机512可以是例如图1中的服务器104和服务器106。而且,应当注意,集中式经典计算机510可表示多个经典计算机,而集中式量子计算机512可表示云计算范式502内的多个量子计算机。

客户端网络计算范式504包括客户端侧边缘计算机514和其他客户端计算机516。客户端侧边缘计算机514和其他客户端计算机516可以是例如图1中的客户端110和客户端112。此外,应注意,客户端侧边缘计算机514可以表示多个客户端侧边缘计算节点,并且其他客户端计算机516可以表示客户端网络计算范式504内的多个其他客户端计算节点。

内容递送网络506包括边缘服务器518。边缘服务器518是存在于内容递送网络506的逻辑边缘处并且用作不同计算范式、云计算范式502和客户端网络计算范式504之间的连接点的计算机。

人工智能应用508包括组件部分520。组件部分520表示包括人工智能应用508的多个不同的软件组件。组件部分520中的每个组件部分具有不同功能,其中不同的计算复杂度要求不同的计算资源。

说明性实施例基于与不同计算范式内的每个相应计算节点对应的计算出的计算引力,将人工智能应用508的不同组件部分分布在系统互联网500内的不同计算范式的计算节点之间。例如,说明性实施例基于例如与人工智能应用508的每个组件部分520对应的计算复杂度、计算节点可用性、计算节点计算工作负载拟合等,使用计算引力方程(例如上文所示的计算引力方程)来计算集中式经典计算机510的计算引力522、集中式量子计算机512的计算引力524和客户端侧边缘计算机514的计算引力526。

基于计算出的集中式经典计算机510的计算引力522、集中式量子计算机512的计算引力524和客户端侧边缘计算机514的计算引力526,说明性实施例分别将组件部分520的特定组件部分(诸如人工智能组件部分528、人工智能组件部分530和人工智能组件部分532)分布到集中式经典计算机510、集中式量子计算机512和客户端侧边缘计算机514。进一步地,基于组件部分520中的哪个特定组件部分位于特定计算节点上,诸如位于集中式经典计算机510上的人工智能组件部分528、位于集中式量子计算机512上的人工智能组件部分530和位于客户端侧边缘计算机514上的人工智能组件部分532,说明性实施例分别将对应的计算工作负载分配给该特定计算节点,诸如集中式经典计算机510上的工作负载534、集中式量子计算机512上的工作负载536和客户端侧边缘计算机514上的工作负载538。

分布在集中式经典计算机510、集中式量子计算机512和客户端侧边缘计算机514上的每个相应的计算工作负载分别生成计算结果,例如,结果540、结果542和结果544。说明性实施例将边缘服务器上的结果540、结果542和结果544(诸如,边缘服务器518上的高速缓存的计算结果546)高速缓存在内容递送网络506内。应注意,高速缓存的计算结果546表示存储在内容递送网络506内的多个不同边缘服务器上的多个高速缓存的计算结果。此外,示例性实施方式将存储在多个不同边缘服务器上的多个高速缓存的计算结果提供给其他客户端计算机,诸如,其他客户端计算机516,使得其他客户端计算机不必重复计算。此外,说明性实施例可以形成由集中式经典计算机510、集中式量子计算机512和客户端侧边缘计算机514组成的紧急云,该紧急云有助于生成分布在不同计算范式和计算节点之间的完整计算工作负载的结果。

现在参考图6,示出了根据说明性实施例的用于在系统互联网内部署人工智能应用的过程的流程图。图6中所示的过程可以在诸如图2中的数据处理系统200的计算机中实现。

该过程在计算机接收用于计算多个不同计算范式中的多个计算节点的计算引力的输入时开始(步骤602)。计算机识别云计算范式中的每个计算节点、客户端网络计算范式中的每个边缘计算节点和内容递送网络计算范式中的每个边缘计算节点(步骤604)。计算机基于对云计算范式中的每个计算节点、客户端网络计算范式中的每个边缘计算节点和内容递送网络计算范式中的每个边缘计算节点的识别来形成系统互联网(步骤606)。

随后,计算机接收用于在系统互联网中部署人工智能应用的组件部分的输入(步骤608)。计算机计算云计算范式中的每个计算节点、客户端网络计算范式中的每个边缘计算节点和内容递送网络计算范式中的每个边缘计算节点针对要部署在系统互联网中的人工智能应用的组件部分的计算引力(步骤610)。计算机基于与云计算范式中的每个计算节点、客户端网络计算范式中的每个边缘计算节点和内容递送网络计算范式中的每个边缘计算节点的计算引力来确定在系统互联网中的具有最高计算引力分数的计算节点,以用于部署人工智能应用的组件部分(步骤612)。

计算机将人工智能应用的组件部分部署到系统互联网中的具有最高计算引力分数的计算节点(步骤614)。此外,计算机移动云计算范式的云容器以形成紧急云,该紧急云是用于生成分布在不同计算范式和计算节点之间的完整计算工作负载的结果的不同计算范式和计算节点的组合(步骤616)。需要说明的是,紧急云包括计算引力分数最高的计算节点。

然后,计算机确定是否接收到用于在系统互联网中部署人工智能应用的另一组件的输入(步骤618)。如果计算机确定接收到要在系统互联网中部署人工智能应用的另一组件的输入(步骤618的输出是“是”),则过程返回到步骤610,在步骤610,计算机计算云计算范式中的每个计算节点、客户端网络计算范式中的每个边缘计算节点和内容递送网络计算范式中的每个边缘计算节点针对要在系统互联网中部署的人工智能应用的另一组件的计算引力。如果计算机确定未接收到在系统互联网中部署人工智能应用的另一组件的输入(步骤618的输出是“否”),则之后,该过程终止。

现在参见图7,示出了根据说明性实施例的用于基于系统互联网内的计算引力来分布人工智能应用的组件部分的计算工作负载的过程的流程图。图7中所示的过程可以在诸如图2中的数据处理系统200的计算机中实现。

当计算机识别位于系统互联网的云计算范式中的人工智能应用(或算法)的组件部分时,该过程开始(步骤702)。计算机计算云计算范式中的每个集中式经典计算机和量子计算机以及系统互联网内的客户端网络计算范式中的每个边缘计算机的计算引力,其中考虑了与人工智能应用的组件部分对应的计算复杂度,计算机可用性以及计算机计算工作负载拟合(步骤704)。

计算机基于计算出的每个相应计算机的计算引力来将人工智能应用的每个组件部分分布到云计算范式中的适当的集中式经典计算机、云计算范式中的集中式量子计算机、或客户端网络计算范式中的边缘计算机(步骤706)。进一步地,计算机将人工智能应用的每个组件部分的计算工作负载分布到具有人工智能应用的对应组件部分的云计算范式的相应集中式经典计算机、云计算范式的集中式量子计算机、或客户端网络计算范式的边缘计算机以用于处理(步骤708)。

计算机将与人工智能应用的每个组件部分对应的每个相应的计算工作负载的结果高速缓存到内容递送网络边缘服务器上,该内容递送网络边缘服务器将结果提供给其他客户端计算机而无需重复计算(步骤710)。此后,该过程终止。

因此,本发明的说明性实施例提供了一种用于基于与不同计算范式内的每个相应计算节点对应的计算出的计算引力在系统互联网内的不同计算范式的计算节点之间分布具有复杂人工智能组件的大型应用的计算工作负载的计算机实现的方法、计算机系统和计算机程序产品。已经出于说明的目的呈现了本发明的各种实施方式的描述,但并不旨在是详尽的或者限于所公开的实施方式。在不脱离所描述的实施例的范围和精神的情况下,许多修改和变化对本领域普通技术人员将是显而易见的。这里使用的术语被选择来最好地解释实施例的原理、实际应用或对在市场中找到的技术的技术改进,或者使得本领域普通技术人员能够理解本文公开的实施例。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号