PivotQ
PivotQ 是面向科学计算的量超智融合系统,将 CPU、GPU 与 QPU 上的计算步骤连接起来,提供程序编写、任务执行、性能预测和结果查看的入口。
用户定义计算组件、目标硬件及数据依赖,PivotQ 按照声明协调各组件执行。
经典计算与量子计算
Section titled “经典计算与量子计算”-
经典计算以比特表示信息,通过确定的指令和算法处理数据。CPU 擅长流程控制、逻辑判断和通用数值计算;GPU 则通过大量并行计算单元,高效处理矩阵运算、模型训练与推理等任务。由 CPU、GPU 及高速互联组成的计算集群,是现代科学计算与人工智能的重要基础。
-
在科学应用中,经典计算承担数据准备、模型计算、参数优化和结果分析等工作。例如,在分子动力学中,需要根据原子受力更新位置与速度,并持续记录分子的运动轨迹。这些计算也为量子计算提供输入,并处理其返回的结果。
-
量子计算以量子比特为基本信息单元,利用叠加、纠缠和干涉等量子特性处理信息。开发者通过量子门构造电路,由 QPU 执行量子态的制备与演化,最后通过测量得到经典数据。在许多量子算法中,需要重复执行电路,根据测量统计估计概率或物理观测量。
-
量子计算为量子系统模拟、量子特征提取等任务提供了新的计算方法,其作用取决于具体算法和问题。实际应用通常还需要经典计算准备电路参数、分析测量结果,并决定下一轮计算。因此,量子计算与经典计算之间往往存在持续的数据交换和迭代。
| 资源 | 适合承担的工作 | 程序中的例子 |
|---|---|---|
| CPU:通用处理器 | 流程控制、通用数值运算与数据处理 | 准备输入、更新参数、分析结果 |
| GPU:并行加速器 | 大量可并行的经典计算 | 张量运算、模型训练与推理 |
| QPU:量子处理器 | 执行量子电路并返回测量结果 | 计算量子特征、估计观测量 |
- 混合计算将经典计算与量子计算组织在同一程序中:经典阶段准备输入,量子阶段执行电路并返回测量结果,经典阶段再处理结果或更新下一轮计算的参数。
混合计算需求
Section titled “混合计算需求”在量子-经典混合应用中,一个完整任务通常包含数据准备、量子电路执行、经典模型计算和参数更新等环节。这些环节可能需要反复迭代,并分别运行在 CPU、GPU 和 QPU 上。开发者除了实现各部分算法,还需要协调不同设备之间的任务执行与数据交换。
这类应用主要有以下需求:
- 清晰表达计算步骤与依赖:明确每一步接收什么输入、产生什么输出,以及哪些步骤可以并行、哪些必须等待前序结果。例如,经典模型需要取得量子特征后,才能继续预测能量。
- 协调不同硬件上的计算:CPU、GPU 和 QPU 的编程接口、资源要求与执行方式各不相同。用户需要根据算法特点指定目标设备,并将设备调用连接到同一个计算流程中。
- 评估完整流程的性能:总耗时不仅取决于单个计算步骤,还受到数据传输、设备调用和任务等待的影响。需要结合任务工作量与硬件参数,评估不同配置下的执行时间,识别主要瓶颈。
- 管理运行过程与计算结果:当任务跨越多个设备并持续迭代时,需要统一查看运行状态、日志、参数和输出,定位失败环节,并对照不同配置下的计算结果与执行记录。
PivotQ 围绕这些需求,提供融合编程、性能模拟和可视化工作台,支持任务组织、资源配置与结果查看。
系统以融合编程框架组织任务执行,通过性能模拟器评估目标配置,并由工作台提供应用操作界面。下图展示程序、CPU/GPU/QPU 计算资源与性能评估之间的关系。
融合编程框架
Section titled “融合编程框架”-
如图所示,Python 程序通过融合编程框架组织执行。用户以输入输出连接计算组件,并声明目标资源;框架按照依赖协调 CPU、GPU 与 QPU 阶段,将前序结果交给后续组件。模型可封装为有状态组件,在多次调用间复用。
-
硬件分配由用户决定。GPU 计算通过应用桥接与 Ray 组件接入,QPU 通过量子后端适配器连接;各入口的能力见 GPU 与异构资源和量子后端。
-
图中的虚线分支表示独立的性能评估。应用提供各阶段的工作量、数据传输信息和硬件参数,模拟器据此估算耗时、吞吐及通信开销,用于配置比较与瓶颈分析。
-
用户可以在提交计算前比较配置,再结合运行记录查看实际耗时。预测值与实测值分别展示,便于核对各自的任务参数和硬件条件。
可视化工作台
Section titled “可视化工作台”- 工作台提供已接入应用的程序与参数编辑、阶段设备选择、任务提交和结果查看。当前包含水分子动力学模拟与受控量子电路教程,可查看日志、输出文件,以及应用对应的曲线和分子轨迹。
应用教程:水分子动力学模拟
Section titled “应用教程:水分子动力学模拟”水分子动力学模拟教程使用训练好的量子-经典势能模型,根据原子位置预测分子势能,再计算受力、更新位置与速度。重复这一过程,就得到水分子的运动轨迹及能量变化。
一次计算循环包含以下阶段。下表沿用工作台教程截图中的 CPU/QPU 目标配置;首页 01 展示的另一条应用路径把经典势能预测安排在 GPU 上。
| 计算阶段 | 主要工作 | 目标设备 |
|---|---|---|
| 输入准备 | 从原子坐标提取键长、键角等几何信息,生成电路输入参数 | CPU |
| 量子特征计算 | 执行参数化量子电路,通过读出获得经典模型所需的特征 | QPU |
| 势能预测 | 将量子特征输入经典神经网络,得到当前构型的势能 | CPU |
| 求力与积分 | 对坐标施加小幅扰动,通过多次能量评估做中心差分求力并移除刚体数值残差,再更新位置与速度 | CPU |
求力需要对多个扰动构型重复进行量子特征计算和经典能量预测,因此,一个动力学时间步会涉及多次相互依赖的计算。更新原子位置后,系统再从新的分子构型开始下一轮。
在这个过程中,应用定义科学计算方法,PivotQ 组织计算执行:应用提供分子模型、训练参数、求力方法和积分设置;框架连接各阶段的输入输出,根据用户指定的资源协调任务。性能模拟器结合任务工作量与硬件参数评估耗时,工作台展示运行记录、能量曲线和分子轨迹。
进一步查看:水分子动力学模拟教程 · 工作台操作教程。
- 准备程序:安装 PivotQ,定义计算步骤及其输入输出。
- 指定设备:配置所需后端,为支持的步骤声明资源并连接依赖。
- 评估性能:需要比较配置时,补充工作量和硬件描述,运行预测。
- 提交计算:按选定配置执行,取回结果并查看状态、日志和执行记录。
- 调整方案:结合计算结果与性能记录,修改下一次运行的参数。