CN115204399A - 一种量子计算任务计算方法、装置及量子计算机操作系统 - Google Patents
一种量子计算任务计算方法、装置及量子计算机操作系统 Download PDFInfo
- Publication number
- CN115204399A CN115204399A CN202110383305.5A CN202110383305A CN115204399A CN 115204399 A CN115204399 A CN 115204399A CN 202110383305 A CN202110383305 A CN 202110383305A CN 115204399 A CN115204399 A CN 115204399A
- Authority
- CN
- China
- Prior art keywords
- quantum
- task
- determining
- quantum computing
- computing task
- 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
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
- 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/5038—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 the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Condensed Matter Physics & Semiconductors (AREA)
- Evolutionary Computation (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- Computational Mathematics (AREA)
- Artificial Intelligence (AREA)
- Logic Circuits (AREA)
Abstract
本发明公开了一种量子计算任务计算方法、装置及量子计算机操作系统,属于量子计算领域。所述方法包括获取量子芯片的当前拓扑结构;获取任务队列中的多个量子计算任务,并确定各所述量子计算任务的优先级和比特需求;根据各所述量子计算任务的优先级和比特需求,确定当前拓扑结构支持的各所述量子计算任务为调度任务;针对各所述调度任务对应的量子线路进行处理以获得一可执行量子线路;基于所述当前拓扑结构的量子芯片,针对所述可执行量子线路执行量子计算,并根据执行结果确定各所述调度任务分别对应的计算结果,实现了多量子计算任务的同步并行计算,从而最大化的利用了量子芯片计算资源,提高了量子计算效率。
Description
技术领域
本申请属于量子计算领域,特别是一种量子计算任务计算方法、装置及量子计算机操作系统。
背景技术
量子计算机是一类遵循量子力学规律进行高速数学和逻辑运算、存储及处理量子信息的物理装置。当某个装置处理和计算的是量子信息,运行的是量子算法时,它就是量子计算机。量子计算机因其具有相对普通计算机更高效的处理数学问题的能力,例如,能将破解RSA密钥的时间从数百年加速到数小时,故成为一种正在研究中的关键技术。
目前的量子计算任务在执行计算时,只考虑用户提交的量子计算任务的等待时间和完全空闲的量子芯片的释放时间,以先提交先运行的形式逐一调度任务队列中的量子计算任务给量子芯片执行量子计算,这种方式计算效率低,既浪费了量子芯片计算资源,也影响量子计算效率。
发明内容
本发明的目的是提供一种量子计算任务计算方法、装置、存储介质、及电子装置,以及一种量子计算机操作系统和一种量子计算机。
本发明一方面提供的量子计算任务计算方法,包括:
获取量子芯片的当前拓扑结构;
获取任务队列中的多个量子计算任务,并确定各所述量子计算任务的优先级和比特需求;
根据各所述量子计算任务的优先级和比特需求,确定当前拓扑结构支持的各所述量子计算任务为调度任务;
针对各所述调度任务对应的量子线路进行处理以获得一可执行量子线路;
基于所述当前拓扑结构的量子芯片,针对所述可执行量子线路执行量子计算,并根据执行结果确定各所述调度任务分别对应的计算结果。
如上所述的方法,所述确定各所述量子计算任务的优先级的步骤,包括:
获取各所述量子计算任务的类型;
若所述类型均为未指定比特型,则根据高响应比优先原则确定各所述量子计算任务的优先级。
如上所述的方法,所述确定各所述量子计算任务的优先级的步骤,还包括:
若所述类型均为指定比特型,则根据先来先服务原则确定各所述量子计算任务的优先级。
如上所述的方法,所述确定各所述量子计算任务的优先级的步骤,还包括:
若所述类型包括指定比特型和未指定比特型,则指定比特型对应的量子计算任务的优先级高于未指定比特型对应的量子计算任务。
如上所述的方法,所述根据各所述量子计算任务的优先级和比特需求,确定当前拓扑结构支持的各所述量子计算任务为调度任务的步骤,包括:
获取所述任务队列中优先级最高的所述量子计算任务;
根据当前获取的所述量子计算任务的比特需求,确定当前拓扑结构是否满足对应的比特需求,及当前拓扑结构中的剩余物理比特;
若是,则将当前获取的所述量子计算任务确定为调度任务,并利用所述剩余物理比特更新当前拓扑结构;若否,则不将当前获取的所述量子计算任务确定为调度任务;
获取所述任务队列中下一优先级的所述量子计算任务,并返回所述根据当前获取的所述量子计算任务的比特需求,确定当前拓扑结构是否满足对应的比特需求,及当前拓扑结构中的剩余比特的步骤。
如上所述的方法,所述针对各所述调度任务对应的量子线路进行处理以获得一可执行量子线路的步骤,包括:
将各所述调度任务对应的量子线路进行合并处理以获得可执行量子线路。
如上所述的方法,所述将各所述调度任务对应的量子线路进行合并处理以获得可执行量子线路的步骤,包括:
根据各所述调度任务对应的量子线路,确定当前拓扑结构中与各所述量子线路包含的量子比特相对应的映射比特;
利用所述映射比特更新各所述量子线路内的量子比特获得对应的更新量子线路;
按量子逻辑门的执行时序整合各所述更新量子线路以获得所述可执行量子线路。
如上所述的方法,所述针对所述可执行量子线路执行量子计算的步骤,包括:
编译所述可执行量子线路以获得对应的波形指令;
将所述波形指令对应的信号发送至所述当前拓扑结构的量子芯片以实现量子计算。
如上所述的方法,所述根据执行结果确定各所述调度任务分别对应的计算结果的步骤,包括:
获得表示所述执行结果的量子态;
确定所述量子态中与各所述调度任务对应的映射比特所对应的子量子态;
将各所述子量子态对应的概率作为对应所述调度任务的计算结果。
如上所述的方法,所述获得表示所述执行结果的量子态的步骤,包括:
确定各所述量子线路对应的所有映射比特的本征态;
获得各所述本征态对应的测量概率。
本发明的第二方面提供的量子计算任务计算装置,包括:
第一获取模块,用于获取量子芯片的当前拓扑结构;
第二获取模块,用于获取任务队列中的多个量子计算任务,并确定各所述量子计算任务的优先级和比特需求
任务确定模块,用于根据各所述量子计算任务的优先级和比特需求,确定当前拓扑结构支持的各所述量子计算任务为调度任务;
线路处理模块,用于针对各所述调度任务对应的量子线路进行处理以获得一可执行量子线路;
执行计算模块,用于基于所述当前拓扑结构的量子芯片,针对所述可执行量子线路执行量子计算,并根据执行结果确定各所述调度任务分别对应的计算结果。
本发明第三方面提供的存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行所述的方法。
本发明第四方面提供的电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行所述的方法。
本发明第五方面提供的一种量子计算机操作系统,所述量子计算机操作系统根据所述的方法实现量子计算任务计算。
本发明第六方面提供的一种量子计算机,所述量子计算机包括所述的量子计算机操作系统。
与现有技术相比,本发明通过获取量子芯片的当前拓扑结构,以及获取任务队列中的多个量子计算任务,并确定各所述量子计算任务的优先级和比特需求;然后,根据各所述量子计算任务的优先级和比特需求,确定当前拓扑结构支持的各所述量子计算任务为调度任务;再针对各所述调度任务对应的量子线路进行处理以获得一可执行量子线路;最后,基于所述当前拓扑结构的量子芯片,针对所述可执行量子线路执行量子计算,并根据执行结果确定各所述调度任务分别对应的计算结果,有助于在当前拓扑结构上实现多量子计算任务的同步并行计算。需要强调的是,本发明基于量子芯片的当前拓扑结构按照任务队列中各所述量子计算任务的优先级和比特需求,确定本次调度的量子计算任务的最佳组合方式,以充分利用当前拓扑结构的计算资源,在多个量子计算任务对应的比特需求不同时,实现多个量子计算任务在同一量子芯片上的并行计算,从而最大化使用量子芯片计算资源,提高量子计算效率。
附图说明
图1为本发明实施例提供的一种量子计算任务计算方法的计算机终端的硬件结构框图;
图2为本发明实施例中提供的1#量子线路的图形化显示示意图;
图3为本发明实施例提供的一种量子计算任务计算方法的流程示意图;
图4为本发明实施例提供的一种量子计算任务计算装置的结构示意图。
具体实施方式
下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
本发明实施例首先提供了一种量子计算任务计算方法,该方法可以应用于电子设备,如计算机终端,具体如普通电脑、量子计算机等。
下面以运行在计算机终端上为例对其进行详细说明。
图1为本发明实施例提供的一种量子计算任务计算方法的计算机终端的硬件结构框图。
参见图1所示,计算机终端可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)和用于存储数据的存储器104,可选地,上述计算机终端还可以包括用于通信功能的传输装置106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述计算机终端的结构造成限定。例如,计算机终端还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
存储器104可用于存储应用软件的软件程序以及模块,如本申请实施例中的量子计算任务计算方法对应的程序指令/模块,处理器102通过运行存储在存储器104内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端10的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(Network Interface Controller,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
需要说明的是,本发明实施例所指量子程序,即是经典语言编写的表征量子比特及其演化的程序,其中与量子计算相关的量子比特、量子逻辑门等等均有相应的经典代码表示。
量子线路作为量子程序的一种体现方式,也称量子逻辑电路,是最常用的通用量子计算模型,表示在抽象概念下对于量子比特进行操作的线路,其组成包括量子比特、线路(时间线),以及各种量子逻辑门,最后常需要通过量子测量操作将结果读取出来。量子线路的展现方式可以是按一定执行时序排列的量子逻辑门序列。
具体的,例如一段量子程序:
QCircuitcir;
cir<<H(q[0])<<H(q[1])<<H(q[2])<<H(q[3])<<RZ(q[0],PI/2)<<RY(q[1],PI/4)<<RZ(q[2],PI/4)<<CNOT(q[0],q[1])<<CR(q[1],q[2],PI/3)<<CNOT(q[2],q[3])<<C NOT(q[0],q[3]).
对应的量子线路(记为1#量子线路),可表示为:
q[0]:H(q[0])、RZ(q[0],PI/2)
q[1]:H(q[1])、RY(q[1],PI/4)、CNOT(q[0],q[1])
q[2]:H(q[2])、RZ(q[2],-PI/4)、CR(q[1],q[2],PI/3)
q[3]:H(q[3])、CNOT(q[2],q[3])、CNOT(q[0],q[3])
其中,q[0]、q[1]、q[2]、q[3]是指比特位从0至3的量子比特,通常也可被记为q0、q1、q2、q3。
更为形象的一种展现方式,与上述量子逻辑门序列对应的量子线路图展示参照图2所示。
不同于传统电路是用金属线所连接以传递电压信号或电流信号,在量子线路中,线路可看成是由时间所连接,亦即量子比特的状态随着时间自然演化,在这过程中按照哈密顿运算符的指示,一直到遇上量子逻辑门而被操作。
一个量子程序整体上对应有一条总的量子线路,本发明所述量子程序即指该条总的量子线路,其中,该总的量子线路中的量子比特总数与量子程序的量子比特总数相同。可以理解为:一个量子程序可以由量子线路、针对量子线路中量子比特的测量操作、保存测量结果的寄存器及控制流节点(跳转指令)组成,一条量子线路可以包含几十上百个甚至千上万个量子逻辑门操作。量子程序的执行过程,就是对所有的量子逻辑门按照一定时序执行的过程。需要说明的是,时序即单个量子逻辑门被执行的时间顺序。
需要说明的是,经典计算中,最基本的单元是比特,而最基本的控制模式是逻辑门,可以通过逻辑门的组合来达到控制电路的目的。类似地,处理量子比特的方式就是量子逻辑门。使用量子逻辑门,能够使量子态发生演化,量子逻辑门是构成量子线路的基础,量子逻辑门包括单比特量子逻辑门(或单量子逻辑门,简称“单门”),如Hadamard门(H门,阿达马门)、泡利-X门(X门)、泡利-Y门(Y门)、泡利-Z门(Z门)、RX门、RY门、RZ门等等;两比特量子逻辑门(或双量子逻辑门,简称“双门”),如CNOT门、CR门、SWAP门、iSWAP门等等;多比特量子逻辑门(或多量子逻辑门,简称“多门”),如Toffoli门等等。量子逻辑门一般使用酉矩阵表示,而酉矩阵不仅是矩阵形式,也是一种操作和变换。一般量子逻辑门在量子态上的作用是通过酉矩阵左乘以量子态右矢对应的矩阵进行计算的。
量子态,即量子比特的逻辑状态。在量子算法(或称量子程序)中,针对量子线路包含的一组量子比特的量子态,采用二进制表示方式,例如,一组量子比特为q0、q1、q2,表示第0位、第1位、第2位量子比特,在二进制表示方式中从高位到低位排序为q2q1q0,该组量子比特对应的量子态共有2的量子比特总数次方个,即8个本征态(确定的状态):|000>、|001>、|010>、|011>、|100>、|101>、|110>、|111>,每个量子态的位与量子比特对应一致,如|001>态,001从高位到低位对应q2q1q0,|>为狄拉克符号。对于包含N个量子比特q0、q1、…、qn、…、qN-1的量子线路,二进制表示量子态的位阶排序为qN-1qN-2…、q1q0。
以单个量子比特说明,单个量子比特的逻辑状态ψ可能处于|0>态、|1>态、|0>态和|1>态的叠加态(不确定状态),具体可以表示为ψ=a|0>+b|1>,其中,a和b为表示量子态振幅(概率幅)的复数,振幅的平方表示概率,a2、b2分别表示逻辑状态是|0>态、|1>态的概率,a2+b2=1。简言之,量子态是各本征态组成的叠加态,当其他态的概率为0时,即处于唯一确定的本征态。
量子芯片是量子计算机中执行量子计算的处理器,量子芯片包含的量子比特结构为处理器的处理单元。由于量子芯片硬件制造技术的约束限制,量子芯片包含的量子比特结构的数量的增加和利用是制约量子计算算力的因素之一,因此需要在量子计算任务调度中需要合理、充分的调用量子芯片上的量子比特。
需要说明的是,在量子计算过程中,发送至量子芯片的物理信号用于驱动量子比特工作进而实现量子计算,用于产生该物理信号的物理硬件设备需要与量子芯片包含的量子比特相匹配。量子芯片以及该物理硬件设备,在任一时刻,只能被控制和驱动一次。目前,在量子计算任务的计算过程中,通常以任意的量子计算任务为单位,依次调度上述物理硬件设备实现该量子计算任务的计算,即量子计算任务在执行计算时,只考虑用户提交的量子计算任务的等待时间和完全空闲的量子芯片的释放时间(即等待量子芯片上被占用的量子比特被完全释放的时间),以先提交先运行的形式逐一调度任务队列中的量子计算任务给量子芯片执行量子计算,这种方式浪费了量子芯片计算资源,也降低了量子计算效率。
下面结合附图进一步介绍本发明实施例提供的一种量子计算任务计算方法。
为了便于区分,在以下介绍中将量子程序、量子线路中量子逻辑门等操作的对象称为量子比特,将量子芯片中的量子比特结构称为物理比特。
图3为本发明实施例提供的一种量子计算任务计算方法的流程示意图。
参见图3,本发明实施例提供一种量子计算任务计算方法,包括步骤S100至步骤S500,其中:
S100、获取量子芯片的当前拓扑结构。
量子芯片的拓扑结构反映量子芯片上的物理比特的空间特点,该空间特点包括量子芯片包含的物理比特的数量、位置,以及物理比特间的连接关系,它决定了量子芯片的可用情况。
量子芯片的当前拓扑结构包含了量子芯片上当前可被使用的物理比特的信息,具体包括当前可被使用的物理比特的数量、及其位置和连接关系,该信息可以根据量子芯片上物理比特的使用情况确定。量子芯片上物理比特的使用情况,示例性的包括:物理比特的被占用情况、物理比特的保真度决定的是否可以使用的情况等。
S200、获取任务队列中的多个量子计算任务,并确定各所述量子计算任务的优先级和比特需求。
在量子计算领域,量子计算任务通常以量子线路进行表示,与量子计算任务对应的量子线路中所包含的量子比特即为该量子计算任务的比特需求,它表示量子芯片执行该量子计算任务所需要的物理比特。而量子计算任务的优先级即任务队列中各量子计算任务被执行计算的顺序。
通常,量子计算操作系统在接收到用户提交的多个量子计算任务后,放入任务队列等待调度执行量子计算,受限于物理比特的状态不能复制,物理比特的相干时间较短等物理因素,多个量子计算任务之间不能进行切换操作,因此,需要按照一定的顺序依次执行各量子计算任务,即按照量子计算任务的优先级高低依次执行。
考虑到量子计算任务对应的量子线路在量子芯片上执行时,包括以下情况:指定量子芯片上特定的物理比特执行对应量子线路,及不指定量子芯片上的物理比特而是由系统根据芯片上物理比特的使用情况分配物理比特执行对应量子线路。基于此,步骤S200中所述确定各所述量子计算任务的优先级的步骤,可以包括以下几种情形。
在本发明的一些实施例中,步骤S200中所述确定各所述量子计算任务的优先级的步骤,包括步骤S201和步骤S202:
S201、获取各所述量子计算任务的类型,所述类型包括未指定比特型和指定比特型中至少之一;S202、若所述类型均为未指定比特型,则根据高响应比优先原则确定各所述量子计算任务的优先级。
需要说明的是,高响应比优先原则,即根据高响应比优先调度算法(HRRN)确定任务优先级顺序的原则,任务队列中的量子计算任务的优先级会随着等待时间的增加而提高,其中:
在本发明的另一些实施例中,步骤S200中所述确定各所述量子计算任务的优先级的步骤,除了步骤S201和步骤S202,还包括步骤S203:
S203、若所述类型均为指定比特型,则根据先来先服务原则确定各所述量子计算任务的优先级。
需要说明的是,先来先服务原则,即根据先来先服务调度算法(FCFS)确定任务优先级顺序的原则,为了避免量子计算任务对应的量子线路所指定的比特有交叉而相互影响,根据提交到任务队列的先后顺序确定量子计算任务的优先级,能够避免量子计算任务执行时彼此相互影响。
由于用户提交到任务队列中的多个量子计算任务可能存在一部分是指定比特型,而另一部分是未指定比特型的情况,为明确这两部分之间的相对优先级,在本发明的其他一些实施例中,步骤S200中所述确定各所述量子计算任务的优先级的步骤,除了步骤S201、步骤S202和步骤S203,还包括步骤S204:
S204、若所述类型包括指定比特型和未指定比特型,则指定比特型对应的量子计算任务的优先级高于未指定比特型对应的量子计算任务。
作为步骤S200的一种实施方式,步骤S201至步骤S204通过首先获取任务队列中各所述量子计算任务的类型,然后根据各所述量子计算任务的类型是均为未指定比特型、还是均为指定比特型,或者是有指定比特型和未指定比特型两种,依据不同的原则确定任务队列中量子计算任务的优先级。
S300、根据各所述量子计算任务的优先级和比特需求,确定当前拓扑结构支持的各所述量子计算任务为调度任务。
本步骤针对当前拓扑结构确定需要从任务队列中调度执行量子计算的量子计算任务,即基于量子芯片的当前拓扑结构按照任务队列中各所述量子计算任务的优先级和比特需求,确定本次调度的量子计算任务的最佳组合方式,以在多个量子计算任务对应的比特需求不同时,实现多个量子计算任务在同一量子芯片上的并行计算,从而最大化使用量子芯片计算资源,提高量子计算效率。
示例性地,可以先确定当前拓扑结构能够支持的任务组,其中每个任务组包括至少一个所述量子计算任务,然后根据确定各任务组包含的各所述量子计算任务的优先级确定各任务组的优先级,最后确定优先级最高的任务组包含的所述量子计算任务为调度任务。
在本发明的一些实施例中,步骤S300还可以通过遍历任务队列中多个量子计算任务的方式依次确定各量子计算任务是否为当前拓扑结构支持的调度任务,步骤S300具体包括步骤S301至步骤S304,其中:
S301、获取所述任务队列中优先级最高的所述量子计算任务;S302、根据当前获取的所述量子计算任务的比特需求,确定当前拓扑结构是否满足对应的比特需求,及当前拓扑结构中的剩余比特,其中,剩余比特是指当前拓扑结构中满足对应比特需求后剩余的物理比特;S303、若是,则将当前获取的所述量子计算任务确定为调度任务,并利用所述剩余比特更新当前拓扑结构;若否,则不将当前获取的所述量子计算任务确定为调度任务;S304、获取所述任务队列中下一优先级的所述量子计算任务,并返回所述根据当前获取的所述量子计算任务的比特需求,确定当前拓扑结构是否满足对应的比特需求,及当前拓扑结构中的剩余比特的步骤。
步骤S301至步骤S304按照优先级由高至低的顺序获取任务队列中的各量子计算任务,在当前拓扑结构能够支持当前获取的量子计算任务的执行(即能够满足当前获取的量子计算任务的比特需求)时,则确定当前获取的量子计算任务为调度任务,并锁定当前拓扑结构中支持当前获取的量子计算任务执行量子计算的物理比特,然后利用剩余的物理比特更新当前拓扑结构,再继续获取下一优先级的量子计算任务,并判断当前拓扑结构是否能够支持当前获取的量子计算任务执行量子计算,从而筛选出任务队列中适于在当前拓扑结构上执行量子计算的量子计算任务作为调度任务,需要强调的是,调度任务中包括一个所述量子计算任务,两个所述量子计算任务,还是多个量子计算任务,完全取决于当前拓扑结构能够同时支持几个量子计算任务执行量子计算。
S400、针对各所述调度任务对应的量子线路进行处理以获得一可执行量子线路,其中,可执行量子线路是由可直接在量子芯片上执行的量子逻辑门组成的量子线路。
作为步骤S400的一实施方式,可以直接将各所述调度任务对应的量子线路进行合并处理以获得可执行量子线路,也可以对各所述调度任务对应的量子线路先进行优化处理,再在进行合并处理。量子线路可直接在量子芯片的当前拓扑结构上执行,需要满足两个条件:一是当前拓扑结构中物理比特数量满足量子线路的比特需求的数量,二是量子线路所包含的量子逻辑门在量子芯片上的物理比特的可实施,这取决于当前拓扑结构中物理比特之间的关系。因此,在筛选出任务队列中适于在当前拓扑结构上执行量子计算的量子计算任务作为调度任务后,根据不同的情况还可以对调度任务对应的量子线路进行处理。
作为一种实施例,所述优化处理包括量子线路的简化优化,以及量子逻辑门分解优化;示例性的,量子线路的简化优化包括量子线路中冗余量子逻辑门的去除,量子逻辑门分解优化包括但不限于量子线路中包括的多量子逻辑门、单量子逻辑门、两量子逻辑门的分解。作为一种实施例,所述合并处理可以是对各调度任务对应的量子线路进行顺序拼接合并处理,即将各所述调度任务对应的量子线路作为一个整体依次连接形成一条量子线路。
在本发明一些实施例中,将各所述调度任务对应的量子线路进行合并处理以获得可执行量子线路的步骤,具体包括如下的步骤S401至步骤S403:
S401、根据各所述调度任务对应的量子线路,确定当前拓扑结构中与各所述量子线路包含的量子比特相对应的映射比特;S402、利用所述映射比特更新各所述量子线路内的量子比特获得对应的更新量子线路;S403、按量子逻辑门的执行时序整合各所述更新量子线路以获得所述可执行量子线路。
可以理解的是,通过将根据各所述调度任务对应的量子线路所包含的量子比特与量子芯片的当前拓扑结构所包含的物理比特相映射,将与各所述量子线路包含的量子比特相对应的物理比特确定为映射比特,即可将当前拓扑结构的计算资源进行分配,以匹配到各调度任务。
S500、基于所述当前拓扑结构的量子芯片,针对所述可执行量子线路执行量子计算,并根据执行结果确定各所述调度任务分别对应的计算结果。
在本发明一实施例中,步骤S500中所述针对所述可执行量子线路执行量子计算的步骤,具体包括:
S501、编译所述可执行量子线路以获得对应的波形指令;S502、将所述波形指令对应的信号发送至所述当前拓扑结构的量子芯片以实现量子计算。
可以理解的是,量子芯片上的物理比特根据接收到的物理信号进行工作,而发送至量子芯片的物理信号都对应一种波形指令,步骤S501至步骤S502通过编译所述可执行量子线路获得对应的波形指令,再将波形指令发送给物理硬件设备,物理硬件设备根据接收到的波形指令将对应的信号发送至所述当前拓扑结构的量子芯片从而驱动量子芯片上物理比特进行工作实现量子计算。
在另一实施例中,步骤S500中所述根据执行结果确定各所述调度任务分别对应的计算结果的步骤,具体包括:
S503、获得表示所述执行结果的量子态,所述执行结果的量子态即为所述可执行量子线路的所有映射比特的量子态,可以通过映射比特的本征态以及各所述本征态对应的振幅表示;S504、确定所述量子态中与各所述调度任务对应的映射比特所对应的子量子态,即每一个调度任务所对应的所有映射比特的状态,可以通过每一个调度任务对应的映射比特的本征态和对应的振幅表示;S505、将各所述子量子态对应的概率作为对应所述调度任务的计算结果。
需要说明的是,量子计算执行结果需要通过统计测量获得,统计测量得到的是物理比特处于本征态的概率,而概率是上述振幅的平方。
作为一实施方式,步骤S503中所述获得表示所述执行结果的量子态的步骤,包括步骤S5031和步骤S5032:
S5031、确定各所述量子线路对应的所有映射比特的本征态;S5032、获得各所述本征态对应的测量概率。
与现有技术相比,基于本发明实施例提供的量子计算任务计算方法,有助于在当前拓扑结构上实现多量子计算任务的同步并行计算。结合本发明实施例,需要强调的是,本发明实施例基于量子芯片的当前拓扑结构按照任务队列中各所述量子计算任务的优先级和比特需求,确定本次调度的量子计算任务的最佳组合方式,以充分利用当前拓扑结构的计算资源,在多个量子计算任务对应的比特需求不同时,实现多个量子计算任务在同一量子芯片上的并行计算,从而最大化使用量子芯片计算资源,提高量子计算效率。
图4为本发明实施例提供的一种量子计算任务计算装置的结构示意图。
参见图4,本发明实施例提供了与上述量子计算任务计算方法相对应的一种量子计算任务计算装置,包括:
第一获取模块601,用于获取量子芯片的当前拓扑结构;
第二获取模块602,用于获取任务队列中的多个量子计算任务,并确定各所述量子计算任务的优先级和比特需求
任务确定模块603,用于根据各所述量子计算任务的优先级和比特需求,确定当前拓扑结构支持的各所述量子计算任务为调度任务;
线路处理模块604,用于针对各所述调度任务对应的量子线路进行处理以获得一可执行量子线路;
执行计算模块605,用于基于所述当前拓扑结构的量子芯片,针对所述可执行量子线路执行量子计算,并根据执行结果确定各所述调度任务分别对应的计算结果。
与本发明实施例提供的一种量子计算任务计算方法相对应的,基于本发明实施例提供的量子计算任务计算装置,与现有技术相比,有助于在当前拓扑结构上实现多量子计算任务的同步并行计算,从而最大化的利用了量子芯片计算资源,提高了量子计算效率。
本发明实施例还提供了一种存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项中方法实施例中的步骤。
具体的,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S100、获取量子芯片的当前拓扑结构;
S200、获取任务队列中的多个量子计算任务,并确定各所述量子计算任务的优先级和比特需求;
S300、根据各所述量子计算任务的优先级和比特需求,确定当前拓扑结构支持的各所述量子计算任务为调度任务;
S400、针对各所述调度任务对应的量子线路进行处理以获得一可执行量子线路;
S500、基于所述当前拓扑结构的量子芯片,针对所述可执行量子线路执行量子计算,并根据执行结果确定各所述调度任务分别对应的计算结果。
具体的,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
本发明实施例还提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项中方法实施例中的步骤。
具体的,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
具体的,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S100、获取量子芯片的当前拓扑结构;
S200、获取任务队列中的多个量子计算任务,并确定各所述量子计算任务的优先级和比特需求;
S300、根据各所述量子计算任务的优先级和比特需求,确定当前拓扑结构支持的各所述量子计算任务为调度任务;
S400、针对各所述调度任务对应的量子线路进行处理以获得一可执行量子线路;
S500、基于所述当前拓扑结构的量子芯片,针对所述可执行量子线路执行量子计算,并根据执行结果确定各所述调度任务分别对应的计算结果。
本发明实施例还提供了一种量子计算机操作系统,所述量子计算机操作系统根据本发明实施例中提供的上述任一方法实施例实现量子计算任务计算。
本发明实施例还提供了一种量子计算机,所述量子计算机包括所述的量子计算机操作系统。
与现有技术相比,本发明实施例通过获取量子芯片的当前拓扑结构,以及获取任务队列中的多个量子计算任务,并确定各所述量子计算任务的优先级和比特需求;然后,根据各所述量子计算任务的优先级和比特需求,确定当前拓扑结构支持的各所述量子计算任务为调度任务;再针对各所述调度任务对应的量子线路进行处理以获得一可执行量子线路;最后,基于所述当前拓扑结构的量子芯片,针对所述可执行量子线路执行量子计算,并根据执行结果确定各所述调度任务分别对应的计算结果,有助于在当前拓扑结构上实现多量子计算任务的同步并行计算。需要强调的是,本发明基于量子芯片的当前拓扑结构按照任务队列中各所述量子计算任务的优先级和比特需求,确定本次调度的量子计算任务的最佳组合方式,以充分利用当前拓扑结构的计算资源,在多个量子计算任务对应的比特需求不同时,实现多个量子计算任务在同一量子芯片上的并行计算,从而最大化使用量子芯片计算资源,提高量子计算效率。
应理解,说明书通篇中提到的“一些实施例”、“一种实施例”、“一实施方式”意味着与实施例有关的特定特征、结构或特性包括在本申请的至少一个实施例中。因此,在整个说明书各处出现的“在一些实施例中”、“在一种实施例中”或“在一实施方式”,未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
在本申请所提供的几个实施例中,应该理解到,所揭露的方法、装置和系统,可以通过其它的方式实现。以上所描述的实施例仅仅是示意性的,例如,所述模块、单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元;既可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
另外,在本申请各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(Read Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的介质。
或者,本申请上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台实现资源变更的设备(可以是计算机、服务器等)执行本申请各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、ROM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的实施方式,但本申请的保护范围并不局限于此,凡是依照本发明的构想所作的改变,或修改为等同变化的等效实施例,仍未超出说明书与图示所涵盖的精神时,均应在本发明的保护范围内。
Claims (15)
1.一种量子计算任务计算方法,其特征在于,包括:
获取量子芯片的当前拓扑结构;
获取任务队列中的多个量子计算任务,并确定各所述量子计算任务的优先级和比特需求;
根据各所述量子计算任务的优先级和比特需求,确定当前拓扑结构支持的各所述量子计算任务为调度任务;
针对各所述调度任务对应的量子线路进行处理以获得一可执行量子线路;
基于所述当前拓扑结构的量子芯片,针对所述可执行量子线路执行量子计算,并根据执行结果确定各所述调度任务分别对应的计算结果。
2.根据权利要求1所述的量子计算任务计算方法,其特征在于,所述确定各所述量子计算任务的优先级的步骤,包括:
获取各所述量子计算任务的类型;
若所述类型均为未指定比特型,则根据高响应比优先原则确定各所述量子计算任务的优先级。
3.根据权利要求2所述的量子计算任务计算方法,其特征在于,所述确定各所述量子计算任务的优先级的步骤,还包括:
若所述类型均为指定比特型,则根据先来先服务原则确定各所述量子计算任务的优先级。
4.根据权利要求3所述的量子计算任务计算方法,其特征在于,所述确定各所述量子计算任务的优先级的步骤,还包括:
若所述类型包括指定比特型和未指定比特型,则指定比特型对应的量子计算任务的优先级高于未指定比特型对应的量子计算任务。
5.根据权利要求1所述的量子计算任务计算方法,其特征在于,所述根据各所述量子计算任务的优先级和比特需求,确定当前拓扑结构支持的各所述量子计算任务为调度任务的步骤,包括:
获取所述任务队列中优先级最高的所述量子计算任务;
根据当前获取的所述量子计算任务的比特需求,确定当前拓扑结构是否满足对应的比特需求,及当前拓扑结构中的剩余物理比特;
若是,则将当前获取的所述量子计算任务确定为调度任务,并利用所述剩余物理比特更新当前拓扑结构;若否,则不将当前获取的所述量子计算任务确定为调度任务;
获取所述任务队列中下一优先级的所述量子计算任务,并返回所述根据当前获取的所述量子计算任务的比特需求,确定当前拓扑结构是否满足对应的比特需求,及当前拓扑结构中的剩余比特的步骤。
6.根据权利要求1所述的量子计算任务计算方法,其特征在于,所述针对各所述调度任务对应的量子线路进行处理以获得一可执行量子线路的步骤,包括:
将各所述调度任务对应的量子线路进行合并处理以获得可执行量子线路。
7.根据权利要求6所述的量子计算任务计算方法,其特征在于,所述将各所述调度任务对应的量子线路进行合并处理以获得可执行量子线路的步骤,包括:
根据各所述调度任务对应的量子线路,确定当前拓扑结构中与各所述量子线路包含的量子比特相对应的映射比特;
利用所述映射比特更新各所述量子线路内的量子比特获得对应的更新量子线路;
按量子逻辑门的执行时序整合各所述更新量子线路以获得所述可执行量子线路。
8.根据权利要求1所述的量子计算任务计算方法,其特征在于,所述针对所述可执行量子线路执行量子计算的步骤,包括:
编译所述可执行量子线路以获得对应的波形指令;
将所述波形指令对应的信号发送至所述当前拓扑结构的量子芯片以实现量子计算。
9.根据权利要求7所述量子计算任务计算方法,其特征在于,所述根据执行结果确定各所述调度任务分别对应的计算结果的步骤,包括:
获得表示所述执行结果的量子态;
确定所述量子态中与各所述调度任务对应的映射比特所对应的子量子态;
将各所述子量子态对应的概率作为对应所述调度任务的计算结果。
10.根据权利要求9所述量子计算任务计算方法,其特征在于,所述获得表示所述执行结果的量子态的步骤,包括:
确定各所述量子线路对应的所有映射比特的本征态;
获得各所述本征态对应的测量概率。
11.一种量子计算任务计算装置,其特征在于,包括:
第一获取模块,用于获取量子芯片的当前拓扑结构;
第二获取模块,用于获取任务队列中的多个量子计算任务,并确定各所述量子计算任务的优先级和比特需求
任务确定模块,用于根据各所述量子计算任务的优先级和比特需求,确定当前拓扑结构支持的各所述量子计算任务为调度任务;
线路处理模块,用于针对各所述调度任务对应的量子线路进行处理以获得一可执行量子线路;
执行计算模块,用于基于所述当前拓扑结构的量子芯片,针对所述可执行量子线路执行量子计算,并根据执行结果确定各所述调度任务分别对应的计算结果。
12.一种存储介质,其特征在于,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行所述权利要求1至10任一项所述的方法。
13.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行所述权利要求1至10一项所述的方法。
14.一种量子计算机操作系统,其特征在于,所述量子计算机操作系统根据权利要求1至10任一项所述的方法实现量子计算任务计算。
15.一种量子计算机,其特征在于,所述量子计算机包括权利要求14所述的量子计算机操作系统。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110383305.5A CN115204399A (zh) | 2021-04-09 | 2021-04-09 | 一种量子计算任务计算方法、装置及量子计算机操作系统 |
PCT/CN2022/074798 WO2022166851A1 (zh) | 2021-02-07 | 2022-01-28 | 量子计算机操作系统、量子计算机及可读存储介质 |
EP22749130.5A EP4290419A1 (en) | 2021-02-07 | 2022-01-28 | Quantum computer operating system, quantum computer, and readable storage medium |
US18/276,096 US20240119329A1 (en) | 2021-02-07 | 2022-01-28 | Quantum computer operating system, quantum computer and readable storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110383305.5A CN115204399A (zh) | 2021-04-09 | 2021-04-09 | 一种量子计算任务计算方法、装置及量子计算机操作系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115204399A true CN115204399A (zh) | 2022-10-18 |
Family
ID=83570741
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110383305.5A Pending CN115204399A (zh) | 2021-02-07 | 2021-04-09 | 一种量子计算任务计算方法、装置及量子计算机操作系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115204399A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116432761A (zh) * | 2023-02-21 | 2023-07-14 | 北京百度网讯科技有限公司 | 量子计算任务的处理方法、装置、设备以及存储介质 |
-
2021
- 2021-04-09 CN CN202110383305.5A patent/CN115204399A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116432761A (zh) * | 2023-02-21 | 2023-07-14 | 北京百度网讯科技有限公司 | 量子计算任务的处理方法、装置、设备以及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR20200092994A (ko) | 소프트웨어 정의(software-defined) 양자 컴퓨터 | |
CN114764549B (zh) | 基于矩阵乘积态的量子线路模拟计算方法、装置 | |
WO2022267854A1 (zh) | 量子计算任务处理方法、系统、装置及操作系统 | |
CN113222155A (zh) | 一种量子线路的构建方法、装置、电子装置和存储介质 | |
US20240119329A1 (en) | Quantum computer operating system, quantum computer and readable storage medium | |
CN111461335A (zh) | 基于mpi多进程的含噪声单量子逻辑门实现方法及装置 | |
US20240061724A1 (en) | Quantum computing task execution method and apparatus, and quantum computer operating system | |
US20180335957A1 (en) | Lock-free datapath design for efficient parallel processing storage array implementation | |
CN114912618A (zh) | 一种量子计算任务调度方法、装置及量子计算机操作系统 | |
CN115204399A (zh) | 一种量子计算任务计算方法、装置及量子计算机操作系统 | |
CN114912619B (zh) | 一种量子计算任务调度方法、装置及量子计算机操作系统 | |
CN115879562B (zh) | 一种量子程序初始映射的确定方法、装置及量子计算机 | |
CN115983392A (zh) | 量子程序映射关系的确定方法、装置、介质及电子装置 | |
CN114881239A (zh) | 量子生成器的构造方法、装置、介质及电子装置 | |
CN114881238A (zh) | 量子鉴别器的构造方法、装置、介质及电子装置 | |
CN111291893B (zh) | 调度方法、调度系统、存储介质和电子装置 | |
CN115271080B (zh) | 量子计算任务执行方法、装置及量子计算机操作系统 | |
CN115705496A (zh) | 一种量子计算机操作系统和量子计算机 | |
CN115936132A (zh) | 一种量子电路的模拟方法及相关装置 | |
CN115907021B (zh) | 基于量子计算的数据聚类方法、装置及量子计算机 | |
CN115907016B (zh) | 一种基于量子计算搜索目标范围值的方法及相关装置 | |
CN116049506B (zh) | 基于量子计算的数值查找方法、装置、设备及存储介质 | |
CN117331680A (zh) | 一种多gpu模拟量子计算的方法及装置 | |
EP4328807A1 (en) | Method and apparatus for adaptating to quantum computing platform, and quantum computer operating system | |
CN117311956A (zh) | 一种待模拟量子程序的gpu内存分配方法及装置 |
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 | ||
CB02 | Change of applicant information |
Address after: 230088 6th floor, E2 building, phase II, innovation industrial park, 2800 innovation Avenue, Hefei high tech Zone, Hefei City, Anhui Province Applicant after: Benyuan Quantum Computing Technology (Hefei) Co.,Ltd. Address before: 230088 6th floor, E2 building, phase II, innovation industrial park, 2800 innovation Avenue, Hefei high tech Zone, Hefei City, Anhui Province Applicant before: ORIGIN QUANTUM COMPUTING COMPANY, LIMITED, HEFEI |
|
CB02 | Change of applicant information |