Massive Supercomputer pass: mesh factory, compute-shard, fabric depth
Turn the category into a production-ready unified virtual supercomputer. New: - _shared/supercomputer-mesh.js — createSupercomputerMesh() wires all 14 modules - hyper-p2p-compute-shard — round-robin workload sharding across cluster peers cluster-fabric: - canFit, broadcastSnapshot, completeClusterRun - cluster-snapshot gossip; fix RAM lend on publishNode Pool modules — introspection helpers: - capacity-registry: meetsRequirements, exportClusterView, listPeerIds - cpu-share: totalPool, hasBalance - ram-pool: lendMb, listLenders, availableBytes, listLeases - disk-stripe: reassemble, clusterDiskBytes - job-dispatcher: listJobs, runningCount, cancelJob - gpu-slot: reserveCount, clusterGpuSlots - bandwidth-share: clusterMbps - net-gateway: bestGateway, totalCapacityBytes - thermal-guard: throttledPeerIds, healthyPeerIds - cluster-affinity: bestPeer - work-stealer: totalPending, stealFromBusiest - cache-farm: has, keys Docs: SUPERCOMPUTER_LAYERS, category README, cluster-fabric api.md Examples: demo-supercomputer-mesh uses createSupercomputerMesh Registry: 166 modules (14 supercomputer) Co-authored-by: Cursor <[email protected]>
This commit is contained in:
@@ -70,6 +70,20 @@ class HyperP2PRamPool extends EventEmitter {
|
||||
return t
|
||||
}
|
||||
|
||||
lendMb (peerId, ramMb) {
|
||||
return this.lend(peerId, ramMb * 1024 * 1024)
|
||||
}
|
||||
|
||||
listLenders () {
|
||||
return [...this._pool.entries()].map(([peerId, bytes]) => ({ peerId, bytes, ramMb: Math.floor(bytes / (1024 * 1024)) }))
|
||||
}
|
||||
|
||||
availableBytes () {
|
||||
return this.poolTotal()
|
||||
}
|
||||
|
||||
listLeases () { return [...this._leases.values()] }
|
||||
|
||||
async ready () {
|
||||
if (this.swarm || !this.topic) return this
|
||||
await initModuleSwarm(this, {
|
||||
|
||||
Reference in New Issue
Block a user