How googolplexing/hpcqc works
lumi-hpc-qc runs variational quantum experiments on HPC simulators or quantum hardware, and also provides a sweep engine for producing noise-atlas data. The principal workflow is config-driven: the CLI loads a run request, the controller validates plugins and selects a workflow, and the workflow executes through a backend; experiment records and exports support analysis and reproducibility. The README documents SLURM submission, monitoring, checkpointing, and researcher-extensible model and algorithm plugins. Sweep internals beyond the sampled placement-solver construction are not fully evidenced, so uncertain execution links are omitted.
Main entry points: workflow.py Experiment workflows · controller.py Run controller · main.py Command-line interface · registry.py Backend registry
Components 26
CLI & orchestration
- Command-line interface
src/lumi_hpc_qc/cli/main.py - Config loading
src/lumi_hpc_qc/cli/config_loader.py - Run controller
src/lumi_hpc_qc/orchestration/controller.py - Experiment workflows
src/lumi_hpc_qc/orchestration/workflow.py - SLURM scheduler
src/lumi_hpc_qc/orchestration/scheduler.py - Checkpoint manager
src/lumi_hpc_qc/orchestration/checkpoint.py
Execution backends
- Backend registry
src/lumi_hpc_qc/backends/registry.py - Aer CPU/GPU
src/lumi_hpc_qc/backends/aer_cpu.py - IQM QPU
src/lumi_hpc_qc/backends/iqm_qpu.py - QX API client
src/lumi_hpc_qc/backends/qx_client.py
Research plugins
- Plugin registry
src/lumi_hpc_qc/plugins/registry.py - Hamiltonians
src/lumi_hpc_qc/plugins/hamiltonians - Ansätze
src/lumi_hpc_qc/plugins/ansatze - Optimizers & gradients
src/lumi_hpc_qc/plugins/optimizers - Error mitigation
src/lumi_hpc_qc/plugins/error_mitigation - Parameter initialization
src/lumi_hpc_qc/plugins/initializers
Sweep campaigns
- Sweep engine
src/lumi_hpc_qc/sweep/sweep_engine.py - QPU placement solver
src/lumi_hpc_qc/sweep/placement_solver.py - Calibration adapters
src/lumi_hpc_qc/plugins/calibration_adapters/iqm_v2.py
Experiment data
- HDF5 writer
src/lumi_hpc_qc/data/hdf5_writer.py - Experiment tracking
src/lumi_hpc_qc/data/experiment.py - Result store
src/lumi_hpc_qc/data/result_store.py - Data export
src/lumi_hpc_qc/data/export.py
Other components
- Researcher
- SLURM
- VTT Q50 / QX
Connections 26
- Researcher → Command-line interface: invokes
- Command-line interface → Config loading: loads config
- Command-line interface → Run controller: runs workflow
- Command-line interface → SLURM scheduler: submits jobs
- SLURM scheduler → SLURM: submits / queries
- Run controller → Plugin registry: discovers and validates
- Run controller → Backend registry: discovers
- Run controller → Experiment workflows: selects and runs
- Run controller → Checkpoint manager: resumes from
- Experiment workflows → Hamiltonians: uses
- Experiment workflows → Ansätze: uses
- Experiment workflows → Optimizers & gradients: uses
- Experiment workflows → Parameter initialization: uses
- Experiment workflows → Error mitigation: uses
- Experiment workflows → Backend registry: selects backend
- Backend registry → Aer CPU/GPU: provides
- Backend registry → IQM QPU: provides
- IQM QPU → VTT Q50 / QX: submits circuits
- QX API client → VTT Q50 / QX: queries device and jobs
- Experiment workflows → Experiment tracking: records experiment
- Experiment tracking → Result store: stores results
- Result store → Data export: exports records
- Researcher → Sweep engine: configures sweep
- Sweep engine → QPU placement solver: constructs solver
- Sweep engine → HDF5 writer: writes HDF5
- Calibration adapters → Sweep engine: calibration support