Skip to content

x/hpc — HPC module

The x/hpc module extends the marketplace to batch supercomputing. Instead of leasing long-running services, tenants submit HPC jobs — batch workloads with resource, walltime, and partition requirements — that execute on providers’ existing cluster schedulers: SLURM, MOAB, or Open OnDemand.

On the provider side, the daemon’s HPC integration polls on-chain jobs, dispatches them through native scheduler adapters, tracks lifecycle with configurable concurrency limits and timeouts, and recovers state crash-safely. Usage batches flow into the same settlement pipeline as cloud workloads.

The module carries the batch model natively on chain:

  • Jobs, not containers. On-chain jobs record resource, walltime, and partition requirements — the batch model rather than a container shim.
  • Clusters and offerings. Operators register clusters, expose partitions and job classes as offerings, and update node metadata as the cluster changes.
  • Templates. Workload templates can be created, approved, rejected, deprecated, and revoked, with approved templates searchable by publisher and type.
  • Disputes and audit. Job events, security events, and usage feed a dedicated audit log in the daemon, and job disputes are flagged and resolved on chain.

University and national-lab clusters run some of the world’s most valuable capacity at partial utilization, but their operating model — batch schedulers, allocations, walltime — doesn’t map onto container leases. A dedicated HPC module lets that capacity join the marketplace without re-platforming the cluster.

ConceptDefinition
HPC jobA batch workload with resource, walltime, and partition requirements, executed via a cluster scheduler.
Scheduler adapterThe daemon component that speaks natively to SLURM, MOAB, or Open OnDemand.
PartitionA scheduler-level subdivision of a cluster that can be exposed to the marketplace with its own configuration.
  1. Submit — A job goes on-chain. Resource, walltime, and partition requirements are recorded as an HPC job through the same exchange economics.
  2. Dispatch — The adapter dispatches. The daemon polls on-chain jobs and dispatches through the native scheduler with configurable limits and timeouts.
  3. Track — Lifecycle is tracked. Polling, dispatch, tracking, and crash-safe recovery — with job, security, and usage events in a dedicated audit log.
  4. Settle — Usage batches settle. Metered batches flow into the standard usage-settlement pipeline from tenant escrow.
MessagePurpose
MsgRegisterClusterRegisters a cluster with the marketplace.
MsgUpdateClusterUpdates a registered cluster’s configuration.
MsgDeregisterClusterRemoves a cluster from the marketplace.
MsgCreateOfferingCreates an offering for exposed cluster capacity.
MsgUpdateOfferingUpdates an existing HPC offering.
MsgSubmitJobSubmits an HPC job with resource, walltime, and partition requirements.
MsgSubmitJobFromTemplateSubmits a job derived from a workload template.
MsgReportJobStatusReports scheduler status for a job.
MsgCancelJobCancels a submitted job.
MsgFlagDisputeRaises a dispute over a job.
MsgResolveDisputeResolves a flagged job dispute.
MsgUpdateNodeMetadataUpdates metadata for a cluster’s nodes.
MsgCreateWorkloadTemplatePublishes a workload template.
MsgUpdateWorkloadTemplateUpdates a published workload template.
MsgApproveWorkloadTemplateApproves a submitted workload template.
MsgRejectWorkloadTemplateRejects a submitted workload template.
MsgDeprecateWorkloadTemplateMarks a workload template as deprecated.
MsgRevokeWorkloadTemplateRevokes a previously approved workload template.
MsgUpdateParamsGovernance-only update of module parameters.
QueryPurpose
Cluster / Clusters / ClustersByProviderClusters individually, as a list, or filtered by provider.
NodesByClusterThe node inventory of one cluster.
Offering / Offerings / OfferingsByClusterOfferings individually, as a list, or filtered by cluster.
Job / JobsA single job, or the job list.
JobsByCustomer / JobsByProviderJobs filtered to the customer or provider side.
JobAccountingAccounting records for a job’s resource usage.
SchedulingDecision / SchedulingDecisionByJobThe recorded scheduling decision, by ID or by job.
SchedulingMetricsAggregate scheduling metrics.
NodeMetadataMetadata recorded for a cluster’s nodes.
WorkloadTemplate / WorkloadTemplatesA single workload template, or the template list.
WorkloadTemplatesByPublisher / WorkloadTemplatesByTypeTemplates filtered by publisher or by type.
WorkloadTemplateUsageWhere a workload template has been used.
ApprovedWorkloadTemplatesWorkload templates currently approved for use.
SearchWorkloadTemplatesWorkload templates matching a search.
ParamsCurrent module parameters.
ModuleHow they interact
x/marketHPC capacity is offered and priced through the same exchange economics.
x/settlementHPC job usage settles through the standard usage-settlement pipeline.
x/providerCluster operators register as providers with HPC-specific attributes.
x/auditScheduler-level audit logging complements on-chain audit attestations.

No. The scheduler, partitions, and auth stay as they are — only the partitions and job classes a facility exposes become schedulable from the market.

Through the same exchange economics as the rest of the marketplace. Facilities set pricing per partition and job class, and jobs are paid from tenant escrow under the governed settlement fee policy.

Two layers: the daemon’s dedicated audit log for job, security, and usage events, plus the on-chain record — job, usage batches, settlement — validated by consensus.