CN112714905B - 量子混合计算 - Google Patents
量子混合计算 Download PDFInfo
- Publication number
- CN112714905B CN112714905B CN201980048131.8A CN201980048131A CN112714905B CN 112714905 B CN112714905 B CN 112714905B CN 201980048131 A CN201980048131 A CN 201980048131A CN 112714905 B CN112714905 B CN 112714905B
- Authority
- CN
- China
- Prior art keywords
- quantum
- classical
- program
- functions
- processors
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N10/00—Quantum computing, i.e. information processing based on quantum-mechanical phenomena
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N10/00—Quantum computing, i.e. information processing based on quantum-mechanical phenomena
- G06N10/80—Quantum programming, e.g. interfaces, languages or software-development kits for creating or handling programs capable of running on quantum computers; Platforms for simulating or accessing quantum computers, e.g. cloud-based quantum computing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/80—Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation 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/5044—Allocation 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 hardware capabilities
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Computer Hardware Design (AREA)
- Condensed Matter Physics & Semiconductors (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Analysis (AREA)
- Evolutionary Computation (AREA)
- Data Mining & Analysis (AREA)
- Computational Mathematics (AREA)
- Artificial Intelligence (AREA)
- Quality & Reliability (AREA)
- Advance Control (AREA)
- Executing Machine-Instructions (AREA)
Abstract
本文描述了实现量子混合计算的技术。实施例包括:接收混合程序;将与所述混合程序相对应的相应函数分配给CPU处理或QPU处理中的任一个;调度对所述相应函数的处理;启动所述混合程序的执行;以及整理经典‑量子混合程序的执行的结果。
Description
技术领域
本文描述的实施例一般涉及实现由经典过程构建的量子电路的高效执行。
背景技术
量子计算机是一种利用量子力学现象(诸如叠加和纠缠)来处理数据的计算系统。在数字计算机中,数据被编码成两个确定状态(“0”或“1”)之一的二进制数字(比特),与数字计算机不同地,量子计算要求数据被编码成量子比特(以下简称“量子比特”),对于量子比特,单个量子比特可以表示“1”、“0”或两个量子比特状态的任何量子叠加。一般来说,具有N个量子比特的量子计算机可以同时处于多达2N个不同状态的任意叠加中,即,一对量子比特可以处于四个状态的任何量子叠加中,而三个量子比特可以处于八个状态的任何叠加中。
大规模量子计算机能够比数字计算机(这里也称为“经典计算机”)更快地解决某些问题。在量子计算机的操作中,可以通过将量子比特设置在受控的初始状态来使计算初始化。通过操纵这些量子比特,实现了表示要解决的问题的预定量子逻辑门序列,称为量子算法。量子算法(诸如秀尔(Shor’s)算法、西蒙(Simon’s)算法等)运行速度比任何可能的概率经典算法都要快。量子算法通常是不确定的,因为它们只能以一定的已知概率提供正确的解决方案。
基于量子计算机在解决某些问题方面的固有优势,挑战在于如何编程量子计算机以利用其优势。
发明内容
在一个示例实施例中,实现量子混合计算的方法包括:接收混合程序;将与所述混合程序相对应的相应函数分配给经典信息处理或量子信息处理中的任一个;调度对所述相应函数的处理;启动所述混合程序的执行;在经典处理器和量子处理器之间传送函数的部分结果;以及整理(collate)所述混合程序的执行结果。
在另一示例实施例中,一种实现量子混合计算的装置包括:接收器,用于接收混合程序;仲裁器,用于根据针对相应函数的一个或多个准则将所述相应函数分配给经典信息处理或量子信息处理中的任一个;调度器,用于调度经典处理器和量子处理器两者上的相应函数的处理;以及管理器,用于在所述经典处理器和所述量子处理器之间传送函数的部分结果并整理所述处理的结果。
在又一实施例中,一种计算机可读介质存储指令,所述指令在执行时使数字计算处理器:接收混合程序,该混合程序具有以第一语言编写的一个或多个可执行组件和以第二语言编写的一个或多个可执行组件;分配以所述第一语言编写的可执行组件以供在第一计算环境中执行;分配以所述第二语言编写的可执行组件以供在第二计算环境中执行;相对于在所述第二计算环境中的执行来调度在所述第一计算环境中的执行;整理所调度的执行的结果;基于所述执行的最近一次迭代的经整理的结果来迭代地重复所调度的执行;并且在发生预定里程碑时终止所述执行的迭代重复。
前述内容仅仅是说明性的,不得以任何方式用于限制。除了说明性的方面之外,上述的实施方式和特征、其他方面、实施方式和特征将通过参照附图和下面的详细说明变得明显。
附图说明
在以下的详细描述中,仅将实施例描述为例示,这是因为根据以下的详细描述,各种改变和修改对于本领域技术人员而言将变得显而易见。在不同附图中使用相同的附图标记指示相似或相同的项目。
图1示出了根据本文描述的至少一些实施例布置的、其中可以实现量子混合计算的示例系统配置;
图2示出了根据本文描述的至少一些实施例布置的、可以通过其实现量子混合计算的处理器系统的示例配置;
图3示出了根据本文描述的至少一些实施例布置的、用于促进量子混合计算的至少部分的处理器的示例框图配置;
图4示出了根据本文描述的至少一些实施例的示例处理流程,通过该流程来实现经典/混合计算的至少部分;并且
图5示出了说明性的计算实施例,其中量子混合计算的任何过程和子过程可以实现为存储在计算机可读介质上的计算机可读指令。
具体实施方式
在下面的详细描述中,参考构成说明书的一部分的附图。在附图中,类似的符号通常表示类似的部件,除非文中另有规定。此外,除非另外指出,否则每个连续附图的描述可以参考来自一个或多个在先附图的特征,以提供当前示例性实施例的更清楚的上下文和更实质性的解释。然而,在详细说明书、附图和权利要求中描述的示例实施例不意味着限制。在不背离本文中所提出的主题的精神和范围的情况下,可以利用其他实施方式,并可以进行其他改变。容易理解的是,正如本文中一般描述的和附图中例示的那样,可以在各种不同的配置中对本发明的方面进行设置、替换、结合、分离和设计,这些配置全部都在本文中明确地考虑到。
本文描述了在一个或多个系统、装置、应用、程序和方法中实现的方法,通过这些方法,包括经典计算和量子计算两者的量子混合计算通过例如在完全不同的计算环境中的协同定位的计算设备之间分配计算而被安全且有效地实现。
在本说明书中,除了它们被接受的含义之外,还可以使用如下术语:
“经典计算”、“经典程序”、“数字计算”、“数字程序”或其变体可以指已经被转换成二进制数的数据的计算/处理。经典计算处理器可包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、张量处理单元(TPU)、专用集成电路(ASIC)、现场可编程门阵列等及其未绑定排列。其非限制性示例可包括可被并行化并在多核经典计算机上运行的经典优化函数;具有用于执行并行计算的GPU的经典计算机等。
“量子计算”或其变体可以指已经被编码为量子比特的数据的计算/处理。量子计算利用原子执行高级门函数,以产生比经典计算快10K量级的结果。
“环境”可以指计算环境,其中存在当执行程序时可以利用的组件,例如诸如库、其他程序、其他硬件等实用工具(utilities)。因此,这里可以参考经典计算环境、量子计算环境等。
“混合程序”可以是指量子程序,其是迭代过程,其在经典计算环境中进行编程,其至少一些函数用于在量子计算环境(例如量子沙箱)中执行。可以在经典计算环境中测量或整理对应于混合程序的所执行的函数的结果,其中更新或替换量子程序或迭代过程。这样的处理可以在几十万次的量级上迭代地重复,直到该处理达到基于时间或处理的里程碑为止。
“电路”可以指包括在混合程序中的量子函数,这是由于这种函数的处理的线性性质。
“沙箱”可以指其中某些函数被禁止的受限环境。在当前上下文中,沙箱可用于将一个运行函数与另一运行函数隔离,无论该运行函数是经典计算还是量子计算,特别是当从第三方接收到任何运行函数并且其信任级别未被完全验证时。
根据本文描述的示例实施例,量子计算包括执行迭代过程,通过该迭代过程,量子电路可以被写入经典计算环境中以在量子计算环境中执行。可以使用的这种经典计算环境的非限制性示例包括台式计算机、笔记本计算机、移动设备等。可以以与例如用于大型机计算设备的批处理相同的方式,经由网络(例如互联网)将量子电路提交给量子计算设备,在该量子计算设备处,量子电路可以与其他量子电路一起排队。排队的量子电路可以依次执行。
可以在写入量子电路的经典计算环境中或在管理量子电路的执行的不同的经典计算环境中接收和整理量子电路的迭代或累积的计算结果。无论哪种经典计算环境,量子电路都可以基于最近一次迭代的结果或直到该点的计算的累积结果来更新或重写。
当在经典计算环境中写入的量子电路在互联网上提交以供例如基于云的量子计算设备处理时,电路的提交及其结果都可能由于网络延迟和带宽消耗而减慢。因此,可以预期资源成本对于这样的计算场景是显著的。这种方法对于优化问题(例如量子化学)是有问题的,优化问题需要两部分算法,通过该算法,通过量子计算机建立量子态,并在经典计算机上优化结果,特别是由于量子优化需要数万甚至几十万量级的迭代。也就是说,量子计算固有的基于网络的数据量交换可能被认为是禁止的,而且对实践者来说是缓慢的。
图1示出了根据本文描述的至少一些实施例布置的、其中可以实现量子混合计算的示例系统配置100。如图所示,配置100至少包括网络104、基于云的基础设施105、服务器106A和106B、经典处理单元115A-115M、量子处理单元(QPU)120A-120N和连接器126。
通过网络104,一个或多个用户能够提交程序107和/或程序109以供执行,网络104可以指被配置为至少支持从用户或用户实体到基于云的基础设施105的程序传输的网络。根据一些示例,网络104可以包括互联网以提供多个网络终端之间的通信。因此,网络104可以支持用户终端(例如,经典计算设备)和基于云的基础设施105之间的实时通信数据流。
基于云的基础设施105可以指具有多个服务器(包括服务器106A和106B)以及计算设备(包括经典计算设备CPU 115A-115M和量子计算设备120A-120N)的服务提供商数据中心。应当注意,计算设备可以由单个或多个机器来实现。此外,可以针对单个组织操作基于云的基础设施105。操作、管理和/或托管此类基础设施的此类组织的非限制性示例可包括但不限于 等。
服务器106A和106B可以指被配置为经由网络104从用户或用户实体接收至少程序107和109的在基于云的基础设施105上托管的多个(以数百到数千的量级)服务器中的两个。服务器106A和106B还可以被配置为分别接收和/或存储程序107和109的执行的部分或完整结果108和110,并且还经由网络104将这样的结果返回给用户或用户实体。服务器106A和106B都不限于仅接收混合程序、经典程序或量子程序。因此,除非在此另有说明,否则在服务器106A和106B中的任一个处接收的或从服务器106A和106B中的任一个发送的程序的类型之间不应有区别。此外,除非上下文另外需要,否则此后可参考服务器106,这可暗示对服务器106A和106B中的任一个的参考,而不背离本文描述的量子混合计算的实施例的精神或范围。还应当注意,服务器106A和106B可以由单个或多个机器来实现,并且程序107和109可以跨单个或多个连接或信道被提交到服务器106A和106B。即,根据至少一个示例性实施例,服务器106A和106B可以被实现为单个服务器,并且至少执行在此描述为归属于任一服务器的所有函数。
程序107可以指经由网络104从用户或用户实体接收的和/或由服务器106存储的一个或多个程序。程序107可以包括以旨在用于在第一计算环境中执行的第一语言编写的一个或多个可执行组件或函数以及以旨在用于在第二计算环境中执行的第二语言编写的一个或多个可执行组件或函数。第一语言可以是经典计算编程语言,而第二语言可以是量子计算语言,例如,Python。
更具体地,程序107可以指经由网络104从用户或用户实体接收的和/或由服务器106存储的一个或多个程序。程序107可以包括一个或多个经典计算程序和/或一个或多个混合程序112。经典计算程序可以用经典编程语言来编写,并且在此将不进行描述。
通常在经典环境中编写或编程的混合程序112可以包括一个或多个经典组件或函数以及一个或多个量子电路125。基于与相应计算环境中的任一个固有关联的特征,诸如但不限于函数、语言、库等,可以将经典组件或函数与量子电路区分开。例如,可以使用Python软件开发工具包(SDK)来编写或编程程序107,并且包括用于执行一个或多个量子科学计算的指令。因此,当接收到的程序107包括经典计算组件或函数,和/或以经典计算语言编写;和包括量子计算函数,和/或以量子计算语言编写时,服务器106A可以将接收到的程序107标识为混合程序。本文引用的SDK不限于任何特定的量子语言。
结果108可以指由在CPU 115A-115M中的一个或多个上执行的一个或多个经典计算程序的执行所得的迭代或累积结果。另外,或可替换地,结果108可以包括来自在CPU115A-115M中的一个或多个和QPU 120A-120N中的一个或多个上执行混合程序112的结果113。此外,结果113可以包括执行混合程序112的迭代或累积结果。结果108可以存储在服务器106上和/或经由网络104返回给用户或用户实体。
程序109可以指经由网络104从用户或用户实体接收的和/或由服务器106存储的一个或多个程序。程序109可以包括至少一个或多个QPU电路117,QPU电路117在旨在用于在量子计算环境中执行的经典环境中被编写或编程。因此,包括在程序109中的QPU电路117可以完全以量子计算语言编写或编程,或者仅包括量子电路。
结果110可以指由在QPU 120A-120N中的一个或多个上执行的、包括在程序109中的QPU电路117的执行所得的迭代或累积结果。结果110可以存储在服务器106上和/或经由网络104返回给用户或用户实体。
经典计算设备CPU 115A-115M可以指包括经典计算机、处理设备和/或甚至各个处理器的经典计算环境的一个或多个实施例,在所述经典计算机、处理设备和/或甚至个体处理器上至少管理混合程序112,并且在其上测量或整理混合程序112的至少部分的结果。
CPU 115A-115M可以将混合程序112接收到混合作业队列中,该混合作业队列是包括在CPU 115的一个或多个实施例中或与之相关联的存储器或存储组件或设备;管理混合程序112,包括将一个或多个经典组件或函数的执行分配给CPU 115A-115M中的任何一个或多个;将一个或多个量子电路125的执行分配给QPU 120A-120N中的任何一个或多个;在所分配的处理设备上调度对经典组件或函数以及电路125的处理;启动对经典组件或函数以及电路125的执行;以及整理混合程序112的迭代和/或累积结果,包括相应经典组件或函数的结果113和量子电路125的结果127。
CPU 115A-115M可以按数十万次的量级迭代地管理混合程序112的处理,直到达到处理和/或时间里程碑。此类里程碑的一般示例可涉及预定迭代次数、迭代计算的时间限制、连续迭代的结果之间的预定阈值差等。
此外,尽管CPU 115M表示在量子混合计算的任何实施例中对CPU的数量没有限制,除非上下文另外要求,否则在不脱离本文描述的量子混合计算的实施例的精神或范围的情况下,下文可以参考CPU 115。此外,尽管在此参考CPU,但在量子混合计算的上下文中,经典计算处理器的实施例还可以或可替换地包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、张量处理单元(TPU)等。
量子计算设备120A-120N可以指包括量子计算机、处理设备和/或甚至各个处理器在内的量子计算环境的多个实施例,QPU电路117和量子电路125可以在这些处理器上执行。如前所述,CPU 115A-115M可以管理混合程序112的处理。在这方面,量子计算设备120A-120N各具有经典计算接口来协调相应量子设备上的处理。
此外,尽管QPU 120N表示在量子混合计算的任何实施例中对QPU的数量没有限制,除非上下文另外要求,否则在不脱离本文描述的量子混合计算的实施例的精神或范围的情况下,下文可以参考QPU 120。
连接器126可以连接CPU 115和QPU 120的各种排列。连接器126可以实施为硬件连接或至少100GB量级的高速以太网连接。无论如何,连接器126的实现是使CPU 115和QPU120中的任何一个之间的延迟和/或滞后最小化。因此,根据量子混合计算的至少一些实施例,CPU 115和QPU 120可以在物理上共同定位,即,通过连接器126在与基于云的基础设施105相对应的数据中心中或者在单个结构单元(例如,外壳、基板、设备)中物理地连接。
然而,连接器126可以不被认为是简单的连接器或简单的设计选择。当在CPU 115和QPU 120上的处理之间切换时,由于在量子比特系统中保持相干性的时间很短,因此使延迟最小化变得至关重要。因此,尽可能接近QPU 120执行混合程序112的大部分。而且,由于在执行混合程序112的过程中CPU 115和QPU 120可能产生大量的经典数据,因此当处理器的物理和系统分离增加时,从其间穿梭传送信息的成本增加。
然而,替代实施例可预期CPU 115和QPU 120根据发展技术而通过连接器126虚拟地连接,以使由大量数据传输的传送和数据传输的迭代所导致的延迟和/或滞后最小化。
托管在基于云的基础设施105上或以其他方式与基于云的基础设施105相关联的服务器106、CPU 115和QPU 115的数量可以在一个实施例与另一个实施例之间变化,而不脱离如本文所述的量子混合计算的精神或范围。因此,在量子混合计算的任何实施例中,CPU115M和QPU 120N的数量可以相等,也可以不相等。
图2示出了根据本文描述的至少一些实施例布置的、可以通过其实现量子混合计算的处理器系统200的示例配置。如图所示,系统200至少包括CPU 115、QPU 120、连接器126、结果队列229、混合作业队列230和量子电路队列235。
CPU 115可以指包括经典计算机、处理设备和/或甚至各个处理器在内的经典计算环境的一个或多个实施例,如在此关于图1所描述的。如图所示,CPU 115至少包括操作系统(OS)205、用户程序210、QPU API 215和执行沙箱220。
OS 205可以指被设计、编程或以其他方式配置成控制经典计算软件和硬件组件的经典计算操作系统。因此,根据量子混合处理的至少一些实施例,OS 205可被设计、编程或以其他方式配置成接收混合程序112,将一个或多个经典组件或函数的执行分配给CPU 115中的任何一个或多个;调度和/或优先化针对经典组件或函数以及电路125的处理;将一个或多个量子电路125分配给混合作业队列130-130N中的任何一个或多个,以在QPU 120上最终执行;发起混合程序112的执行;以及整理混合程序112的迭代和/或累积结果。
混合作业队列230A-230N可以指包括在CPU 115的一个或多个实施例中或以其他方式与CPU 115的一个或多个实施例相关联的存储器或存储组件或设备。因为量子电路是线性的,混合程序112中包括的量子电路可以以与批处理相同的方式排队。因此,混合作业队列230A-230N可被设计、编程或以其他方式配置成存储用于QPU 120的一个或多个分配的实施例上的调度或优先化执行的量子电路125。
用户程序210可以指被设计、编程或以其他方式配置为执行与混合程序112相对应的经典组件或函数的程序。这种执行的结果可以迭代地或累积地发送或提交到一个或多个结果队列229A-229N。
执行沙箱220,利用QPU API(应用编程接口)215,可以根据由OS 205制定的调度和优先级排序,将量子电路125发送或提交给QPU 120中被分配的一个。因此,当电路125被发送或提交并且当结果127被接收时,执行沙箱220在其与QPU 120的交互中可以被隔离。来自电路125的执行的结果127可被迭代地或累积地发送或提交到结果队列229A-229N。
执行沙箱220还可以被设计、编程或以其他方式配置成基于QPU 120上的执行的迭代结果来更新或替换电路125,然后将更新的或新的电路发送或提交给QPU 120以用于继续的迭代处理。
此外,执行沙箱215的单独实例被用于每个电路125,因此便于并行地执行多个电路。
混合程序112的这种计算可以继续进行数十万次量级的迭代,直到达到处理和/或时间里程碑为止。此类里程碑的非限制性示例可涉及预定迭代次数、迭代计算的时间限制、连续迭代的结果之间的预定阈值差等。
结果队列229A-229N可以是包括在CPU 115的一个或多个实施例中或以其他方式与CPU 115的一个或多个实施例相关联的存储器或存储组件或设备。结果队列229A-229N可以被设计、编程或以其他方式配置成存储混合程序112的执行的迭代和累积结果,包括对应的经典组件或函数和量子电路的执行。
量子电路可以孤立地执行。因此,当QPU 120的实施例接收QPU电路117但是不能执行所接收的电路时,QPU电路117可以被分配给电路队列235A-235N中的一个或多个。
电路队列235A-235N可以指包括在QPU 120的一个或多个实施例中或以其他方式与之相关联的存储器或存储组件或设备。电路队列235A-235N可被设计、编程或以其他方式配置成存储QPU电路117,以用于QPU 120的实施例上的经调度或优先化执行。当需要QPU120为与混合程序112相关联的电路125执行量子处理时,QPU 120可从电路队列235A-235N切断,即,不能执行QPU电路117中的任何一个。因此,可将存储于电路队列235A-235N中的任何一个中的QPU电路117分配给QPU 120的未被分配与混合程序112相对应的任何电路125的一个实施例。
图3示出了根据本文描述的至少一些实施例布置的、用于促进量子混合计算的至少部分的处理器300的示例框图配置。如图所示,处理器300可以对应于本文关于系统100和200所描述的CPU 115中的任何一个;此外,处理器300至少包括接收器305、仲裁器310、调度器315和管理器320。
接收器305可以指被设计、编程或以其他方式配置为经由网络(例如,互联网)从用户或用户实体接收至少混合程序的组件或模块。混合程序可以指在经典计算环境中编程的量子程序或迭代过程,其至少一些函数旨在用于在量子计算环境中执行。
仲裁器310可以指被设计、编程或以其他方式配置为将与所接收的混合程序相对应的一个或多个经典组件或函数的执行分配给一个或多个经典处理设备并且将一个或多个量子电路的执行分配给任何一个或多个量子处理设备的组件或模块。如上所述,仲裁器310可以基于与经典处理或量子处理中的任何一个固有地相关联的函数的一个或多个特征来分配函数。这样的特征在本领域中是已知的,因此在此不进行描述。此外,如果函数能够在经典计算环境或量子计算环境中的任何一个中由一个以上的处理器执行,那么仲裁器310可基于试探法(heuristics)和处理器的经表征的性能概况(profile)将所述函数分配给相应处理器。
调度器315可以指被设计、编程或以其他方式配置为调度针对经典组件或函数的处理以及由仲裁器310分配的电路处理的组件或模块。作为调度的一部分,调度器315可以对经典计算环境和量子计算环境两者中的各个函数的执行进行优先化。调度器315可以出于优化目的以及基于函数之间的依赖关系(即,并行化)来对调度进行优先化。
管理器320可以指被设计、编程或以其他方式配置成管理所接收的混合程序的执行的组件或模块。例如,管理器320可以发起经典组件或函数以及与混合程序相对应的量子电路的执行;在经典计算环境和量子计算环境中的处理器之间传送函数的执行的部分结果,其中该传送在适于执行的任何一个方向上;以及整理混合程序的迭代和/或累积结果,以进行数十万次量级的迭代,直到达到处理和/或时间里程碑为止。此类里程碑的非限制性示例可涉及预定迭代次数、迭代计算的时间限制、连续迭代的结果之间的预定阈值差等。
作为管理混合程序112的执行的一部分,管理器320可以被设计、编程或以其他方式配置为根据混合程序112的源代码中的命令(例如,用于在QPU 120中的指定QPU 120上执行电路120的指令)来执行指令以将处理从CPU 115切换到QPU 120,反之亦然。在任一计算环境内改变处理器的指令可由相应环境暴露给混合应用程序120的任何软件库或SDK使用,或者当确定应使用更合适的处理器(例如,切换到另一设备的命令)时,可由相应计算环境以编程方式插入指令,该命令由域特定语言的编译器插入。
图4示出了根据本文描述的至少一些实施例的示例处理流程400,通过该流程来实现至少部分的混合计算。如图所示,处理流程400包括由包括在基于云的基础设施105上托管的系统100和200中的处理器300的各种组件执行的子过程。然而,处理流程400不限于这样的组件,因为可以通过将这里描述的子过程中的两个或更多个重新排序、消除子过程中的至少一个、添加另外的子过程、替换组件或者甚至使各种组件承担符合以下描述中的其他组件的子处理角色来进行明显的修改。处理流程400可以包括如框405、404、410、415、420、425、430、435、440、445和/或450中的一个或多个所示的各种操作、函数或动作。这些各种操作、函数或动作可以例如对应于处理器可执行的使函数被执行的软件、程序代码或程序指令。处理可以在框405处开始。
在框405(接收程序),服务器106可经由网络104从用户或用户实体接收混合程序。处理可进行到决策框410。
在决策框410处(混合程序?),服务器106可确定所接收的程序是否为混合程序。该确定可以基于各种标准来进行,例如,所接收的程序包括经典计算组件或函数和/或以经典计算语言来编写,并且进一步包括量子计算函数和/或以量子计算语言来编写。服务器106可以基于与相应计算环境中的任一个固有关联的特征(诸如但不限于函数、语言、库等)来将经典组件或函数与量子电路区分开来。例如,可以使用python软件开发工具包(SDK)来编写或编程程序107,并且程序107可包括用于执行一个或多个量子科学计算的指令;因此,根据本文中所描述的示例,服务器106可确定所接收的程序107为混合程序。
如果所接收的程序107不是混合程序(否),而是经典计算程序,即,服务器106检测到所接收的程序107仅包含经典计算组件,则处理可以进行到框440。如果所接收的程序是混合程序(是),则处理可进行到框415。
在框440(执行(一个或多个)作业),可以在CPU 115的一个或多个实施例上执行经典计算程序,并且可以在框430处整理结果。
如果所接收的程序不是混合程序(否),而是量子计算程序,即,服务器106检测到所接收的程序109仅包含量子电路,则处理可以进行到框445。
在框445(将(一个或多个)电路发送到QPU),可以将量子电路直接发送到QPU 120中的一个用于处理,或者发送到电路队列235A-235N中的一个以等待处理,执行发生在框450处。可在框430处整理此处理的结果。
在框415(分配给适当的处理器),仲裁器310可以将一个或多个经典组件或函数的执行分配给CPU 115中的任何一个或多个,并且将与混合电路相关联的一个或多个量子电路的执行分配给QPU 120中的任何一个或多个。处理可以进行到框420。
在框420(调度处理),调度器315可在框415处分配的处理设备上调度对经典组件或函数以及与混合电路相关联的量子电路的处理。调度可以是基于可被写入混合程序中的任何准则的处理的优先化、以优化处理、以促进所执行的过程和/或电路之间的并行化、资源分配等。处理可以进行到框425。
在框425(启动处理),管理器320可基于在框410处的调度或优先级排序来启动对经典组件或函数以及与混合程序相关联的电路的执行。这样的执行可以包括将量子电路发送到QPU 120中的一个以进行处理或者发送到电路队列235A-235N中的一个以等待处理。处理流程400可以进行到框430。
在框430(整理结果),管理器320可整理混合程序112的迭代和/或累积结果,包括相应经典组分和函数的结果和对应于混合程序的量子电路的结果。即,根据迭代处理的至少一个已知示例,启动的混合程序包括执行经典代码以生成量子电路,从而产生对应的结果。执行这种处理的多次迭代,直到完成。处理可以进行到框435。
在框435(管理)处,管理器320还可以按数十万次的量级来迭代地管理对混合程序的处理,直到达到处理和/或时间里程碑为止。此类里程碑的示例可涉及预定迭代次数、迭代计算的时间限制、连续迭代的结果之间的预定阈值差等。因此,管理还可以包括基于先前迭代的迭代或累积结果中的任一个来更新或替换与混合程序相对应的所执行的量子电路。处理可以基于是否已经达到适当的里程碑来进行或终止。
图5示出了说明性的计算实施例,其中量子混合计算的任何过程和子过程可以实现为存储在计算机可读介质上的计算机可读指令。计算机可读指令可以例如由如本文所引用的设备的处理器来执行,该处理器具有网络元件和/或与其相对应的任何其他设备,特别是当适用于与用于量子混合计算的系统100和200相对应的上述应用和/或程序时。
在非常基本的配置中,计算设备500通常可以至少包括一个或多个处理器502、系统存储器504、一个或多个输入组件506、一个或多个输出组件508、显示组件510、计算机可读介质512和收发器514。
处理器502可指例如微处理器、微控制器、数字信号处理器或其任何组合。
存储器504可以指例如易失性存储器、非易失性存储器或其任何组合。存储器504可以在其中存储操作系统205、应用和/或程序数据。即,存储器504可以存储用于实现上述任何函数或操作的可执行指令,因此,存储器504可以被认为是计算机可读介质。
输入组件506可以是指内置的或通信耦合的键盘、触摸屏或电信设备。可替换地,输入组件506可以包括麦克风,该麦克风被配置为与可以存储在存储器504中的语音识别程序合作,从计算设备500的用户接收语音命令。此外,输入组件506如果不是内置于计算设备500,则可以经由包括但不限于射频或蓝牙的短程通信协议来通信地耦合到计算设备500。
输出组件508可以指被配置为向外部设备输出命令和数据的内置或可从计算设备500移除的组件或模块。
显示组件510可以指例如可以具有触摸输入能力的固态显示器。即,显示组件510可包括可与输入组件506共享或替换输入组件506的能力的能力。
计算机可读介质512可以指可分离的机器可读介质,其被配置为存储体现上述任何函数或操作的一个或多个程序。即,计算机可读介质512可被接收到计算设备500的驱动组件中或以其他方式连接到计算设备500的驱动组件,该计算机可读介质512可存储用于实现上述任何函数或操作的可执行指令。这些指令可以是补充的或独立于存储器504所存储的那些指令。
收发器514可以指被配置为有线网络或直接有线连接的计算设备500的网络通信链路。可替换地,收发器514可以被配置为无线连接,例如,射频(RF)、红外、蓝牙和其他无线协议。
由上述可知,应当理解的是,为了说明性目的,已经在本说明书中对本发明的各种实施方式进行了描述,并且在不偏离本发明的范围和精神的情况下可以进行各种修改。因此,本文所公开的各种实施方式不用于限制下面的权利要求所指示的真正的范围和精神。
Claims (22)
1.一种方法,该方法包括:
在具有包含一个或多个经典处理器的经典计算环境和包含一个或多个量子处理器的量子计算环境的基于云的基础设施处,接收包含多个计算函数的程序;
基于所述多个计算函数,确定所述程序是否是只包括经典计算函数的经典计算程序、只包括量子计算函数的量子计算程序、或包括经典计算函数和量子计算函数二者的混合程序;
响应于确定所述程序是混合程序:
分配以第一语言编写的与所述混合程序相对应的相应经典计算函数以供在所述经典计算环境中执行,并且分配以第二语言编写的与所述混合程序相对应的相应量子计算函数以供在所述量子计算环境中执行;
调度对与所述混合程序相对应的所述相应经典计算函数和量子计算函数的处理;
启动所述混合程序的执行;
在所述一个或多个经典处理器和所述一个或多个量子处理器之间传送所述混合程序的执行期间的部分结果;以及
整理所述混合程序的执行结果。
2.根据权利要求1所述的方法,其中,所述分配基于相应计算函数的一个或多个特征,所述相应计算函数与经典信息处理或量子信息处理固有地关联。
3.根据权利要求2所述的方法,其中,所述经典信息处理包括任何形式的数字处理。
4.根据权利要求1所述的方法,其中,所述分配基于试探法以及所述一个或多个经典处理器中的至少一个和所述一个或多个量子处理器中的至少一个的经表征的性能概况。
5.根据权利要求1所述的方法,其中,所述调度包括用于经典信息处理和量子信息处理的相应计算函数的优先化。
6.根据权利要求5所述的方法,其中,所述调度是基于优化的调度。
7.根据权利要求5所述的方法,其中,所述调度基于所述计算函数之间的数据依赖关系。
8.根据权利要求5所述的方法,其中,所述启动基于所述优先化的结果。
9.一种装置,该装置包括:
接收器单元,其包括被配置为使所述装置接收混合程序的电路,该混合程序包含以用于在包含一个或多个经典处理器的经典计算环境中执行的第一语言和用于在包含一个或多个量子处理器的量子计算环境中执行的第二语言编写的多个计算函数;
仲裁器单元,其包括电路,该电路被配置为使所述装置基于相应计算函数的编写语言将所述相应计算函数分配给所述一个或多个经典处理器或所述一个或多个量子处理器;
调度器单元,其包括电路,该电路被配置为使所述装置调度所述仲裁器单元所分配的在所述一个或多个经典处理器或所述一个或多个量子处理器上对所述相应计算函数的处理;以及
管理器单元,其包括电路,该电路被配置为使所述装置:
在所述一个或多个经典处理器和所述一个或多个量子处理器之间传送所调度的处理的部分结果,
整理所述一个或多个经典处理器和所述一个或多个量子处理器上的处理结果。
10.根据权利要求9所述的装置,所述装置进一步包括:
监督器单元,其包括逻辑,该逻辑被配置为使所述装置监视所述一个或多个量子处理器上的处理。
11.根据权利要求9所述的装置,其中,所述经典计算环境包括CPU处理、GPU处理或TPU处理中的任何一种。
12.根据权利要求9所述的装置,其中,所述仲裁器单元基于包括试探法以及所述一个或多个经典处理器中的至少一个和所述一个或多个量子处理器中的至少一个的经表征的性能概况在内的准则来分配相应计算函数。
13.根据权利要求9所述的装置,其中,所述仲裁器单元基于包括针对所述相应计算函数中的任何一个的已知处理要求在内的准则来分配相应计算函数。
14.一种存储可执行指令的非暂时性计算机可读介质,所述可执行指令在执行时使数字计算处理器执行包括以下的函数:
在具有包含一个或多个经典处理器的经典计算环境和包含一个或多个量子处理器的量子计算环境的基于云的基础设施处,接收具有多个计算函数的程序;
基于所述多个计算函数,确定所述程序是否是只包括经典计算函数的经典计算程序、只包括量子计算函数的量子计算程序、或包括以第一语言编写的经典计算函数和以第二语言编写的量子计算函数二者的混合程序;
响应于确定所述程序是混合程序:
分配以所述第一语言编写的所述经典计算函数以供在包含经典信息处理逻辑的所述经典计算环境中执行;
分配以所述第二语言编写的所述量子计算函数以供在包含量子信息处理逻辑的所述量子计算环境中执行;
相对于所述量子计算环境中的执行来调度所述经典计算环境中的执行;以及
整理经调度执行的结果。
15.根据权利要求14所述的计算机可读介质,其中,所述第一语言是数字计算语言。
16.根据权利要求14所述的计算机可读介质,其中,以所述第一语言编写的所述经典计算函数的分配包括将以所述第一语言编写的所述经典计算函数的执行分配给所述经典处理器中的相应一个经典处理器。
17.根据权利要求16所述的计算机可读介质,其中,在所述经典处理器中的多个经典处理器上并行执行所分配的以所述第一语言编写的经典计算函数。
18.根据权利要求14所述的计算机可读介质,其中,所述第二语言是量子计算语言。
19.根据权利要求14所述的计算机可读介质,其中,以所述第二语言编写的所述量子计算函数的分配包括将以所述第二语言编写的所述量子计算函数中的一个或多个的执行分配给所述量子处理器中的相应一个量子处理器。
20.根据权利要求14所述的计算机可读介质,其中,在所述量子处理器中的多个量子处理器上并行执行所分配的以所述第二语言编写的一个或多个量子计算函数。
21.根据权利要求14所述的计算机可读介质,其中,调度执行还基于在所述量子计算环境中和所述经典计算环境中执行相应计算函数的时间。
22.根据权利要求14所述的计算机可读介质,其中,调度执行还基于所述经典计算环境或所述量子计算环境中的任一个中的资源使用。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/038,484 | 2018-07-18 | ||
US16/038,484 US11087232B2 (en) | 2018-07-18 | 2018-07-18 | Quantum hybrid computation |
PCT/US2019/042344 WO2020018752A1 (en) | 2018-07-18 | 2019-07-18 | Quantum hybrid computation |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112714905A CN112714905A (zh) | 2021-04-27 |
CN112714905B true CN112714905B (zh) | 2022-08-26 |
Family
ID=69161777
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980048131.8A Active CN112714905B (zh) | 2018-07-18 | 2019-07-18 | 量子混合计算 |
Country Status (5)
Country | Link |
---|---|
US (2) | US11087232B2 (zh) |
EP (1) | EP3824387A4 (zh) |
JP (1) | JP2021530783A (zh) |
CN (1) | CN112714905B (zh) |
WO (1) | WO2020018752A1 (zh) |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10599988B2 (en) | 2016-03-02 | 2020-03-24 | D-Wave Systems Inc. | Systems and methods for analog processing of problem graphs having arbitrary size and/or connectivity |
US11481354B2 (en) | 2018-04-24 | 2022-10-25 | D-Wave Systems Inc. | Systems and methods for calculating the ground state of non-diagonal Hamiltonians |
US11593174B2 (en) * | 2018-10-16 | 2023-02-28 | D-Wave Systems Inc. | Systems and methods for scheduling programs for dedicated execution on a quantum processor |
JP2022517100A (ja) | 2019-01-17 | 2022-03-04 | ディー-ウェイブ システムズ インコーポレイテッド | クラスタ収縮を使用するハイブリッドアルゴリズムのためのシステム及び方法 |
US11593695B2 (en) | 2019-03-26 | 2023-02-28 | D-Wave Systems Inc. | Systems and methods for hybrid analog and digital processing of a computational problem using mean fields |
US11074104B2 (en) * | 2019-04-09 | 2021-07-27 | International Business Machines Corporation | Quantum adaptive circuit dispatcher |
US11714730B2 (en) | 2019-08-20 | 2023-08-01 | D-Wave Systems Inc. | Systems and methods for high availability, failover and load balancing of heterogeneous resources |
US11704715B2 (en) | 2019-11-27 | 2023-07-18 | Amazon Technologies, Inc. | Quantum computing service supporting multiple quantum computing technologies |
US11605016B2 (en) * | 2019-11-27 | 2023-03-14 | Amazon Technologies, Inc. | Quantum computing service supporting local execution of hybrid algorithms |
US11650869B2 (en) | 2019-11-27 | 2023-05-16 | Amazon Technologies, Inc. | Quantum computing service with local edge devices supporting multiple quantum computing technologies |
US11605033B2 (en) | 2019-11-27 | 2023-03-14 | Amazon Technologies, Inc. | Quantum computing task translation supporting multiple quantum computing technologies |
EP4226294A1 (en) * | 2020-10-12 | 2023-08-16 | Riverlane Ltd | Methods and apparatus for parallel quantum computing |
CN113052318B (zh) * | 2021-03-12 | 2022-11-15 | 清华大学 | 一种实现量子逻辑门的方法及装置 |
CN112862104B (zh) * | 2021-04-01 | 2024-02-27 | 中国科学技术大学 | 混合型量子计算机架构及其执行计算任务的方法 |
JP7317218B2 (ja) * | 2021-04-13 | 2023-07-28 | テンセント・テクノロジー・(シェンジェン)・カンパニー・リミテッド | 量子制御システム、量子制御処理器及び量子命令セットの実行方法 |
EP4330868A1 (en) * | 2021-04-27 | 2024-03-06 | The University of Chicago | System and method of in-queue optimizations for quantum cloud computing |
CN115271079A (zh) * | 2021-04-29 | 2022-11-01 | 合肥本源量子计算科技有限责任公司 | 量子线路的替换方法、装置、介质及量子计算机操作系统 |
US11853848B2 (en) * | 2021-05-07 | 2023-12-26 | International Business Machines Corporation | Backend quantum runtimes |
CN113869520B (zh) * | 2021-10-20 | 2022-07-01 | 中国人民解放军战略支援部队信息工程大学 | 一种共享控制的量子计算机体系结构及其计算方法 |
US11907092B2 (en) | 2021-11-12 | 2024-02-20 | Amazon Technologies, Inc. | Quantum computing monitoring system |
US20230186141A1 (en) * | 2021-12-11 | 2023-06-15 | International Business Machines Corporation | Visual presentation of quantum-classical interface in a user experience |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1870015A (zh) * | 2006-06-28 | 2006-11-29 | 中山大学 | 一种协同量子计算机体系结构方案 |
CN103853549A (zh) * | 2012-12-06 | 2014-06-11 | 国际商业机器公司 | 用于在网络化计算环境中进行程序代码库搜索和选择的方法和系统 |
CN104508627A (zh) * | 2012-10-08 | 2015-04-08 | 惠普发展公司,有限责任合伙企业 | 混合云环境 |
CN107408046A (zh) * | 2015-07-07 | 2017-11-28 | 甲骨文国际公司 | 用于跨异构计算环境供应云服务的系统和方法 |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5933642A (en) * | 1995-04-17 | 1999-08-03 | Ricoh Corporation | Compiling system and method for reconfigurable computing |
US7035906B1 (en) | 1996-11-29 | 2006-04-25 | Ellis Iii Frampton E | Global network computers |
US9800608B2 (en) | 2000-09-25 | 2017-10-24 | Symantec Corporation | Processing data flows with a data flow processor |
US7961194B2 (en) | 2003-11-19 | 2011-06-14 | Lucid Information Technology, Ltd. | Method of controlling in real time the switching of modes of parallel operation of a multi-mode parallel graphics processing subsystem embodied within a host computing system |
US8397224B2 (en) * | 2004-09-13 | 2013-03-12 | The Mathworks, Inc. | Methods and system for executing a program in multiple execution environments |
US8250503B2 (en) | 2006-01-18 | 2012-08-21 | Martin Vorbach | Hardware definition method including determining whether to implement a function as hardware or software |
US20080313430A1 (en) * | 2007-06-12 | 2008-12-18 | Bunyk Paul I | Method and system for increasing quantum computer processing speed using digital co-processor |
US9218567B2 (en) * | 2011-07-06 | 2015-12-22 | D-Wave Systems Inc. | Quantum processor based systems and methods that minimize an objective function |
JP5921856B2 (ja) * | 2011-11-28 | 2016-05-24 | 株式会社日立製作所 | 量子コンピュータシステム、量子コンピュータシステムの制御方法及びプログラム |
US9471880B2 (en) * | 2013-04-12 | 2016-10-18 | D-Wave Systems Inc. | Systems and methods for interacting with a quantum computing system |
JP6465876B2 (ja) * | 2013-06-28 | 2019-02-06 | ディー−ウェイブ システムズ インコーポレイテッド | データの量子処理のためのシステムおよび方法 |
US10599988B2 (en) * | 2016-03-02 | 2020-03-24 | D-Wave Systems Inc. | Systems and methods for analog processing of problem graphs having arbitrary size and/or connectivity |
US9537953B1 (en) | 2016-06-13 | 2017-01-03 | 1Qb Information Technologies Inc. | Methods and systems for quantum ready computations on the cloud |
US9870273B2 (en) * | 2016-06-13 | 2018-01-16 | 1Qb Information Technologies Inc. | Methods and systems for quantum ready and quantum enabled computations |
CN109716360B (zh) * | 2016-06-08 | 2023-08-15 | D-波系统公司 | 用于量子计算的系统和方法 |
CN110023966B (zh) * | 2016-10-24 | 2023-08-25 | 谷歌有限责任公司 | 使用量子计算仿真材料 |
WO2018084829A1 (en) * | 2016-11-01 | 2018-05-11 | Google Llc | Numerical quantum experimentation |
EP3593296A4 (en) * | 2017-03-10 | 2021-05-19 | Rigetti & Co., Inc. | PLANNING EVENTS IN A HYBRID COMPUTING SYSTEM |
EP3642765A4 (en) * | 2017-06-19 | 2021-04-07 | Rigetti & Co., Inc. | DISTRIBUTED QUANTUM COMPUTER SYSTEM |
US11250341B2 (en) * | 2017-09-07 | 2022-02-15 | Lockheed Martin Corporation | System, method and computer readable medium for quassical computing |
US10996979B2 (en) * | 2017-09-29 | 2021-05-04 | International Business Machines Corporation | Job processing in quantum computing enabled cloud environments |
US11120358B2 (en) * | 2018-06-13 | 2021-09-14 | International Business Machines Corporation | Short circuit depth variational quantum computation of Monte Carlo minimization and Nth order moments |
-
2018
- 2018-07-18 US US16/038,484 patent/US11087232B2/en active Active
-
2019
- 2019-07-18 CN CN201980048131.8A patent/CN112714905B/zh active Active
- 2019-07-18 EP EP19838764.9A patent/EP3824387A4/en active Pending
- 2019-07-18 JP JP2021500534A patent/JP2021530783A/ja active Pending
- 2019-07-18 WO PCT/US2019/042344 patent/WO2020018752A1/en active Application Filing
-
2021
- 2021-07-30 US US17/389,483 patent/US20210357799A1/en active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1870015A (zh) * | 2006-06-28 | 2006-11-29 | 中山大学 | 一种协同量子计算机体系结构方案 |
CN104508627A (zh) * | 2012-10-08 | 2015-04-08 | 惠普发展公司,有限责任合伙企业 | 混合云环境 |
CN103853549A (zh) * | 2012-12-06 | 2014-06-11 | 国际商业机器公司 | 用于在网络化计算环境中进行程序代码库搜索和选择的方法和系统 |
CN107408046A (zh) * | 2015-07-07 | 2017-11-28 | 甲骨文国际公司 | 用于跨异构计算环境供应云服务的系统和方法 |
Also Published As
Publication number | Publication date |
---|---|
US11087232B2 (en) | 2021-08-10 |
CN112714905A (zh) | 2021-04-27 |
US20200026551A1 (en) | 2020-01-23 |
EP3824387A4 (en) | 2022-05-04 |
WO2020018752A1 (en) | 2020-01-23 |
US20210357799A1 (en) | 2021-11-18 |
EP3824387A1 (en) | 2021-05-26 |
WO2020018752A9 (en) | 2020-10-29 |
JP2021530783A (ja) | 2021-11-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112714905B (zh) | 量子混合计算 | |
CN111417965B (zh) | 软件限定的量子计算机 | |
CN108885571B (zh) | 分批处理机器学习模型的输入 | |
US20200019435A1 (en) | Dynamic optimizing task scheduling | |
US9424079B2 (en) | Iteration support in a heterogeneous dataflow engine | |
US8671418B2 (en) | Environment modification in a hybrid node computing environment | |
US20200334563A1 (en) | Modular quantum circuit transformation | |
US11030014B2 (en) | Concurrent distributed graph processing system with self-balance | |
US20150199214A1 (en) | System for distributed processing of stream data and method thereof | |
CN113056728A (zh) | 共同调度量子计算作业 | |
CN111165052A (zh) | 启用量子计算的云环境中的作业处理 | |
US11513842B2 (en) | Performance biased resource scheduling based on runtime performance | |
CN118056186A (zh) | 通过量子任务的带外优先级排序实施使用服务质量(QoS)的量子计算服务 | |
CN115330189A (zh) | 一种基于改进飞蛾火焰算法的工作流优化调度方法 | |
JP2023511467A (ja) | 機械学習ワークロードのためのタスクスケジューリング | |
Li et al. | Task placement and resource allocation for edge machine learning: A gnn-based multi-agent reinforcement learning paradigm | |
US20210097396A1 (en) | Neural network training in a distributed system | |
Li et al. | Tapfinger: Task placement and fine-grained resource allocation for edge machine learning | |
CN114020469A (zh) | 基于边缘节点的多任务学习方法、装置、介质与设备 | |
US20220129315A1 (en) | Deep learning autotuning task optimization | |
US11372677B1 (en) | Efficient scheduling of load instructions | |
US20230315522A1 (en) | Systems and methods for implementing distributed scheduling capabilities for computing clusters | |
CN115904673B (zh) | 云计算资源并发调度方法、装置、系统、设备及介质 | |
Do et al. | Co-scheduling ensembles of in situ workflows | |
Shankar | SiaHet: Towards Exploiting Intra-Job Resource Heterogeneity in Heterogeneity-aware, Goodput Optimized Deep Learning Cluster Scheduling |
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 |