Unify supercomputer mesh into one virtual machine via cluster-fabric
Add hyper-p2p-cluster-fabric: aggregates every peer's CPU, RAM, GPU, disk, and bandwidth into a single logical supercomputer (clusterId, asOneMachine). - getVirtualMachine() — total vs available capacity across all nodes - publishNode() — join the giant computer; syncs attached pool modules - reserveCluster() — greedy multi-peer allocation for one workload - runClusterJob() — reserve + fan-out jobs across slices - Gossip cluster-node / cluster-reserve / cluster-run on Protomux Enhance hyper-p2p-capacity-registry with clusterTotals() for the same aggregate view at the registry layer. Update SUPERCOMPUTER_LAYERS, category README, demo (3 racks → 44 cores, 155 GB RAM, 5 GPUs as one machine). Registry now 165 modules. Co-authored-by: Cursor <[email protected]>
This commit is contained in:
@@ -11,6 +11,17 @@ test('capacity-registry: advertise and match', async (t) => {
|
||||
await r.close()
|
||||
})
|
||||
|
||||
test('capacity-registry: clusterTotals', async (t) => {
|
||||
const r = new HyperP2PCapacityRegistry()
|
||||
r.advertise({ cpuCores: 4, ramMb: 8192 })
|
||||
r.advertise({ cpuCores: 8, ramMb: 16384 }, 'peer-b')
|
||||
const t0 = r.clusterTotals()
|
||||
t.is(t0.nodes, 2)
|
||||
t.is(t0.cpuCores, 12)
|
||||
t.ok(t0.asOneMachine)
|
||||
await r.close()
|
||||
})
|
||||
|
||||
test('capacity-registry: getStats', async (t) => {
|
||||
const r = new HyperP2PCapacityRegistry()
|
||||
t.is(r.getStats().protocol, 'capacity-registry/v1')
|
||||
|
||||
Reference in New Issue
Block a user