HPC Workloads
VirtEngine extends the marketplace beyond containers and VMs to high-performance computing: batch jobs, MPI workloads, GPU compute, and interactive sessions running on real HPC clusters managed by SLURM, MOAB, or Open OnDemand.
What x/hpc puts on-chain
Section titled “What x/hpc puts on-chain”- Clusters — providers register HPC clusters with type, region, endpoint, and capacity.
- Queues — priced queues per cluster (
price_per_hour, duration bounds, resource type). - Jobs — tenant submissions referencing an offering, with node/GPU counts, duration, budget, and the job script.
- Scheduling decisions — which cluster a job should run on, recorded on-chain so placement is deterministic and auditable.
- Workload templates — curated, signed job templates approved through governance.
Job lifecycle
Section titled “Job lifecycle”Jobs move through scheduler-mirrored states:
pending → queued → starting → running → completed ↘ failed ↘ timeout ↓ cancelledThe provider daemon fires lifecycle callbacks on each transition (submitted, queued, started, completed, failed, cancelled, timeout, suspended, resumed) and reports status on-chain.
Routing enforcement
Section titled “Routing enforcement”Placement is not advisory. The provider daemon’s routing enforcer validates every submission against the on-chain scheduling decision, in one of three modes:
| Mode | Behavior |
|---|---|
strict (default) | Jobs must carry a valid, fresh decision for an available cluster; anything else is rejected |
permissive | Missing/stale decisions trigger re-scheduling; fallback clusters allowed but logged |
audit_only | No enforcement; all violations logged for monitoring |
Decisions go stale after ~100 blocks / 600 seconds by default and must be
refreshed. Violations (missing_decision, stale_decision,
cluster_mismatch, cluster_unavailable, capacity_exceeded,
unauthorized_fallback) are recorded as audit records with severity levels.
Built-in workload templates
Section titled “Built-in workload templates”Five validated templates ship with the protocol:
| Template ID | Type | Description |
|---|---|---|
mpi-standard | MPI | Standard MPI parallel computing with OpenMPI |
gpu-compute | GPU | GPU-accelerated compute with CUDA support |
batch-standard | Batch | Single-node batch processing |
data-processing | Data Processing | Spark/Dask data pipelines |
interactive-session | Interactive | JupyterLab and terminal sessions |
virtengine hpc templates list # all templatesvirtengine hpc templates list --type gpu # filter by typevirtengine hpc templates show mpi-standardCustom templates are cryptographically signed by their publisher and require governance approval — the full flow is in HPC Workload Templates.
Usage and accounting
Section titled “Usage and accounting”HPC usage records capture wall-clock seconds, CPU core-seconds, memory GB-seconds, GPU-seconds, node-hours, storage GB-hours, network transfer, and energy where available — signed and submitted on-chain like every other usage record, feeding the standard settlement pipeline.
Audience guides
Section titled “Audience guides”- Providers: HPC Operations and HPC Node Agent.
- Tenants: Submitting HPC Jobs.