SST/macro
tiled_torus.h
Go to the documentation of this file.
1 #ifndef TILED_TORUS_H
2 #define TILED_TORUS_H
3 
5 
6 namespace sstmac {
7 namespace hw {
8 
9 
10 class tiled_torus :
11  public hdtorus
12 {
13  public:
14  virtual void
15  init_factory_params(sprockit::sim_parameters *params);
16 
17  virtual void
19  const coordinates &src_coords,
20  const coordinates &dest_coords,
22  structured_routable::path_set &paths) const;
23 
24  switch_id
26  node_id nodeaddr, int ports[], int& num_ports) const;
27 
28  switch_id
30  node_id nodeaddr, int ports[], int& num_ports) const;
31 
32  void
34  node_id dest_addr, switch_id sw_addr,
35  structured_routable::path_set &paths) const;
36 
37  protected:
38  virtual void
39  connect_dim(int dim,
40  connectable *center,
41  connectable *plus,
42  connectable *minus);
43 
44  private:
45  int port(int replica, int dim, int dir);
46 
47  private:
50  std::vector<int> tile_offsets_;
51  std::vector<int> rotater_;
52 
53 
54 };
55 
56 }
57 }
58 
59 
60 #endif // TILED_TORUS_H
int port(int replica, int dim, int dir)
virtual void init_factory_params(sprockit::sim_parameters *params)
switch_id endpoint_to_ejection_switch(node_id nodeaddr, int ports[], int &num_ports) const
switch_id endpoint_to_injection_switch(node_id nodeaddr, int ports[], int &num_ports) const
virtual void connect_dim(int dim, connectable *center, connectable *plus, connectable *minus)
topology_id switch_id
Definition: node_address.h:23
SUMI = Simulator unified messagine interface It is also the name for a solid ink in Japanese - i...
void eject_paths_on_switch(node_id dest_addr, switch_id sw_addr, structured_routable::path_set &paths) const
virtual void minimal_routes_to_coords(const coordinates &src_coords, const coordinates &dest_coords, structured_routable::path &current, structured_routable::path_set &paths) const
std::vector< int > rotater_
Definition: tiled_torus.h:51
std::vector< int > tile_offsets_
Definition: tiled_torus.h:50
endpoint_id node_id
Definition: node_address.h:20
Implements a high dimensional torus network.
Definition: hdtorus.h:29