Versions in this module Expand all Collapse all v0 v0.2.0 Jan 3, 2026 Changes in this version + type AddressMappingConfig struct + Granularity uint64 + Strategy MappingStrategy + func (c *AddressMappingConfig) Validate() error + type AddressRange struct + End uint64 + Start uint64 + func (r *AddressRange) Contains(addr uint64) bool + type AnalysisResult struct + CacheNodes map[int][]int + CoherenceTree *CoherenceTree + ComputeNodes []int + DirectoryNodes []int + Errors []string + MemoryNodes []int + Warnings []string + type CoherenceDomain struct + AddressRange *AddressRange + ManagedNodes []int + type CoherenceNode struct + AddressResponsibility *AddressRange + Children []*CoherenceNode + Domain []int + NodeID int + Parent *CoherenceNode + Role NodeRole + type CoherenceRouter struct + func NewCoherenceRouter(myNodeID int, tree *CoherenceTree) *CoherenceRouter + func (r *CoherenceRouter) GetHomeNode(addr uint64) (int, error) + func (r *CoherenceRouter) GetMyDirectory() (int, error) + func (r *CoherenceRouter) IsHomeNode(addr uint64) bool + func (r *CoherenceRouter) PrintRoutingInfo() + func (r *CoherenceRouter) RouteForCoherence(addr uint64) (int, error) + func (r *CoherenceRouter) RouteForMiss(addr uint64) (int, error) + type CoherenceTree struct + AddressMappingConfig AddressMappingConfig + DirectoryNodes map[int]*CoherenceNode + Root *CoherenceNode + func BuildCoherenceTree(topology *Topology, config AddressMappingConfig, explicitTree *CoherenceTree) (*CoherenceTree, error) + func (t *CoherenceTree) GetCoherencePath(requesterID int, addr uint64) ([]int, error) + func (t *CoherenceTree) GetHomeNode(addr uint64) (int, error) + func (t *CoherenceTree) Validate() error + type CoherenceTreeBuilder struct + func NewCoherenceTreeBuilder(config AddressMappingConfig) *CoherenceTreeBuilder + func (b *CoherenceTreeBuilder) AddDirectory(nodeID int, role NodeRole, domain CoherenceDomain) *CoherenceTreeBuilder + func (b *CoherenceTreeBuilder) Build() (*CoherenceTree, error) + func (b *CoherenceTreeBuilder) SetParent(childID, parentID int) *CoherenceTreeBuilder + func (b *CoherenceTreeBuilder) SetRoot(rootID int) *CoherenceTreeBuilder + type MappingStrategy string + const MappingInterleaved + const MappingRanged + type NodeCapability struct + CacheLevel int + CanInitiate bool + HasDirectory bool + Role NodeRole + type NodeDescriptor struct + Capability NodeCapability + NodeID int + type NodeRole string + const RoleCache + const RoleCompute + const RoleDirectory + const RoleInterconnect + const RoleMemory + const RoleMemoryCtrl + type Topology struct + Connections map[int][]int + Nodes map[int]*NodeDescriptor + type TopologyAnalyzer struct + func NewTopologyAnalyzer(topology *Topology, config AddressMappingConfig) *TopologyAnalyzer + func (a *TopologyAnalyzer) Analyze() (*AnalysisResult, error)