Skip to content

bloqade.lanes.arch.build.topology.HypercubeSiteTopology

← Module overview

classHypercubeSiteTopologysource

bloqade.lanes.arch.build.topology.HypercubeSiteTopology

Hypercube site connectivity within a single word.

class HypercubeSiteTopology

For N = 2^k sites, produces k buses. Bus for dimension d connects sites that differ in bit d: src = [sites with bit d=0], dst = [sites with bit d=1]. Each bus has N/2 parallel moves.

For non-power-of-2 N, rounds up to the next power of 2 and filters out site indices >= N. Higher-indexed sites get fewer connections (e.g. for N=17, site 16 connects only to site 0 via dimension 4).

methodgenerate_site_busessource

bloqade.lanes.arch.build.topology.HypercubeSiteTopology.generate_site_buses

def generate_site_buses(num_sites: int) -> tuple[SiteBus, ...]

Parameters

NameTypeDescription
num_sitesint

Returns

tuple[SiteBus, ...]

source