1 #ifndef SIMPLE_TOPOLOGY_H 2 #define SIMPLE_TOPOLOGY_H 19 #ifndef SSTMAC_HARDWARE_NETWORK_TOPOLOGY_HDTORUS_H_INCLUDED 20 #define SSTMAC_HARDWARE_NETWORK_TOPOLOGY_HDTORUS_H_INCLUDED 39 return "simple topology";
114 topology::configure_vc_routing(m);
120 virtual std::vector<node_id>
151 #endif // SIMPLE_TOPOLOGY_H
virtual switch_id endpoint_to_injection_switch(node_id nodeaddr, int &switch_port) const
virtual int diameter() const
int num_switches_with_extra_node_
switch_id switch_number(const coordinates &coords) const
int num_leaf_switches() const
Structured topologies can be direct (torus) or indirect (fat tree).
virtual std::vector< node_id > nodes_connected_to_switch(switch_id swaddr) const
void compute_switch_coords(switch_id swid, coordinates &coords) const
Compute coordinates (e.g.
int minimal_distance(const coordinates &src_coords, const coordinates &dest_coords) const
The function accepts either source or node coordinates.
void connect_objects(internal_connectable_map &objects)
Given a set of connectables, connect them appropriately.
virtual std::string to_string() const
SUMI = Simulator unified messagine interface It is also the name for a solid ink in Japanese - i...
virtual switch_id endpoint_to_ejection_switch(node_id nodeaddr, int &switch_port) const
virtual void finalize_init()
int num_endpoints() const
coordinates node_coords(node_id uid) const
Compute coordinates (e.g.
virtual int radix() const
void init_factory_params(sprockit::sim_parameters *params)
virtual int ndimensions() const
The number of distinct 'dimensions' in the topology.
int convert_to_port(int dim, int dir) const
virtual ~simple_topology()
void minimal_route_to_coords(const coordinates &src_coords, const coordinates &dest_coords, structured_routable::path &path) const
Workhorse function for implementing minimal_route_to_switch and #minimal_route_to_node.
void configure_vc_routing(std::map< routing::algorithm_t, int > &m) const
Encapsulates a topology like torus, fat tree, butterfly which has a regular, well-defined structure...
virtual int num_hops_to_node(node_id src, node_id dst) const
virtual void productive_path(int dim, const coordinates &src, const coordinates &dst, structured_routable::path &path) const
hw::topology * actual_topology_