CN114860401A - 异构云桌面调度系统、方法、服务系统、装置及介质 - Google Patents

异构云桌面调度系统、方法、服务系统、装置及介质 Download PDF

Info

Publication number
CN114860401A
CN114860401A CN202210495372.0A CN202210495372A CN114860401A CN 114860401 A CN114860401 A CN 114860401A CN 202210495372 A CN202210495372 A CN 202210495372A CN 114860401 A CN114860401 A CN 114860401A
Authority
CN
China
Prior art keywords
cloud desktop
heterogeneous
instance
scheduling
computing power
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.)
Granted
Application number
CN202210495372.0A
Other languages
English (en)
Other versions
CN114860401B (zh
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.)
China Telecom Corp Ltd
Original Assignee
China Telecom Corp Ltd
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 China Telecom Corp Ltd filed Critical China Telecom Corp Ltd
Priority to CN202210495372.0A priority Critical patent/CN114860401B/zh
Publication of CN114860401A publication Critical patent/CN114860401A/zh
Application granted granted Critical
Publication of CN114860401B publication Critical patent/CN114860401B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • 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/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • G06F9/452Remote windowing, e.g. X-Window System, desktop virtualisation
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Stored Programmes (AREA)
  • Power Sources (AREA)

Abstract

本公开实施例中提供异构云桌面调度系统、方法、服务系统、装置及介质。所述异构云桌面调度系统包括:异构云桌面调度模块,用于根据所述云桌面的用户的算力调度需求调度云桌面实例及匹配的异构算力实例;其中,所述云桌面实例用于向所述用户设备提供云桌面;每个所述异构算力实例对应于异构芯片所配置;网络管理模块,用于配置并管理所述云桌面实例及异构算力实例之间的网络通信;配置管理模块,用于挂载所述异构算力实例中的异构算力开发工具至所述云桌面实例以能被云桌面实例所调用。本公开中实现各种异构芯片算力可用于云桌面的软件开发服务,有效解决现有技术问题。

Description

异构云桌面调度系统、方法、服务系统、装置及介质
技术领域
本公开涉及云桌面技术领域,尤其涉及异构云桌面调度系统、方法、服务系统、装置及介质。
背景技术
对于软件开发服务能力的入云已成为业界主流,而云桌面便是其中常用的服务。目前,比较流行的,有提供云桌面服务用于例如提供人工智能(AI)模型的开发与训练等。
传统的云桌面,依赖于虚拟机(Virtual Machine)的支持,为用户提供软件开发服务,然而每个虚拟机中各自均需要包含独立的内核(即操作系统),每台虚拟机在宿主机上占用资源多,灵活性差,且对于如AI模型集成开发场景而言开发效率低下,耗时耗力且依赖于人工开通虚拟机权限。
随着各种异构芯片算力的兴起,而目前的AI集成开发云桌面支持程度不够,具体表现为由于芯片架构的差异,导致传统的X86架构容器无法在架构运行,无法满足用户的需求;同时异构算力往往结合着厂家自身开发的异构芯片架构下的工具,如果单纯的使用厂家提供的开发工具又无法满足x86架构下云桌面软件多样化与灵活性的需求。
基于GPU算力在AI计算上的效率,导致目前的云桌面普遍地仅支持对于GPU的AI集成开发云桌面的调度,从而缺失了在新兴的异构算力芯片等场景下的AI集成开发云桌面的调度与使用,例如嵌入式神经网络处理器(Neural Processor Unit,NPU)芯片、机器学习单元(Machine Learning Unit,MLU)芯片等。此外,云桌面内也无法有效的实现对于异构芯片的开发工具的集成,也无法实现在一个云桌面内实现对应不同异构芯片的开发与调测。
发明消息
鉴于以上相关技术的缺点,本公开的目的在于提供异构云桌面调度系统、方法、服务系统、装置及介质。
本公开第一方面提供一种异构云桌面调度系统,基于云桌面与用户的交互以调度多个异构芯片的异构算力资源以用于软件开发;所述异构云桌面调度系统包括:异构云桌面调度模块,用于根据所述云桌面的用户的算力调度需求调度云桌面实例及匹配的异构算力实例;其中,所述云桌面实例用于向所述用户设备提供云桌面;每个所述异构算力实例对应于异构芯片所配置;网络管理模块,用于配置并管理所述云桌面实例及异构算力实例之间的网络通信;配置管理模块,用于挂载所述异构算力实例中的异构算力开发工具至所述云桌面实例以能被云桌面实例所调用。
在第一方面的实施例中,所述异构云桌面调度系统包括:密钥生成模块,用于响应于密钥配置服务命令,生成密钥信息;其中,所述密钥信息用于云桌面实例及异构算力实例之间加密通信;所述配置管理模块,还用于发布所述密钥信息至所述云桌面实例及异构算力实例。
在第一方面的实施例中,所述异构云桌面调度模块,用于发送所述密钥配置服务命令至所述密钥生成模块。
在第一方面的实施例中,所述异构算力开发工具以云桌面的配置文件形式挂载到容器。
在第一方面的实施例中,所述云桌面实例包括:云桌面数据服务端,用于响应于用户在所述云桌面发起的对异构算力开发工具的调用请求,形成对应指令并发送至所述异构算力实例并获得异构算力实例对应所述指令返回的数据。
在第一方面的实施例中,所述云桌面数据服务端包括以下一种或多种:1)云桌面数据转发端,用于接入通过浏览器访问云桌面的用户终端;2)虚拟网络控制服务端,用于接入通过虚拟网络控制客户程序访问云桌面的用户终端;3)安全外壳协议服务端,用于基于安全外壳协议的图形界面数据转发功能接入通过安全外壳协议客户端访问云桌面的用户终端。
在第一方面的实施例中,所述云桌面实例与异构算力实例之间通过基于安全外壳协议的图形界面数据转发功能进行通信。
在第一方面的实施例中,所述软件开发包括:人工智能模型的开发;至少部分所述异构芯片为图形处理器以外类型的人工智能芯片。
在第一方面的实施例中,所述人工智能模型的开发包括:人工智能模型的开发、训练和/或不同异构芯片平台之间的迁移;所述人工智能模型的迁移包括:通过使用目标异构算力开发工具,将在基于第一人工智能芯片的第一平台开发的第一人工智能模型,迁移至基于第二人工智能芯片的第二平台;所述目标异构算力开发工具与所述第二人工智能芯片相应。
在第一方面的实施例中,所述多个异构芯片包括以下中的至少一种:X86架构芯片;ARM架构芯片;图形处理单元芯片;可编程阵列逻辑阵列芯片;专用集成芯片。
在第一方面的实施例中,所述异构算力实例还包括:开发软件栈及计算框架。
本公开第二方面提供一种异构云桌面调度方法,基于云桌面与用户的交互以调度多个异构芯片的异构算力资源以用于软件开发;所述方法包括:根据所述云桌面的用户的算力调度需求调度云桌面实例及匹配的异构算力实例;配置所述云桌面实例及异构算力实例之间的网络通信;挂载所述异构算力实例中的异构算力开发工具至所述云桌面实例以能被云桌面实例所调用。
在第二方面的实施例中,所述的异构云桌面调度方法包括:生成密钥信息;其中,所述密钥信息用于云桌面实例及异构算力实例之间加密通信;发布所述密钥信息至所述云桌面实例及异构算力实例。
在第二方面的实施例中,所述云桌面实例包括:云桌面数据服务端,用于响应于用户在所述云桌面发起的对异构算力开发工具的调用请求,形成对应指令并发送至所述异构算力实例并获得异构算力实例对应所述指令返回的数据。
在第二方面的实施例中,所述云桌面数据服务端包括以下一种或多种:1)云桌面数据转发端,用于接入通过浏览器访问云桌面的用户终端;2)虚拟网络控制服务端,用于接入通过虚拟网络控制客户程序访问云桌面的用户终端;3)安全外壳协议服务端,用于基于安全外壳协议的图形界面数据转发功能接入通过安全外壳协议客户端访问云桌面的用户终端。
在第二方面的实施例中,所述云桌面实例与异构算力实例之间通过基于安全外壳协议的图形界面数据转发功能进行通信。
在第二方面的实施例中,所述异构算力开发工具以云桌面的配置文件形式挂载到容器。
在第二方面的实施例中,所述软件开发包括:人工智能模型的开发;至少部分所述异构芯片为图形处理器以外类型的人工智能芯片。
本公开第三方面提供一种云桌面异构算力服务系统,包括:如第一方面任一项所述的异构云桌面调度系统。
本公开第四方面提供一种计算机装置,包括:通信器、存储器及处理器;所述通信器用于与外部通信;所述存储器存储有程序指令;所述处理器用于运行所述程序指令以执行如第二方面任一项所述的异构云桌面调度方法。
本公开第四方面提供一种计算机可读存储介质,存储有程序指令,所述程序指令被运行以执行如第二方面任一项所述的异构云桌面调度方法。
如上所述,本公开实施例中提供异构云桌面调度系统、方法、服务系统、装置及介质。所述异构云桌面调度系统基于云桌面与用户的交互以调度多个异构芯片的异构算力资源以用于软件开发;所述异构云桌面调度系统包括:异构云桌面调度模块,用于根据所述云桌面的用户的算力调度需求调度云桌面实例及匹配的异构算力实例;其中,所述云桌面实例用于向所述用户设备提供云桌面;每个所述异构算力实例对应于异构芯片所配置;网络管理模块,用于配置并管理所述云桌面实例及异构算力实例之间的网络通信;配置管理模块,用于挂载所述异构算力实例中的异构算力开发工具至所述云桌面实例以能被云桌面实例所调用。本公开中实现各种异构芯片算力可用于云桌面的软件开发服务,有效解决现有技术问题。
附图说明
图1展示本公开一实施例中用于软件开发的云桌面系统的结构示意图。
图2展示本公开一实施例中异构云桌面调度系统的结构示意图。
图3展示本公开一示例中异构云桌面调度方法的流程示意图。
图4展示本公开一示例中基于更具体容器内容的异构云桌面调度方法的流程示意图。
图5展示本公开一实施例中计算机装置的结构示意图。
具体实施方式
以下通过特定的具体实例说明本公开的实施方式,本领域技术人员可由本公开所揭露的消息轻易地了解本公开的其他优点与功效。本公开还可以通过另外不同的具体实施方式加以实施或应用系统,本公开中的各项细节也可以根据不同观点与应用系统,在没有背离本公开的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,本公开中的实施例及实施例中的特征可以相互组合。
下面以附图为参考,针对本公开的实施例进行详细说明,以便本公开所属技术领域的技术人员能够容易地实施。本公开可以以多种不同形态体现,并不限定于此处说明的实施例。
在本公开的表示中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的表示意指结合该实施例或示例表示的具体特征、结构、材料或者特点包括于本公开的至少一个实施例或示例中。而且,表示的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本公开中表示的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于表示目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或隐含地包括至少一个该特征。在本公开的表示中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
为了明确说明本公开,省略与说明无关的器件,对于通篇说明书中相同或类似的构成要素,赋予了相同的参照符号。
在通篇说明书中,当说某器件与另一器件“连接”时,这不仅包括“直接连接”的情形,也包括在其中间把其它元件置于其间而“间接连接”的情形。另外,当说某种器件“包括”某种构成要素时,只要没有特别相反的记载,则并非将其它构成要素排除在外,而是意味着可以还包括其它构成要素。
虽然在一些实例中术语第一、第二等在本文中用来表示各种元件,但是这些元件不应当被这些术语限制。这些术语仅用来将一个元件与另一个元件进行区分。例如,第一接口及第二接口等表示。再者,如同在本文中所使用的,单数形式“一”、“一个”和“该”旨在也包括复数形式,除非上下文中有相反的指示。应当进一步理解,术语“包含”、“包括”表明存在所述的特征、步骤、操执行、元件、模块、项目、种类、和/或组,但不排除一个或多个其他特征、步骤、操执行、元件、模块、项目、种类、和/或组的存在、出现或添加。此处使用的术语“或”和“和/或”被解释为包括性的,或意味着任一个或任何组合。因此,“A、B或C”或者“A、B和/或C”意味着“以下任一个:A;B;C;A和B;A和C;B和C;A、B和C”。仅当元件、功能、步骤或操执行的组合在某些方式下内在地互相排斥时,才会出现该定义的例外。
此处使用的专业术语只用于言及特定实施例,并非意在限定本公开。此处使用的单数形态,只要语句未明确表示出与之相反的意义,那么还包括复数形态。在说明书中使用的“包括”的意义是把特定特性、区域、整数、步骤、执行业、要素及/或成份具体化,并非排除其它特性、区域、整数、步骤、执行业、要素及/或成份的存在或附加。
表示“下”、“上”等相对空间的术语可以为了更容易地说明在附图中图示的一器件相对于另一器件的关系而使用。这种术语是指,不仅是在附图中所指的意义,还包括使用中的装置的其它意义或执行业。例如,如果翻转附图中的装置,曾说明为在其它器件“下”的某器件则说明为在其它器件“上”。因此,所谓“下”的示例性术语,全部包括上与下方。装置可以旋转90°或其它角度,代表相对空间的术语也据此来解释。
目前,云桌面服务有用于软件开发。所谓云桌面,即用户可以通过浏览器或云桌面客户端访问云端服务器并显示的桌面。所述桌面上可以安装有各种软件,在开发场景中,云桌面可以安装有开发应用程序以供用户开发使用。在集成开发场景中,云端服务器可以配置集成开发环境(Integrated Development Environment,IDE),用于提供程序开发环境的应用程序,例如包括代码编辑器、编译器、调试器和图形用户界面等工具。
但是,一方面,由于传统的云桌面,依赖于虚拟机的支持。每个虚拟机包含虚拟硬件、内核(即操作系统)以及用户空间,虚拟机能够利用虚拟机管理程序Hypervisor运行在物理设备之上,Hypervisor又称虚拟机监视器(VMM),其通常被安装在“裸金属”系统硬件之上。一旦Hypervisor安装完成,就可以从系统可用计算资源当中分配虚拟机实例了,每台虚拟机都能够获得唯一的操作系统和负载(应用程序)。简言之,虚拟机先需要虚拟一个物理环境,然后构建一个完整的操作系统,再搭建一层Runtime,然后供应用程序运行。每个虚拟机具有独立内核,即在隔离性、安全性方面有其优点,但是相对地也会占用更多资源,这就导致每台宿主机能实现的虚拟机数量较少,而灵活性也相对较差。
因此,在一些对信息安全等级并非很高的环境中,例如基于虚拟机的云桌面的软件开发服务,相对效率低下,耗时耗力还需要依赖人工开通虚拟机权限。故而,基于虚拟机的云桌面较难适应于软件开发场景的需求。
另外,图形处理器即GPU提供多核并行计算的架构,且核心数目众多,可以支撑大量数据的并行计算。虽然GPU的时钟速度和分支处理能力较CPU弱,但是AI模型中的训练和推理通常不涉及大量的分支运算与复杂指令,故GPU会被更多地用于AI模型开发场景。这样一来,目前的云桌面普遍地仅支持对于GPU的AI集成开发云桌面的调度,而缺失了新兴的异构算力芯片(如NPU、MLU)等场景下的AI集成开发云桌面的调度与使用。
鉴于此,本公开实施例中可调用各种异构芯片对应的异构算力资源以用于软件开发,比如上述AI模型的开发,从而可以止限于依赖GPU的算力。
相比于虚拟机,容器(Container)在运行效率上更高。容器不需要纳入宿主机内核,而是直接将容器层(比安装在宿主机的内核之上。在安装完容器层之后,就可以从系统可用计算资源当中分配容器实例,并且应用可以个性化地被部署在各容器中。所建立的多个容器可以共享宿主机的内核,抽象层比虚拟机更少,更加轻量化,启动速度极快。在相应的示例中,基于容器化的AI集成开发云桌面,具备良好的灵活性,可以按照用户需求进行弹性伸缩,同时能够根据用户的需要安装配置各类开发软件,为用户在云桌面上进行AI模型的开发提供了极大的方便。
由此,在一些实施例中,可以通过容器来替代虚拟机实现云桌面服务。即,在以下说明书中所描述的“实例”,可优选采用容器实现,比如Docker;或者,也可以实现为虚拟机。
请参阅图1所示,展示本公开实施例中用于软件开发的云桌面系统的结构示意图。
如图中所展示有用户终端101和云服务平台102。在一些实施例中,所述用户终端101可以是能够安装浏览器和/或云桌面转发端软件的设备,可以是例如台式机、笔记本电脑或移动终端(如智能手机或平板电脑)等。所述服务端可以是服务器或服务器组实现。在所述云服务平台102可以构建云桌面实例121和各第一异构算力实例122、第二异构算力实例123、第三异构算力实例124。在可选示例中,所述云服务平台102包括多个服务器,其中一个服务器实现云桌面实例121,其它各服务器是基于不同异构芯片所搭建的,分别在各服务器实现对应本身异构芯片的第一异构算力实例122、第二异构算力实例123、第三异构算力实例124。
所述用户终端101和云服务平台102之间可通过网络连接。所述网络可以是局域网络、广域网络或者组合的网络,比如有线互联网络或者移动互联网络等。
在一些实施例中,用户终端101、云服务平台102的云桌面实例121和异构算力实例122之间可以通过X Window System即X架构实现云桌面。具体的,X架构是通过Xserver/Xclient架构及X协议来实现工作的。在X架构,X server用于在本地显示,运行在服务器上的GUI程序(X client)。比如,在用户终端101和云桌面实例121的通信中,用户终端101配置Xserver,云桌面实例121配置Xclient。又例如,在云桌面实例121和异构算力实例122的通信中,云桌面实例121配置Xserver,异构算力实例122、123或124配置Xclient等。在后续示例中,无论是基于noVNC、VNC、或SSH X11-forwarding等,其底层仍然是基于X协议的。以下具体说明各种实际实现示例。另外需特别说明的是,以下实施例中涉及的X11协议只是一种示例,其表示X协议的第11个版本,在其他示例中也可以选择X协议的其他版本,并非以此为限。
具体的,所述云桌面实例101可以包括云桌面数据服务端,用于响应于用户在所述云桌面发起的对异构算力开发工具的调用请求,形成对应指令并发送至所述异构算力实例并获得异构算力实例对应所述指令返回的数据。
为了能灵活地接入各种类型的用户终端101,所述云桌面数据服务端可以根据需求配置一种或多种接入相关的程序。示例性地,所述云桌面数据服务端包括以下一种或多种:1)云桌面数据转发端,用于接入通过浏览器访问云桌面的用户终端,例如noVNC;2)虚拟网络控制服务端(VNC server),用于接入通过虚拟网络控制客户程序访问云桌面的用户终端;3)安全外壳协议(SSH)服务端,用于基于安全外壳协议的图形界面数据转发功能接入通过安全外壳协议客户端访问云桌面的用户终端,例如SSH协议下支持X协议数据传输的功能,比如SSH的X11-forwarding等。以下逐一具体举例进行说明。
在一个示例中,所述用户终端101可安装有浏览器(Browser),进而实现用户通过浏览器访问云服务平台102云桌面实例121提供的云桌面(例如Linux桌面)。所述云桌面实例121中的云桌面数据服务端包含noVNC程序。noVNC是一种远程桌面连接或屏幕分享软件。noVNC可在任何现代浏览器,包括PC机或iOS/Android手机浏览器上执行。使用noVNC可以让浏览器作为VNC客户端来访问远程桌面。
在一些实施例中,所述用户终端101也可安装有本地VNC客户端,例如VNC Viewer;云桌面数据服务端可以包含VCN服务端,例如X11VNC,则用户也可以通过VNC客户端访问云桌面实例121的VNC服务端以得到云桌面服务。其中,VNC远程桌面访问的底层原理是X11,即部署VNC server对应X11中定义的Xclient,而VNC viewer实际上对应X11协议中定义的Xserver。
在一些实施例中,所述用户终端101也可以安装有Linux操作系统,可以实现为SSH客户端(即SSH服务),云桌面实例121可以基于Linux操作系统构建,则云桌面数据服务端可以包括SSH服务端(即SSHD服务),从而SSH客户端和SSH服务端之间通过基于安全外壳协议的图形界面数据转发功能进行通信。基于安全外壳协议的图形界面数据转发功能为SSH的X11-forwarding,支持通过SSH会话来实现X11协议架构。具体的,所述SSH客户端作为Xserver,SSH服务端作为Xclient,即对应用户终端101部署Xserver,云桌面实例121部署Xclient,进行SSH会话以实现云桌面。
在以上描述各种类型用户终端101接入云桌面实例121的实现原理之后,以下再描述云桌面实例121连接第一异构算力实例122、第二异构算力实例123、第三异构算力实例124的原理。在一些示例中,云桌面实例121和第一异构算力实例122、第二异构算力实例123、第三异构算力实例124之间也可以通过基于安全外壳协议的图形界面数据转发功能即SSH X11-Forwarding进行通信,或者,如果不需要加密通信,云桌面实例121和第一异构算力实例122、第二异构算力实例123、第三异构算力实例124也可以直接通过X11协议进行通信。
相应的,云桌面实例121可以配置SSH服务,而第一异构算力实例122、第二异构算力实例123、第三异构算力实例124可对应配置SSHD服务,以使得云桌面实例121相对作为SSH客户端和Xserver,第一异构算力实例122、第二异构算力实例123、第三异构算力实例124相对作为SSH服务端和Xclient,从而实现云桌面实例121能对第一异构算力实例122、第二异构算力实例123、第三异构算力实例124之间实现远程桌面访问。从而,云桌面实例121能将第一异构算力实例122、第二异构算力实例123、第三异构算力实例124中异构算力开发工具运行相关的图形界面显示在提供给用户终端101的云桌面。
可以理解的,对应于所述云桌面数据服务端,异构算力实例也可以部署相应的异构算力数据服务端,以实现在云桌面对异构算力开发工具的远程调用。比如,SSH服务端即SSHD;也可以有Xclient。
上述几种方案可以组合实现,从而对应不同类型的用户终端101,如配置浏览器、VNC客户端或者X11 SSH转发等,通过在云服务平台102一侧的云桌面实例121、第一异构算力实例122、第二异构算力实例123、第三异构算力实例124等进行对应不同类型的用户终端的配置,可以灵活地对接不同类型的用户终端101接入云桌面。
在一些实施例中,所述云桌面实例121、第一异构算力实例122、第二异构算力实例123、及第三异构算力实例124可以在Docker镜像基础上实现。具体的,可以根据云桌面实例121、第一异构算力实例122、第二异构算力实例123、及第三异构算力实例124各自实现功能所需要集成的程序设计Dockfile,Dockfile中的各指令(Instruction)运行用于创建出所需要的Docker镜像。基于不同用户或者不同开发环境的容器需求,可预先构建一个或多种类型的镜像库,比如基础镜像库,不同开发目标类型的镜像库等。各种云桌面实例121和异构算力实例的Dockfile可以预先存放在对应的镜像库中,以在用户使用云桌面时候提取、运行并使用。
在一些实施例中,所述云桌面实例121中可以包含一些软件工具,比如Nginx,进程管理工具(如Superviser),SSH,镜像服务(如Glance),文件管理器,分布式代码版本控制系统(如Git)等。
在一些实施例中,所述云桌面实例121中还可以设置开发工具挂载点,用于挂载第一异构算力实例122、第二异构算力实例123、第三异构算力实例124中的异构算力开发工具,从而实现在云桌面可选地调用不同异构芯片的对应的异构算力开发工具,较为灵活。
如图中所示意,云桌面实例121可选地支持多种异构芯片的异构算力开发工具的调用,异构芯片包括但不限于以下至少一种:如X86架构芯片(如X86CPU),ARM架构芯片,FPGA,ASIC(如NPU,MLU)等。在异构算力实例中,对应不同的异构芯片,异构算力开发工具也有所不同,例如对应ARM架构芯片的MindStudio、CNCode等,对应X86架构芯片的VSCode等。
在一些示例中,可以对应所选择的每个异构芯片分别构建异构算力实例。比如图中示例性展示的GPU支持的第一异构算力实例122,NPU支持的第二异构算力实例123,MLU支持的第三异构算力实例124等。所述第一异构算力实例122、第二异构算力实例123、第三异构算力实例124中的每个可以包含对应于异构芯片的程序,比如异构算力开发工具、开发软件栈(例如驱动、运行管理器Runtime等)、计算框架(Framework)。所述异构算力开发工具可供挂载到云桌面实例121的开发工具挂载点;所述开发软件栈为处理设备运行所述异构芯片所需软件,比如GPU的CUDA(Compute Unified Device Architecture)运算平台,NPU的CANN(Compute Architecture for Neural Networks)异构计算架构、MLU的CNML库等。示例性地,所述处理设备可以是裸金属服务器(Bare Metal Server),裸金属服务器是既具有传统物理服务器特点的硬件设备,又具备云计算技术的虚拟化服务功能,是硬件和软件优势结合的产物。
为了能在云桌面实例121可选择地耦合至匹配用户需求的第一异构算力实例122、第二异构算力实例123、或第三异构算力实例124,所述云桌面系统中还包括异构云桌面调度系统125。举例来说,在AI开发场景中,例如用户需要开发基于NPU芯片的硬件平台应用的AI模型,则所述异构云桌面调度系统125可以将第二异构算力实例123耦合到云桌面实例121,并将所选择的第二异构算力实例123的异构算力开发工具挂载到云桌面实例121,用户基于云桌面可以使用挂载的异构算力开发工具,进行基于对应的NPU芯片的AI模型开发。在一些示例中,所述软件开发可以包括人工智能模型的开发、训练及迁移中的至少一种。
所述迁移可以是在不同异构芯片平台之间进行AI模型的迁移。具体的,所述人工智能模型的迁移包括:通过使用目标异构算力开发工具,将在基于第一人工智能芯片的第一平台开发的第一人工智能模型,迁移至基于第二人工智能芯片的第二平台;所述目标异构算力开发工具与所述第二人工智能芯片相应。举例来说,用户想要将在ARM平台开发的AI模型迁移到NPU平台进行开发,则在使用云桌面时选择NPU对应的异构算力实例123,通过NPU对应的异构算力实例123中的异构算力开发工具完成迁移,非常便捷。可以理解的是,通过本公开实施例中的方案,开发人员无需反复上传AI模型或者反复切换不同的AI模型开发调测环境,只需要登录进入云桌面实例121提供的云桌面中,在云桌面内使用对应异构算力开发工具可完成模型的迁移工作。
以下说明所述异构云桌面调度装置的可能实现方式。
如图2所示,展示本公开一实施例中异构云桌面调度系统200的结构示意图。所述异构云桌面调度系统200可基于云桌面与用户的交互以调度多个异构芯片的异构算力资源以用于软件开发,所述软件开发可以包括:人工智能(AI)模型的开发。至少部分所述异构芯片可以为图形处理器(GPU)以外类型的人工智能芯片,例如X86架构芯片(如X86 CPU),ARM架构芯片,FPGA,ASIC(如NPU,MLU)等。
所述异构云桌面调度系统200包括:异构云桌面调度模块201、网络管理模块202、及配置管理模块203。
所述异构云桌面调度模块201,用于根据所述云桌面的用户的算力调度需求调度云桌面实例205及匹配的异构算力实例206。其中,所述云桌面实例205用于向所述用户提供云桌面(例如Linux)。每个所述异构算力实例206对应于异构芯片所配置。在一些实施例中,所述算力调度需求可以关于异构算力类型需求和/或异构算力需求资源量。其中,所述算力调度需求可以根据用户在云桌面的输入来形成,比如对需求选项的输入或操作等。示例性地,所述算力可以是关于所开发软件依赖的平台类型,所述平台类型即对应异构芯片的类型,不同类型的异构芯片关联有不同的异构算力资源。例如,某用户的算力调度需求是要在ARM架构芯片的平台上开发AI模型,则对应可以匹配到ARM架构芯片对应的目标异构算力实例206,以向云桌面实例205提供异构算力资源。所述异构算力资源可以由目标异构算力实例206中的异构算力开发工具所提供。在一些示例中,所述资源量可以是关于用户对云桌面的硬/软件的资源需求,比如云桌面可用的处理器内存、硬盘容量等等。
所述网络管理模块202,用于配置并管理所述云桌面实例205及异构算力实例206之间的网络通信。在一些实施例中,所述网络管理模块202可以将所述异构算力实例206上报的网络注册地址配置到所述云桌面实例205,以支持云算力容器对异构算力实例206的异构算力开发工具的调用。可选的,异构算力实例206也可以根据调用时云桌面实例205发送控制命令中的网络注册地址,将异构算力开发工具计算的结果数据返回给云桌面实例205。在一些实施例中,所述异构云桌面调度模块201可以通过下发网络服务指令给所述网络管理模块202,以触发所述网络管理模块202的配置动作。
配置管理模块203,用于挂载所述异构算力实例206中的异构算力开发工具至所述云桌面实例205以能被云桌面实例205所调用。在一些实施例中,所述异构算力开发工具可以挂载到云桌面实例205中的挂载点,所述挂载点可以是挂载目录,而异构算力开发工具可以以云桌面的配置文件的形式挂载到所述挂载目录,从而将所述异构算力开发工具的启动的操作呈现为在云桌面启动配置文件的形式,从而实现异构算力开发工具在云桌面被动态灵活挂载与使用。
如之前示例,云桌面实例205和异构算力实例206之间通过基于例如SSH协议(如SSH X11-forwarding)的安全加密通信。相应的,所述异构云桌面调度系统200还可以包括:密钥生成模块204,用于响应于密钥配置服务命令,生成密钥信息;其中,所述密钥信息用于云桌面实例205及异构算力实例206之间加密通信。所述配置管理模块203还可以用于发布所述密钥信息至所述云桌面实例205及异构算力实例206。
在可能示例中,所述密钥信息可以是公私钥对。其中,公钥可以发送给异构算力实例206使用,私钥可以发送给云桌面实例205使用。异构算力实例206发出的数据可经公钥加密,由云桌面实例205通过私钥解密;异构算力实例206发出的数据可经私钥签名,由云桌面实例205公钥验签。在可能实施例中,所述密钥生成模块204生成密钥信息的动作可以由所述异构云桌面调度模块201的密钥配置服务命令所触发。
在一些示例中,所述云桌面实例205包括:云桌面数据服务端。所述云桌面数据服务端可以响应于用户在所述云桌面的调用异构算力开发工具的操作,形成指令并发送至所述异构算力实例206,以获得所述异构算力开发工具基于所述指令返回的数据,所述指令和数据的收发可以基于上述加密通信过程传输。
如之前示例,为接入不同类型的用户终端,所述云桌面数据服务端包括以下一种或多种:1)云桌面数据转发端,用于接入通过浏览器访问云桌面的用户终端,例如noVNC;2)虚拟网络控制服务端,用于接入通过虚拟网络控制客户程序访问云桌面的用户终端,即VNCserver(比如X11VNC);3)安全外壳协议服务端,用于基于安全外壳协议的图形界面数据转发功能接入通过安全外壳协议客户端访问云桌面的用户终端,例如开启SSHD服务实现。
如图3所示,展示本公开一实施例中的异构云桌面调度方法的流程示意图。
可以理解的,所述异构云桌面调度方法可以基于所述异构云桌面调度系统实施,因此异构云桌面调度方法的具体原理可以参考异构云桌面调度系统,此处不作重复赘述。
所述异构云桌面调度方法包括:
步骤S301:根据所述云桌面的用户的算力调度需求调度云桌面实例及匹配的异构算力实例;
步骤S302:配置所述云桌面实例及异构算力实例之间的网络通信;
步骤S303:挂载所述异构算力实例中的异构算力开发工具至所述云桌面实例以能被云桌面实例所调用。
在一些实施例中,所述的异构云桌面调度方法包括:生成密钥信息;其中,所述密钥信息用于云桌面实例及异构算力实例之间加密通信;发布所述密钥信息至所述云桌面实例及异构算力实例。
在一些实施例中,所述云桌面实例包括:云桌面数据服务端,用于响应于用户在所述云桌面发起的对异构算力开发工具的调用请求,形成对应指令并发送至所述异构算力实例并获得异构算力实例对应所述指令返回的数据。
在一些实施例中,所述云桌面数据服务端包括以下一种或多种:1)云桌面数据转发端,用于接入通过浏览器访问云桌面的用户终端;2)虚拟网络控制服务端,用于接入通过虚拟网络控制客户程序访问云桌面的用户终端;3)安全外壳协议服务端,用于基于安全外壳协议的图形界面数据转发功能接入通过安全外壳协议客户端访问云桌面的用户终端。
在一些实施例中,所述云桌面实例与异构算力实例之间通过基于安全外壳协议的图形界面数据转发功能进行通信。
在一些实施例中,所述异构算力开发工具以云桌面的配置文件形式挂载到容器。
在一些实施例中,所述软件开发包括:人工智能模型的开发;至少部分所述异构芯片为图形处理器以外类型的人工智能芯片。
在一些实施例中,所述人工智能模型的开发包括:人工智能模型的开发、训练和/或不同异构芯片平台之间的迁移;所述人工智能模型的迁移包括:通过使用目标异构算力开发工具,将在基于第一人工智能芯片的第一平台开发的第一人工智能模型,迁移至基于第二人工智能芯片的第二平台;所述目标异构算力开发工具与所述第二人工智能芯片相应。
在一些实施例中,所述多个异构芯片包括以下中的至少一种:X86架构芯片;ARM架构芯片;图形处理单元芯片;可编程阵列逻辑阵列芯片;专用集成芯片(如NPU,MLU等)。
可以参考图4所示,展示本公开一具体实施例中异构云桌面调度方法的流程示意图。示例性地,图4中展示了基于更具体的容器内容实施异构云桌面调度方法的原理示意图。
在图4中,流程具体包括:
步骤S401:异构云桌面调度模块获取用户的算力调度需求;
步骤S402:响应于所述算力调度需求,异构云桌面调度模块调度云桌面实例,并调度匹配的异构算力实例;
步骤S403:异构云桌面调度模块下发网络服务到网络管理模块,并由网络管理模块获取所述异构算力实例上报的网络地址,并发送所述网络地址到云桌面实例,被云桌面实例的异构算力网络服务获得。
步骤S404:异构云桌面调度模块下发密钥配置服务到密钥生成模块,以触发密钥生成模块生成密钥对。
步骤S405:密钥生成模块将密钥对发送给配置管理模块。
步骤S406:配置管理模块发送密钥对中的公钥到异构算力实例,发送其中的私钥到云桌面实例。
步骤S407:配置管理模块获得异构算力实例中异构算力开发工具对应的启动配置文件。
步骤S408:配置管理模块将所述启动配置文件挂载到云桌面实例中的异构算力开发工具挂载目录。
步骤S409:用户通过云桌面实例中的云桌面转发端调用所挂载的异构算力开发工具。
步骤S410:云桌面转发端通过SSH协议与异构算力实例通信,发送对应所述调用的指令。
步骤S411:异构算力实例返回给云桌面实例对应所述指令产生的数据。比如,对应调用异构算力开发工具的计算结果的图形界面数据等。
需特别说明的是,在图2实施例中的各个功能模块,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以程序指令产品的形式实现。程序指令产品包括一个或多个程序指令。在计算机上加载和执行程序指令指令时,全部或部分地产生按照本公开的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。程序指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输。
并且,在图2实施例所揭露的模块划分方式可以加以变化。以上所表示的实施例仅仅是示意性的,例如所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或模块可以结合或者可以动态到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接于可以是通过一些接口,模块的间接耦合或通信连接,可以是电性或其它的形式。
另外,在图2实施例中的各功能模块及子模块可以动态在一个处理部件中,也可以是各个模块单独物理存在,也可以两个或两个以上模块动态在一个部件中。上述动态的部件既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。上述动态的部件如果以软件功能模块的形式实现并执行为独立的产品销售或使用时,也可以存储在一个计算机可读存储介质中。该存储介质可以是只读存储器,磁盘或光盘等。
需特别说明的是,本公开上述实施例的流程图表示的流程或方法表示可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分。并且本公开的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能。
例如,图3、图4等实施例中的各个步骤的顺序可能可以在具体场景中加以变化,并非以上述表示为限。
如图5所示,展示本公开一实施例中计算机装置的结构示意图。
在一些实施例中,所述计算机装置用于装载实现前述方法实施例(例如图3、图4中的方法步骤)的程序指令。所述计算机装置具体可实现为服务器等。
如图5所示,计算机装置500以通用计算设备的形式表现。计算机装置500的组件可以包括但不限于:上述至少一个处理单元510、上述至少一个存储单元520、连接不同系统组件(包括存储单元520和处理单元510)的总线530。
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元510执行,使得计算机装置用于实现本公开上述实施例中所描述方法步骤。
在一些实施例中,存储单元520可以包括易失性存储单元,例如随机存取存储单元(RAM)5201和/或高速缓存存储单元5202,还可以进一步包括只读存储单元(ROM)5203。
在一些实施例中,存储单元520还可以包括具有一组(至少一个)程序模块5205的程序/实用工具5204,这样的程序模块5205包括但不限于:操执行系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
在一些实施例中,总线530可以包括数据总线、地址总线和控制总线。
在一些实施例中,计算机装置500也可以与一个或多个外部设备600(例如键盘、指向设备、蓝牙设备等)通信,这种通信可以通过输入/输出(I/O)接口550进行。可选的,计算机装置500还包括显示单元540,其连接到输入/输出(I/O)接口550,用于进行显示。并且,计算机装置500还可以通过网络适配器560与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器560通过总线530与计算机装置500的其它模块通信。应当明白,尽管图中未示出,可以结合计算机装置500使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
本公开的实施例中还可以提供计算机可读存储介质,其可以包含程序代码,并可以在设备上运行,例如个人电脑上运行,以实现本公开上述方法实施例(如图1、图5等)中的各个步骤及子步骤的执行。在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
所述程序代码可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本公开操作的程序代码,所述程序设计语言包括面向对象的程序设计语言-诸如Java、C++等,还包括常规的过程式程序设计语言-诸如"C"语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
综上所述,本公开实施例中提供异构云桌面调度系统、方法、服务系统、装置及介质。所述异构云桌面调度系统基于云桌面与用户的交互以调度多个异构芯片的异构算力资源以用于软件开发;所述异构云桌面调度系统包括:异构云桌面调度模块,用于根据所述云桌面的用户的算力调度需求调度云桌面实例及匹配的异构算力实例;其中,所述云桌面实例用于向所述用户设备提供云桌面;每个所述异构算力实例对应于异构芯片所配置;网络管理模块,用于配置并管理所述云桌面实例及异构算力实例之间的网络通信;配置管理模块,用于挂载所述异构算力实例中的异构算力开发工具至所述云桌面实例以能被云桌面实例所调用。本公开中实现各种异构芯片算力可用于云桌面的软件开发服务,有效解决现有技术问题。
上述实施例仅例示性说明本公开的原理及其功效,而非用于限制本公开。任何熟悉此技术的人士皆可在不违背本公开的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本公开所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本公开的权利要求所涵盖。

Claims (21)

1.一种异构云桌面调度系统,其特征在于,基于云桌面与用户的交互以调度多个异构芯片的异构算力资源以用于软件开发;所述异构云桌面调度系统包括:
异构云桌面调度模块,用于根据所述云桌面的用户的算力调度需求调度云桌面实例及匹配的异构算力实例;其中,所述云桌面实例用于向所述用户设备提供云桌面;每个所述异构算力实例对应于异构芯片所配置;
网络管理模块,用于配置并管理所述云桌面实例及异构算力实例之间的网络通信;
配置管理模块,用于挂载所述异构算力实例中的异构算力开发工具至所述云桌面实例以能被云桌面实例所调用。
2.根据权利要求1所述的异构云桌面调度系统,其特征在于,包括:
密钥生成模块,用于响应于密钥配置服务命令,生成密钥信息;其中,所述密钥信息用于云桌面实例及异构算力实例之间加密通信;
所述配置管理模块,还用于发布所述密钥信息至所述云桌面实例及异构算力实例。
3.根据权利要求2所述的异构云桌面调度系统,其特征在于,所述异构云桌面调度模块,用于发送所述密钥配置服务命令至所述密钥生成模块。
4.根据权利要求1所述的异构云桌面调度系统,其特征在于,所述异构算力开发工具以云桌面的配置文件形式挂载到容器。
5.根据权利要求1所述的异构云桌面调度系统,其特征在于,所述云桌面实例包括:云桌面数据服务端,用于响应于用户在所述云桌面发起的对异构算力开发工具的调用请求,形成对应指令并发送至所述异构算力实例并获得异构算力实例对应所述指令返回的数据。
6.根据权利要求5所述的异构云桌面调度系统,其特征在于,所述云桌面数据服务端包括以下一种或多种:
1)云桌面数据转发端,用于接入通过浏览器访问云桌面的用户终端;
2)虚拟网络控制服务端,用于接入通过虚拟网络控制客户程序访问云桌面的用户终端;
3)安全外壳协议服务端,用于基于安全外壳协议的图形界面数据转发功能接入通过安全外壳协议客户端访问云桌面的用户终端。
7.根据权利要求1所述的异构云桌面调度系统,其特征在于,所述云桌面实例与异构算力实例之间通过基于安全外壳协议的图形界面数据转发功能进行通信。
8.根据权利要求1所述的异构云桌面调度系统,其特征在于,所述软件开发包括:人工智能模型的开发;至少部分所述异构芯片为图形处理器以外类型的人工智能芯片。
9.根据权利要求8所述的异构云桌面调度系统,其特征在于,所述人工智能模型的开发包括:人工智能模型的开发、训练和/或不同异构芯片平台之间的迁移;所述人工智能模型的迁移包括:通过使用目标异构算力开发工具,将在基于第一人工智能芯片的第一平台开发的第一人工智能模型,迁移至基于第二人工智能芯片的第二平台;所述目标异构算力开发工具与所述第二人工智能芯片相应。
10.根据权利要求1所述的异构云桌面调度系统,其特征在于,所述多个异构芯片包括以下中的至少一种:X86架构芯片;ARM架构芯片;图形处理单元芯片;可编程阵列逻辑阵列芯片;专用集成芯片。
11.根据权利要求1所述的异构云桌面调度系统,其特征在于,所述异构算力实例还包括:开发软件栈及计算框架。
12.一种异构云桌面调度方法,其特征在于,基于云桌面与用户的交互以调度多个异构芯片的异构算力资源以用于软件开发;所述方法包括:
根据所述云桌面的用户的算力调度需求调度云桌面实例及匹配的异构算力实例;
配置所述云桌面实例及异构算力实例之间的网络通信;
挂载所述异构算力实例中的异构算力开发工具至所述云桌面实例以能被云桌面实例所调用。
13.根据权利要求12所述的异构云桌面调度方法,其特征在于,包括:
生成密钥信息;其中,所述密钥信息用于云桌面实例及异构算力实例之间加密通信;
发布所述密钥信息至所述云桌面实例及异构算力实例。
14.根据权利要求12所述的异构云桌面调度方法,其特征在于,所述云桌面实例包括:云桌面数据服务端,用于响应于用户在所述云桌面发起的对异构算力开发工具的调用请求,形成对应指令并发送至所述异构算力实例并获得异构算力实例对应所述指令返回的数据。
15.根据权利要求14所述的异构云桌面调度方法,其特征在于,所述云桌面数据服务端包括以下一种或多种:
1)云桌面数据转发端,用于接入通过浏览器访问云桌面的用户终端;
2)虚拟网络控制服务端,用于接入通过虚拟网络控制客户程序访问云桌面的用户终端;
3)安全外壳协议服务端,用于基于安全外壳协议的图形界面数据转发功能接入通过安全外壳协议客户端访问云桌面的用户终端。
16.根据权利要求12所述的异构云桌面调度方法,其特征在于,所述云桌面实例与异构算力实例之间通过基于安全外壳协议的图形界面数据转发功能进行通信。
17.根据权利要求12所述的异构云桌面调度方法,其特征在于,所述异构算力开发工具以云桌面的配置文件形式挂载到容器。
18.根据权利要求12所述的异构云桌面调度方法,其特征在于,所述软件开发包括:人工智能模型的开发;至少部分所述异构芯片为图形处理器以外类型的人工智能芯片。
19.一种云桌面异构算力服务系统,其特征在于,包括:如权利要求1至11中任一项所述的异构云桌面调度系统。
20.一种计算机装置,其特征在于,包括:通信器、存储器及处理器;所述通信器用于与外部通信;所述存储器存储有程序指令;所述处理器用于运行所述程序指令以执行如权利要求12至18中任一项所述的异构云桌面调度方法。
21.一种计算机可读存储介质,其特征在于,存储有程序指令,所述程序指令被运行以执行如权利要求12至18中任一项所述的异构云桌面调度方法。
CN202210495372.0A 2022-05-07 2022-05-07 异构云桌面调度系统、方法、服务系统、装置及介质 Active CN114860401B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210495372.0A CN114860401B (zh) 2022-05-07 2022-05-07 异构云桌面调度系统、方法、服务系统、装置及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210495372.0A CN114860401B (zh) 2022-05-07 2022-05-07 异构云桌面调度系统、方法、服务系统、装置及介质

Publications (2)

Publication Number Publication Date
CN114860401A true CN114860401A (zh) 2022-08-05
CN114860401B CN114860401B (zh) 2023-10-03

Family

ID=82634736

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210495372.0A Active CN114860401B (zh) 2022-05-07 2022-05-07 异构云桌面调度系统、方法、服务系统、装置及介质

Country Status (1)

Country Link
CN (1) CN114860401B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116737307A (zh) * 2023-08-16 2023-09-12 北京淳中科技股份有限公司 一种界面显示方法、装置、电子设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150169206A1 (en) * 2013-12-17 2015-06-18 American Megatrends, Inc. Techniques of launching virtual machine from thin client
CN108989811A (zh) * 2017-06-05 2018-12-11 中兴通讯股份有限公司 云桌面系统、及其图像序列压缩编码方法和介质
CN109639799A (zh) * 2018-12-12 2019-04-16 北京锐安科技有限公司 异构云平台的处理方法及装置
CN114138486A (zh) * 2021-12-02 2022-03-04 中国人民解放军国防科技大学 面向云边异构环境的容器化微服务编排方法、系统及介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150169206A1 (en) * 2013-12-17 2015-06-18 American Megatrends, Inc. Techniques of launching virtual machine from thin client
CN108989811A (zh) * 2017-06-05 2018-12-11 中兴通讯股份有限公司 云桌面系统、及其图像序列压缩编码方法和介质
CN109639799A (zh) * 2018-12-12 2019-04-16 北京锐安科技有限公司 异构云平台的处理方法及装置
CN114138486A (zh) * 2021-12-02 2022-03-04 中国人民解放军国防科技大学 面向云边异构环境的容器化微服务编排方法、系统及介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116737307A (zh) * 2023-08-16 2023-09-12 北京淳中科技股份有限公司 一种界面显示方法、装置、电子设备及存储介质
CN116737307B (zh) * 2023-08-16 2023-12-01 北京淳中科技股份有限公司 一种界面显示方法、装置、电子设备及存储介质

Also Published As

Publication number Publication date
CN114860401B (zh) 2023-10-03

Similar Documents

Publication Publication Date Title
CN109032706B (zh) 智能合约执行方法、装置、设备和存储介质
US11762634B2 (en) Systems and methods for seamlessly integrating multiple products by using a common visual modeler
CN109961151B (zh) 用于机器学习的计算服务的系统及用于机器学习的方法
Baude et al. Interactive and descriptor-based deployment of object-oriented grid applications
US9292215B2 (en) Managing virtual hard disk snapshots
US20180285156A1 (en) Container chaining for automated process completion
US10833955B2 (en) Dynamic delivery of software functions
WO2023035830A1 (en) Using remote pod in kubernetes
KR20140065837A (ko) 소프트웨어 가상화를 이용하여 소프트웨어 서비스를 제공하기 위한 장치, 시스템 및 그 방법
CN110502217B (zh) 一种基于ros的机器人云平台设计方法
US11546431B2 (en) Efficient and extensive function groups with multi-instance function support for cloud based processing
US20210117386A1 (en) Host-level persistent volume management for container clouds
CN117616395A (zh) 迁移期间应用的连续活跃度和完整性
CN117112122A (zh) 一种集群部署方法和装置
CN114860401B (zh) 异构云桌面调度系统、方法、服务系统、装置及介质
US9047134B2 (en) System and method for increasing the capabilities of a mobile device
US11010149B2 (en) Shared middleware layer containers
US10564950B1 (en) Disassembly code generation during debugging
CN112152988B (zh) 用于异步nbmp请求处理的方法、系统以及计算机设备和介质
Bouraqadi-Saâdani et al. A reflective infrastructure for coarse-grained strong mobility and its tool-based implementation
CN117170738B (zh) Python与Fortran互调用的方法、系统、设备及存储介质
US11765236B2 (en) Efficient and extensive function groups with multi-instance function support for cloud based processing
US20230098841A1 (en) Classifying and storing multiple layers of a file system
US20220365765A1 (en) Application invocation on specified operating system version
CN117093319A (zh) 虚拟机的部署方法、设备、存储介质及产品

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
GR01 Patent grant
GR01 Patent grant