一种量子计算机操作系统和量子计算机的制作方法

文档序号:33249428发布日期:2023-02-18 00:26阅读:40来源:国知局
一种量子计算机操作系统和量子计算机的制作方法

1.本技术涉及量子计算技术领域,尤其是涉及一种量子计算机操作系统和量子计算机。


背景技术:

2.量子计算机是一类遵循量子力学规律进行高速数学和逻辑运算、存储及处理量子信息的物理装置。量子计算机的特点主要有运行速度较快、处置信息能力较强、应用范围较广等。与一般计算机比较起来,信息处理量愈多,对于量子计算机实施运算也就愈加有利,也就更能确保运算具备精准性。
3.操作系统对计算机的重要性不言而喻,对经典计算机如此,对还在初期发展中的量子计算机技术更是如此。量子计算机操作系统决定了量子计算机的功能、计算效率、稳定性,进而决定了量子计算机的实用程度。量子计算机操作系统是量子计算机中连接终端和量子计算机的核心部件量子芯片的工具,量子计算机操作系统一方面接收用户发送来的量子计算任务,另一方面需要将这些量子计算任务映射到量子芯片中具体的量子比特拓扑结构中以完成对这些量子计算任务的执行。发明人在实际应用中发现,当两个量子计算任务中均需要两比特量子逻辑门参与时,若将这两个量子计算任务映射在比较靠近的两个量子比特拓扑结构中时,不可避免地会发生串扰影响,从而导致两比特量子逻辑门的误差率急剧增加。为了避免串扰的发生,现有技术中量子计算机操作系统在映射两个量子计算任务时,当这两个量子计算任务中均需要两比特量子逻辑门参与时,会尽可能将这两个量子计算任务映射的量子比特拓扑结构在量子芯片上间隔足够远以减少串扰影响。现有技术中这种方案极大地限制了量子芯片中量子比特资源的利用率,造成了量子芯片资源的浪费。
4.因此,如何提高量子芯片中量子比特资源的利用率成为本领域亟待解决的技术问题。


技术实现要素:

5.本技术的目的在于提供一种量子计算机操作系统和量子计算机,利用该处理方法可进行多量子计算任务合并执行,旨在提高量子芯片中量子比特资源的利用率。
6.本技术第一方面实施例提供了一种量子计算机操作系统,包括:
7.量子计算任务接收模块,其被配置为接收量子计算任务队列,其中,所述量子计算任务队列包括多个量子计算任务;
8.量子计算任务合并模块,其被配置为将所述量子计算任务队列中若干个量子计算任务合并为一个整体量子计算任务;
9.量子芯片资源配置服务模块,其被配置为基于所述整体量子计算任务在量子芯片中获取量子比特拓扑结构;
10.量子计算任务映射服务模块,其被配置为将所述整体量子计算任务映射到所述量子比特拓扑结构中以执行所述整体量子计算任务。
11.本技术第二方面实施例提供了一种量子计算机中量子计算任务的处理方法,包括:
12.接收量子计算任务队列,其中,所述量子计算任务队列包括多个量子计算任务;
13.将所述量子计算任务队列中若干个量子计算任务合并为一个整体量子计算任务;
14.基于所述整体量子计算任务在量子芯片中获取量子比特拓扑结构;
15.将所述整体量子计算任务映射到所述量子比特拓扑结构中以执行所述整体量子计算任务。
16.本技术第三方面实施例提供了一种量子计算机,包括如上所述的量子计算机操作系统。
17.本技术第四方面实施例提供了一种可读存储介质,其上存储有计算机程序,所述计算机程序被一处理器执行时能实现如上所述量子计算机中量子计算任务的处理方法。
18.本技术第五方面实施例提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行如上所述量子计算机中量子计算任务的处理方法。
19.相对于现有技术,在本技术实施例提供的量子计算机操作系统中可以将量子计算任务队列中的若干个量子计算任务进行合并为一个整体量子计算任务,这样基于所述整体量子计算任务在量子芯片中划分所得量子比特拓扑结构在量子芯片上的布局紧凑性,相对于基于该若干个量子计算任务在量子芯片上独立划分的多个分立的量子比特拓扑结构在量子芯片上的布局紧凑性要更佳,从而有利于在一个量子芯片中映射更多的量子计算任务,可有效提高量子芯片中量子比特资源的利用率。
20.另外,因与所述整体量子计算任务相对应的量子线路中所有量子比特执行量子逻辑门的时序清晰、明确,使得在划分与所述整体量子计算任务对应的量子比特拓扑结构时,将时序相同的执行两比特量子逻辑门的量子比特在空间上隔离开,从而在完成所述整体量子计算任务与量子比特拓扑结构映射后执行所述整体量子计算任务时直接有效避免了串扰的存在;此外,由于因与所述整体量子计算任务相对应的量子线路中所有量子比特执行量子逻辑门的时序清晰、明确,可根据获取的执行量子逻辑门的时序判断所述量子比特拓扑结构中存在串扰的量子比特并对其进行校准操作,从而间接克服了执行两比特量子逻辑门的邻近的量子比特间的串扰对所述整体量子计算任务执行结果的影响。
附图说明
21.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
22.图1为本技术一实施例的一种量子线路图展示参照图;
23.图2为本技术一实施例的一种量子计算机操作系统结构框图;
24.图3为本技术一实施例的另一种量子计算机操作系统结构框图;
25.图4为本技术一实施例的映射在同一量子芯片上的两个量子计算任务的映射分区图;
26.图5为本技术一实施例的又一种量子计算机操作系统结构框图;
27.图6为本技术一实施例的量子计算任务的处理方法流程示意图。
具体实施方式
28.下面将结合示意图对本技术的具体实施方式进行更详细的描述。根据下列描述和权利要求书,本技术的优点和特征将更清楚。需说明的是,附图均采用非常简化的形式且均使用非精准的比例,仅用以方便、明晰地辅助说明本技术实施例的目的。
29.此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本技术的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
30.本技术实施例提供了一种量子计算机操作系统,下面首先对量子计算机进行说明。
31.本领域技术人员可以理解的是,真正的量子计算机是混合结构的,它包含两大部分:一部分是经典计算机,负责执行经典计算与控制;另一部分是量子设备,负责运行量子程序进而实现量子计算。而量子程序(或称量子计算任务)是由量子语言如qrunes语言编写的一串能够在量子计算机上运行的指令序列,实现了对量子逻辑门操作的支持,并最终实现量子计算。具体的说,量子计算任务就是一系列按照一定时序操作量子逻辑门的指令序列。
32.量子线路可以作为量子计算任务的一种体现方式,也称量子逻辑电路,是最常用的通用量子计算模型,表示在抽象概念下对于量子比特进行操作的线路,其组成包括量子比特、线路(时间线),以及各种量子逻辑门,最后常需要通过量子测量操作将结果读取出来。参见图1,图1为本技术实施例提供的一种量子线路图展示参照图,其中,q[0]、q[1]、q[2]、q[3]是指量子位从0至3的量子比特,通常也可被记为q0、q1、q2、q3。
[0033]
不同于传统电路是用金属线所连接以传递电压信号或电流信号,在量子线路中,线路可看成是由时间所连接,亦即量子比特的状态随着时间自然演化,在这过程中按照哈密顿运算符的指示,一直到遇上逻辑门而被操作。
[0034]
一个量子计算任务整体上对应有一条总的量子线路,本技术所述量子计算任务即指该条总的量子线路,其中,该总的量子线路中的量子比特总数与量子计算任务的量子比特总数相同。可以理解为:一个量子计算任务可以由量子线路、针对量子线路中量子比特的测量操作、保存测量结果的寄存器及控制流节点(跳转指令)组成,一条量子线路可以包含几十上百个甚至上千万个量子逻辑门操作。量子计算任务的执行过程,就是对所有的量子逻辑门按照一定时序执行的过程。需要说明的是,时序即单个量子逻辑门被执行的时间顺序。
[0035]
需要说明的是,经典计算中,最基本的单元是比特,而最基本的控制模式是逻辑门,可以通过逻辑门的组合来达到控制电路的目的。类似地,处理量子比特的方式就是量子逻辑门。使用量子逻辑门,能够使量子态发生演化,量子逻辑门是构成量子线路的基础,量子逻辑门包括单比特量子逻辑门(或单量子逻辑门,简称“单门”),如hadamard门(h门,阿达马门)、泡利-x门(x门)、泡利-y门(y门)、泡利-z门(z门)、rx门、ry门、rz门等等;两比特量子
逻辑门(或双量子逻辑门,简称“双门”),如cnot门、cr门、swap门、iswap门等等;多比特量子逻辑门(或多量子逻辑门,简称“多门”),如toffoli门等等。量子逻辑门一般使用酉矩阵表示,而酉矩阵不仅是矩阵形式,也是一种操作和变换。一般量子逻辑门在量子态上的作用是通过酉矩阵左乘以量子态右矢对应的矩阵进行计算的。
[0036]
例如,量子态右矢|0》对应的矢量为量子态右矢|1》对应的矢量为
[0037]
量子态,即量子比特的逻辑状态。在量子程序中,针对量子线路包含的一组量子比特的量子态,采用二进制表示方式,例如,一组量子比特为q0、q1、q2,表示第0位、第1位、第2位量子比特,在二进制表示方式中从高位到低位排序为q2q1q0,该组量子比特对应的量子态共有2的量子比特总数次方个,即8个本征态(确定的状态):|000》、|001》、|010》、|011》、|100》、|101》、|110》、|111》,每个量子态的位与量子比特对应一致,如|001》态,001从高位到低位对应q2q1q0,|》为狄拉克符号。对于包含n个量子比特q0、q1、

、qn、

、q
n-1
的量子线路,二进制表示量子态的位阶排序为q
n-1qn-2

、q1q0。
[0038]
以单个量子比特说明,单个量子比特的逻辑状态ψ可能处于|0》态、|1》态、|0》态和|1》态的叠加态(不确定状态),具体可以表示为ψ=a|0》+b|1》,其中,a和b为表示量子态振幅(概率幅)的复数,振幅的模的平方表示概率,a2、b2分别表示逻辑状态是|0》态、|1》态的概率,|a|2+|b|2=1。简言之,量子态是各本征态组成的叠加态,当其他态的概率为0时,即处于唯一确定的本征态。
[0039]
随着量子计算技术的不断发展,需要处理的量子计算任务数量会急剧增加,而因受限于量子设备硬件的发展,量子芯片上的量子比特资源有限,为了保证所有量子计算任务都能够顺利运行,亟需对有限的量子芯片和其上的量子比特资源进行合理安排。
[0040]
参见图2,图2为本技术一实施例提供的一种量子计算机操作系统,包括:
[0041]
量子计算任务接收模块10,其被配置为接收量子计算任务队列,其中,所述量子计算任务队列包括多个量子计算任务。
[0042]
量子计算任务合并模块30,其被配置为将所述量子计算任务队列中若干个量子计算任务合并为一个整体量子计算任务。
[0043]
量子芯片资源配置服务模块40,其被配置为基于所述整体量子计算任务在量子芯片中获取量子比特拓扑结构。
[0044]
量子计算任务映射服务模块50,其被配置为将所述整体量子计算任务映射到所述量子比特拓扑结构中以执行所述整体量子计算任务。
[0045]
需要说明的是,随着量子计算技术的不断发展,通常需要进行量子计算模拟以验证量子算法、量子应用等等,量子云平台接收的用户提交的量子计算任务通过量子计算机操作系统进行处理。随着量子计算技术的发展,量子云平台后端有一个多量子芯片集群,该集群中包含n个量子芯片ci,i∈{1,n},每个量子芯片中包含的量子比特数量为|ci|,并且每个量子芯片的量子比特数量可以支持多个量子计算任务的执行。
[0046]
另外,随着用户对量子计算领域的研究兴趣日益浓厚,越来越多的量子应用将提交到量子云平台。然而由于目前量子芯片集群使用的nisq(noisy intermediate-scale quantum)设备的量子比特具有有限的相干时间和容易出错的量子逻辑门,在量子云平台的使用过程中随着用户提交的量子应用不断增多,将有一个等待处理的量子计算任务队列。
[0047]
本领域技术人员可以理解的是,在实际应用中,用户向量子云平台提交的量子应用包括多个量子线路,每一个量子线路在发送时可以看作一个独立的个体,一个量子线路对应着一个量子计算任务。在本实施例中,所述量子计算任务队列应当包括多个量子计算任务。
[0048]
本领域技术人员可以理解的是,一个所述量子线路需要在拥有足够量子比特数量的量子芯片上执行映射。一般情况下,量子计算任务对量子芯片集群的量子比特数量的需求是大于量子芯片集群的处理能力的,如何调度量子计算任务确保基于量子芯片集群充分利用的任务执行是需要研究的。
[0049]
参见图3,图3为本技术实施例提供的另一种量子计算机操作系统,所述量子计算机操作系统在上一实施例的基础上,还包括:
[0050]
队列优先级处理模块20,其被配置为基于量子计算任务的深度、所需量子比特数量以及已在所述量子计算任务队列中等待的时间,设置所述量子计算任务队列中各个量子计算任务各自的优先级,其中,优先级高的量子计算任务先执行。
[0051]
需要说明的是,本技术通过独特的量子计算任务调度优先级确定方式调度量子计算任务以确保该效果,具体地:
[0052]
在本实施例中,所有所述量子计算任务的优先级可以基于以下排序指标公式进行计算:
[0053][0054]
其中,r为优先级的值,w为所述量子计算任务提交后在所述等待程序队列中的排队等待时间,s为所述量子计算任务的大小,它可表示为s=n*d,其中n为所述量子计算任务的量子比特位数,d为所述量子计算任务的深度,所述深度表征的是所述量子计算任务对应的量子线路的深度,也为量子线路的长度。层为量子线路深度的单位,一层是指一个(层)时序,一层量子逻辑门为可同时执行的位于一个时序内的量子逻辑门,同一层量子逻辑门为可同时执行的同一时序量子逻辑门。
[0055]
另外,通过优先级的排序指标公式可知优先级存在以下规则:r越大,其所对应的所述量子计算任务的优先级越高。因此,w能够保证所述量子计算任务先到先得的原则;并且在当排队等待时间相近时,s越小的所述量子计算任务的优先级越高,这保证了最大化量子资源利用率。针对s也相近的所述量子计算任务,其中,量子比特数量越小的所述量子计算任务的优先级越高。
[0056]
在所述量子计算任务队列中,具有最高r值的所述量子计算任务即为具有最高优先级的量子计算任务。
[0057]
因此,所述量子计算任务合并模块30可将若干个量子计算任务按照优先级从高到低的顺序合并为一个整体量子计算任务。由于合并之后,所述整体量子计算任务中各个量子计算任务的时序是已知的,因此,在映射过程中可以充分利用这些时序,原本需要间隔开映射的两个量子计算任务可以映射在一个完整的拓扑结构中,进一步提高了量子芯片中量子比特的利用率。
[0058]
需要说明的是,由于量子芯片中量子比特比较脆弱,极易受环境噪声的干扰,如量子比特之间不必要的相互作用,以及控制信号泄漏到不属于预期量子逻辑门操作的量子比
特上等串扰噪声。在邻近的量子比特间同时执行两比特量子逻辑门或多比特量子逻辑门时,彼此的量子态会被破坏,从而导致量子逻辑门误差。超导量子芯片上当前的两比特量子逻辑门误差为1-2%,当受到串扰噪声影响时,该误差会进一步恶化一个数量级。
[0059]
为了减少串扰噪声影响,现有技术中是将在两个量子计算任务中均需要两比特量子逻辑门参与时,会尽可能将这两个量子计算任务映射的量子比特拓扑结构在量子芯片上间隔足够远,不能促进不同量子计算任务共用量子比特,进而极大地降低了量子芯片集群中有限的量子芯片及其上量子比特资源的利用率,并一定程度上延长了量子计算任务的执行等待时间,也降低了量子计算任务的执行时效性。
[0060]
在本实施例中,所述量子计算任务合并模块30被配置为将所述量子计算任务队列中若干个量子计算任务合并为一个整体量子计算任务。其中,若干个所述量子计算任务是所述量子计算任务队列中优先级顺序为从高到低的量子计算任务。在将多个所述量子计算任务合并为一个整体量子计算任务时,所述量子芯片资源配置服务模块40被配置为基于所述整体量子计算任务在量子芯片中划分进行映射的量子比特拓扑结构,这样基于所述整体量子计算任务在量子芯片中划分所得量子比特拓扑结构在量子芯片上的布局紧凑性,相对于基于该若干个量子计算任务在量子芯片上独立划分的多个分立的量子比特拓扑结构在量子芯片上的布局紧凑性要更佳,可有效提高量子比特拓扑结构在量子芯片上的布局紧凑性,从而有利于在一个量子芯片上映射更多的量子计算任务,在一定程度上提高了量子芯片中量子比特资源的利用率。需要说明的是,所述的量子芯片中量子比特资源的利用率是指被占用的量子比特数量与量子芯片上所有量子比特数量的比值。
[0061]
另外,发明人发现,针对可以合并的量子计算任务,合并这些量子计算任务为一个整体量子计算任务后,整体量子计算任务对应的量子线路中量子逻辑门的执行时序比较清晰且明确。基于以上发现,申请人考虑如果对于整体量子计算任务中的一个或多个量子比特存在时序错开的两比特量子逻辑门,则基于所述整体量子计算任务在量子芯片上划分进行映射的量子比特拓扑结构时,可以考虑量子比特分时复用的情况,这样划分所得的量子比特拓扑结构中量子比特的数量将少于这些量子计算任务的量子比特数量总和,有效缩小了所述量子比特拓扑结构在量子芯片中的划分布局范围,提高了其结构划分的紧凑性。同时,这也使得量子芯片中剩余的空闲量子比特数量增加,从而有利于在一个量子芯片中映射更多的量子计算任务,提高了量子芯片中量子比特资源的利用率。
[0062]
需要说明的是,所述量子比特分时复用是指,根据两个或两个以上量子计算任务合并后的整体量子计算任务中量子逻辑门的时序,对于执行映射的量子比特拓扑结构中存在一个或多个量子比特,在不同的时间被用于执行不同的量子计算任务。
[0063]
因此,基于所述整体量子计算任务在量子芯片中获取的所述量子比特拓扑结构包括复用量子比特,其中,所述复用量子比特用于在不同的时刻分别执行不同的所述量子计算任务。本领域技术人员可以理解的是,所述复用量子比特的数量可根据实际情况来确定,可以是一个、两个甚至更多,需要根据量子计算任务的时序情况来确定,在此不做限制。
[0064]
进一步地,所述量子芯片资源配置服务模块40包括:
[0065]
复用比特获取单元,其被配置为基于所述整体量子计算任务中各个量子逻辑门的时序,在所述量子芯片中获取所述复用量子比特。
[0066]
示例性的,参见图4,图4为本技术实施例的映射在同一量子芯片上的两个量子计
算任务的映射分区图。图4中p1 allocation表示一个量子计算任务p1的映射分区,p2 allocation表示另一个可以与量子计算任务p1合并的量子计算任务p2的映射分区,两个映射分区分别分配在两个虚线框中。qi和qj是量子计算任务p1对应的可执行的量子线路中需要立即执行两比特量子逻辑门的量子比特,它们都处于已映射但未执行的状态。
[0067]
所述量子计算任务p1和量子计算任务p2需要在各自的映射分区内执行,通过观察图4中该量子芯片的拓扑结构可知,在量子计算任务p2的映射分区中存在着一个量子比特qn分别与量子比特qi和qj具有连接关系。若在量子计算任务p1的执行过程中,量子比特qn在量子计算任务p2中处于空闲的状态,则将量子计算任务p1和量子计算任务p2合并为一个整体量子计算任务后,基于所述整体量子计算任务在量子芯片上获取量子比特拓扑结构时,可以利用量子比特qn替换量子比特qj来与量子比特qi执行两比特量子逻辑门,所述量子比特qn即为所述量子比特拓扑结构的复用量子比特,为量子计算任务p1和量子计算任务p2共用的量子比特。由于基于所述整体量子计算任务获取的所述量子比特拓扑结构中可不包含量子比特qj,使得量子比特拓扑结构中包含的量子比特数量少于所述量子计算任务p1和量子计算任务p2的量子比特数量的总和,使得量子芯片中剩余的空闲量子比特数量增加,从而有利于在一个量子芯片中映射更多的量子计算任务,提高了量子芯片中量子比特资源的利用率。
[0068]
本领域技术人员可以理解的是,当两个量子计算任务合并为一个整体量子计算任务时,这两个量子计算任务的测量操作一般需要同时开始和结束,如果将两个执行时间相差较大的量子计算任务进行合并后,会使得执行时间较短的量子计算任务被迫与执行时间较长的量子计算任务同步,从而导致吞吐量(即系统在单位时间内执行的量子计算任务数量)下降。因此,在本实施例中,所述量子计算任务合并模块30可进一步包括:
[0069]
量子计算任务执行时间获取单元,其被配置为获取所述量子计算任务队列中所有量子计算任务的执行时间;判断单元,其被配置为判断所有量子计算任务的执行时间是否符合预设要求,其中,所述预设要求可以根据系统的吞吐量高低进行设置;合并执行单元,其被配置为将执行时间满足了预设要求的两个量子计算任务合并为一个整体量子计算任务。
[0070]
进一步地,所述量子计算任务执行时间获取单元,其被配置为获取执行第一量子计算任务所需的第一时间以及执行第二量子计算任务的第二时间,其中,所述第一量子计算任务以及所述第二量子计算任务为所述量子计算任务队列中的两个量子计算任务;所述判断单元,其被配置为判断所述第一时间、所述第二时间是否满足:所述第一时间小于等于所述第二时间的两倍;所述合并执行单元,其被配置为在判断结果为是时,将所述第一量子计算任务以及所述第二量子计算任务合并为所述整体量子计算任务。
[0071]
量子计算机操作系统处理量子计算任务的一般流程为:首先接收用户发送来的量子计算任务,然后需要将这些量子计算任务映射到量子芯片具体的量子比特拓扑结构中以完成对这些量子计算任务的执行,最终通过测量量子比特的量子态信息获取量子计算任务在各自量子比特的执行结果。
[0072]
需要说明的是,在本实施例中,将所述预设要求设置为所述第一时间小于等于所述第二时间的两倍,这意味着所述第二量子计算任务在执行所述第一量子计算任务时不能执行两次以上,否则就不合并所述第一量子计算任务和第二量子计算任务。这是由于合并
两个执行时间不同的量子计算任务后,执行时间短的量子计算任务将被执行大于一次,以达到与执行时间长的量子计算任务同步测量的目的。如果将执行时间短的第二量子计算任务在执行所述第一量子计算任务时执行两次以上,这就将导致本可以更早结束的所述第二量子计算任务将被迫与所述第一量子计算任务同步结束,从而导致了量子计算机操作系统的吞吐量下降。
[0073]
需要注意的是,在本实施例中均以两个量子计算任务的合并为例来说明本技术的技术方案,本领域技术人员可以理解的是,在其他实施例中还以将更多数量的量子计算任务合并成一个整体量子计算任务,其方法与两个量子计算任务的合并方法相同,在此不做赘述。
[0074]
按照前面的优先级规则,所述第一量子计算任务以及所述第二量子计算任务为所述量子计算任务队列中优先级最高的两个量子计算任务。
[0075]
本领域技术人员可以理解的是,在量子计算任务实现过程中,开发者主要关注量子计算任务的实现,这使得与量子计算任务对应的量子线路中常包含量子芯片不支持的量子逻辑门,即,在量子线路中,任意两个逻辑量子比特能够执行一个两比特量子逻辑门,而在实际量子芯片中,由于只有相邻的两个物理量子比特之间完全连接,因此只允许在相邻的两个量子比特之间产生耦合。因此,在实际运行过程中,需要将量子芯片不支持的量子逻辑门转化为量子芯片支持的量子逻辑门,从而对量子计算任务对应的量子线路处理得到可执行的量子线路。可执行的量子线路是由可直接在量子芯片上执行的量子逻辑门组成的量子线路。
[0076]
目前,在将量子计算任务对应的量子线路中量子芯片不支持的量子逻辑门转化为量子芯片支持的量子逻辑门的过程中,需要使用swap门进行量子芯片上不支持和支持的量子逻辑门之间的转化,以使得量子计算任务对应的量子线路可以在该量子芯片上运行。可执行的量子线路上是利用多个swap门在相邻的两个具有连接关系的量子比特之间逐层交换操作,使得量子芯片上的远距离的不具有直接连接关系的两个量子比特实现连接。即通过多个swap门交换的操作,等价于相邻两量子比特的操作。
[0077]
进一步地,并发的量子计算任务是相互独立映射到量子芯片上的,在多个量子计算任务同时执行的情况下,量子芯片中量子比特间swap门操作的数量会显著增加。而合并若干个并发的量子计算任务为一个整体量子计算任务后,还可以为量子计算任务中的逻辑量子比特在映射到量子芯片的量子比特拓扑结构中时创造更短的swap门交换路径,有助于减少swap门开销,并减少多个并发的量子计算任务之间的干扰和改进整体保真度。
[0078]
示例性的,请继续参见图4,在量子计算任务p1的映射分区中,qi和qj之间具有其他三个具有连接关系的量子比特,在qi和qj的执行过程中需要借助这三个量子比特作为路由进行swap门逐层交换操作,因此qi和qj的执行需要三个路由。然而,由于任意两个具有直接连接关系的量子比特的门操作均存在误差,也即通过三个路由执行的qi和qj之间的门操作误差会累积增大,这在一定程度上降低了量子计算任务p1的保真度。
[0079]
若将量子计算任务p1和量子计算任务p2进行合并,那么量子比特qi和qj执行两比特量子逻辑门时的交换操作可能会走捷径。将量子计算任务p1和量子计算任务p2合并后,量子计算任务p1和量子计算任务p2的所有量子比特将会共享经过合并后的映射分区,此时量子比特qi和qj会选择通过比量子计算任务p1映射区域内部交换路径更短的交换路径来
执行两比特量子逻辑门,即量子比特qi和qj会选择当前处于空闲状态的量子比特qn进行swap门操作,从而通过一个路由和一次swap门操作(即图中的take 1swap)实现了量子比特qi和qj间两比特量子逻辑门的操作。这样可有效降低门操作误差,一定程度上提高了量子计算任务p1的保真度。
[0080]
由此可见,当将多个量子计算任务合并为一个整体量子计算任务后,可供所有量子计算任务中的量子比特进行swap门操作的交换路径选择更多,执行映射更方便,且能够有效提高量子比特资源的利用率。
[0081]
更进一步地,由于量子芯片的量子比特是脆弱的,极易受到干扰噪声的影响,当两个量子计算任务中同时需要两比特量子逻辑门参与时,若将这两个量子计算任务映射在比较靠近的两个量子比特拓扑结构中时,不可避免地会发生串扰影响,这也将导致两比特量子逻辑门的操作误差急剧增加,一定程度上也严重影响了量子计算任务的保真度。而将两个量子计算任务合并为一个整体量子计算任务所对应的量子线路中所有量子比特执行量子逻辑门的时序比较清晰且明确,这将使得在划分与所述整体量子计算任务对应的量子比特拓扑结构时,将时序相同的执行两比特量子逻辑门的量子比特在空间上隔离开。
[0082]
示例性的,请继续参见图4,若在量子计算任务p1和量子计算任务p2的执行时序中,存在某一时刻需要均执行两比特量子逻辑门,那么在映射时将用于执行这个两个量子逻辑门的四个量子比特在各自的映射区域中间隔开,例如,可以考虑在量子计算任务p1的映射区域中选择左上角的量子比特qa和qb来执行两比特量子逻辑门,在量子计算任务p2的映射区域中选择右下角的量子比特qk和ql来执行两比特量子逻辑门,利用这种方式在完成所述整体量子计算任务与量子比特拓扑结构映射后执行所述整体量子计算任务时直接有效避免了串扰的存在,有效实现了串扰抑制,减少了串扰影响。
[0083]
此外,由于与所述整体量子计算任务相对应的量子线路中所有量子比特执行量子逻辑门的时序清晰、明确,可根据获取的执行量子逻辑门的时序判断所述量子比特拓扑结构中存在串扰的量子比特并对其进行校准操作,从而也能克服执行两比特量子逻辑门的邻近的量子比特间的串扰对所述整体量子计算任务执行结果的影响。
[0084]
请参见图5,图5为本技术实施例的又一种量子计算机操作系统,所述量子计算机操作系统在上一实施例的基础上,还包括:
[0085]
量子计算任务时序获取模块60,其被配置为获取所述整体量子计算任务中各个量子逻辑门的时序。
[0086]
量子比特校准模块70,其被配置为基于所述时序对所述量子比特拓扑结构中存在串扰的量子比特进行校准操作。
[0087]
需要说明的是,量子芯片中某个量子比特的串扰系数在量子芯片前期测试阶段即可获得。在本实施例中,所述量子比特校准模块70是根据所述时序在所述量子比特拓扑结构中判断出存在串扰的量子比特,并根据与该量子比特对应的串扰系数对量子比特进行校准。其中,利用量子比特的串扰系数对量子比特进行校准属于本领域公知常识,在此不再赘述。
[0088]
基于同一发明构思,请参考图6,本技术实施例还提出一种量子计算机中量子计算任务的处理方法,包括以下步骤:
[0089]
步骤s01:接收量子计算任务队列,其中,所述量子计算任务队列包括多个量子计
算任务;
[0090]
步骤s03:将所述量子计算任务队列中若干个量子计算任务合并为一个整体量子计算任务;
[0091]
步骤s04:基于所述整体量子计算任务在量子芯片中获取量子比特拓扑结构;
[0092]
步骤s05:将所述整体量子计算任务映射到所述量子比特拓扑结构中以执行所述整体量子计算任务。
[0093]
进一步地,量子计算机中量子计算任务的处理方法,还包括:
[0094]
步骤s06:获取所述整体量子计算任务中各个量子逻辑门的时序;
[0095]
步骤s07:基于所述时序对所述量子比特拓扑结构中存在串扰的量子比特进行校准操作。
[0096]
可选地,在步骤s03中,所述将所述量子计算任务队列中若干个量子计算任务合并为一个整体量子计算任务,包括:
[0097]
获取执行第一量子计算任务所需的第一时间以及执行第二量子计算任务的第二时间,其中,所述第一量子计算任务以及所述第一量子计算任务为所述量子计算任务队列中的两个量子计算任务,所述第一时间大于所述第二时间;
[0098]
判断所述第一时间、所述第二时间是否满足:所述第一时间小于等于所述第二时间的两倍;
[0099]
在判断结果为是时,将所述第一量子计算任务以及所述第二量子计算任务合并为所述整体量子计算任务。
[0100]
可选地,所述处理方法还包括:
[0101]
步骤s02:基于量子计算任务的深度、所需量子比特数量以及已在所述量子计算任务队列中等待的时间,设置所述量子计算任务队列中各个量子计算任务以各自的优先级,其中,优先级高的量子计算任务先执行。
[0102]
可选地,所述第一量子计算任务以及所述第二量子计算任务为所述量子计算任务队列中优先级最高的两个量子计算任务。
[0103]
所述量子计算机中量子计算任务的执行方法与所述量子计算机操作系统属于同一发明构思,在此不做赘述。
[0104]
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本技术实施例的实施过程构成任何限定。
[0105]
基于同一发明构思,本技术实施例还出一种量子计算机,包括上述特征描述中任一项所述的量子计算机操作系统。
[0106]
基于同一发明构思,本技术实施例还提出一种可读存储介质,其上存储有计算机程序,所述计算机程序被一处理器执行时能实现上述特征描述中任一项所述的处理方法。
[0107]
所述可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备,例如可以是但不限于电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、静态随机存取存储器(sram)、便携式压缩盘只读存储器(cd-rom)、数字多
功能盘(dvd)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所描述的计算机程序可以从可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收所述计算机程序,并转发该计算机程序,以供存储在各个计算/处理设备中的可读存储介质中。用于执行本技术操作的计算机程序可以是汇编指令、指令集架构(isa)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如smalltalk、c++等,以及常规的过程式编程语言—诸如“c”语言或类似的编程语言。所述计算机程序可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络,包括局域网(lan)或广域网(wan),连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机程序的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(fpga)或可编程逻辑阵列(pla),该电子电路可以执行计算机可读程序指令,从而实现本技术的各个方面。
[0108]
这里参照根据本技术实施例的方法、系统和计算机程序产品的流程图和/或框图描述了本技术的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机程序实现。这些计算机程序可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些程序在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机程序存储在可读存储介质中,这些计算机程序使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有该计算机程序的可读存储介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
[0109]
也可以把计算机程序加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的计算机程序实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
[0110]
基于同一发明构思,本技术实施例还提出一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述特征描述中任一项所述的处理方法。
[0111]
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”或“具体示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本技术的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例中以合适的方式结合。此外,本领域的技术人员可以将本说明书中描述的不同实施例或示例进行接合和组合。
[0112]
上述仅为本技术的优选实施例而已,并不对本技术起到任何限制作用。任何所属技术领域的技术人员,在不脱离本技术的技术方案的范围内,对本技术揭露的技术方案和技术内容做任何形式的等同替换或修改等变动,均属未脱离本技术的技术方案的内容,仍属于本技术的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1