
Go to the source code of this file.
Data Structures | |
| struct | hash_t |
| struct | hash2_t |
Functions | |
| int | nb_nodes (tm_topology_t *topology) |
| void | free_topology (tm_topology_t *topology) |
| double | print_sol (int N, int *Value, double **comm, double **arch) |
| void | print_1D_tab (int *tab, int N) |
| int | nb_lines (char *filename) |
| void | init_comm (char *filename, int N, double **comm) |
| int | build_comm (char *filename, double ***pcomm) |
| void | map_Packed (tm_topology_t *topology, int N, int *Value) |
| void | map_RR (int N, int *Value) |
| int | hash_asc (const void *x1, const void *x2) |
| int * | generate_random_sol (tm_topology_t *topology, int N, int level, int seed) |
| double | eval_sol (int *sol, int N, double **comm, double **arch) |
| void | exchange (int *sol, int i, int j) |
| double | gain_exchange (int *sol, int l, int m, double eval1, int N, double **comm, double **arch) |
| void | select_max (int *l, int *m, double **gain, int N, int *state) |
| void | compute_gain (int *sol, int N, double **gain, double **comm, double **arch) |
| void | map_MPIPP (tm_topology_t *topology, int nb_seed, int N, int *Value, double **comm, double **arch) |
| void | map_tree (tree_t *t1, tree_t *t2) |
| void | depth_first (tree_t *comm_tree, int *proc_list, int *i) |
| int | nb_leaves (tree_t *comm_tree) |
| void | map_topology (tm_topology_t *topology, tree_t *comm_tree, int nb_proc, int level, int *sigma, int *k) |
| void | map_topology_simple (tm_topology_t *topology, tree_t *comm_tree, int *sigma, int *k) |
| static int | int_cmp (const void *x1, const void *x2) |
| int | decompose (int n, int optimize, int *tab) |
| tree_t * | build_synthetic_topology_old (int *synt_tab, int id, int depth, int nb_levels) |
| void | display_topology (tm_topology_t *topology) |
| tm_topology_t * | build_synthetic_topology (int *arity, int nb_levels, int *core_numbering, int nb_core_per_nodes) |
| void | build_synthetic_proc_id (tm_topology_t *topology) |
| void | update_comm_speed (double **comm_speed, int old_size, int new_size) |
| void | TreeMatchMapping (int nb_obj, int nb_proc, double **comm_mat, double *obj_weight, double *comm_speed, int d, int *sol) |
| void | display_other_heuristics (tm_topology_t *topology, int N, double **comm, double **arch) |
| int nb_nodes | ( | tm_topology_t * | topology | ) |
Definition at line 37 of file tm_mapping.C.
References tm_topology_t::nb_levels, and tm_topology_t::nb_nodes.
Referenced by map_topology().

| void free_topology | ( | tm_topology_t * | topology | ) |
Definition at line 45 of file tm_mapping.C.
References tm_topology_t::arity, free(), tm_topology_t::nb_levels, tm_topology_t::nb_nodes, and tm_topology_t::node_id.
Referenced by TreeMatchMapping(), and TreeMatchLB::work().


Definition at line 55 of file tm_mapping.C.
Referenced by display_other_heuristics().

Definition at line 81 of file tm_mapping.C.
| int nb_lines | ( | char * | filename | ) |
Definition at line 92 of file tm_mapping.C.
Referenced by build_comm().

| void init_comm | ( | char * | filename, | |
| int | N, | |||
| double ** | comm | |||
| ) |
Definition at line 111 of file tm_mapping.C.
References PUP::l.
Referenced by build_comm(), and CmiIsomallocInit().

| int build_comm | ( | char * | filename, | |
| double *** | pcomm | |||
| ) |
Definition at line 159 of file tm_mapping.C.
References comm, init_comm(), malloc(), and nb_lines().

| void map_Packed | ( | tm_topology_t * | topology, | |
| int | N, | |||
| int * | Value | |||
| ) |
Definition at line 172 of file tm_mapping.C.
References tm_topology_t::nb_levels, and tm_topology_t::node_id.
Referenced by display_other_heuristics().

Definition at line 184 of file tm_mapping.C.
Referenced by display_other_heuristics().

| int hash_asc | ( | const void * | x1, | |
| const void * | x2 | |||
| ) |
Definition at line 196 of file tm_mapping.C.
References e1, and hash_t::key.
Referenced by generate_random_sol().

| int* generate_random_sol | ( | tm_topology_t * | topology, | |
| int | N, | |||
| int | level, | |||
| int | seed | |||
| ) |
Definition at line 208 of file tm_mapping.C.
References free(), hash_asc(), hash_t::key, malloc(), tm_topology_t::node_id, qsort(), and hash_t::val.
Referenced by map_MPIPP().


Definition at line 235 of file tm_mapping.C.
Referenced by compute_gain(), gain_exchange(), and map_MPIPP().

Definition at line 251 of file tm_mapping.C.
Referenced by gain_exchange(), gk_getopt_internal(), and map_MPIPP().

| double gain_exchange | ( | int * | sol, | |
| int | l, | |||
| int | m, | |||
| double | eval1, | |||
| int | N, | |||
| double ** | comm, | |||
| double ** | arch | |||
| ) |
Definition at line 258 of file tm_mapping.C.
References eval_sol(), and exchange().
Referenced by compute_gain().


Definition at line 268 of file tm_mapping.C.
References max().
Referenced by map_MPIPP().


Definition at line 288 of file tm_mapping.C.
References eval_sol(), and gain_exchange().
Referenced by map_MPIPP().


| void map_MPIPP | ( | tm_topology_t * | topology, | |
| int | nb_seed, | |||
| int | N, | |||
| int * | Value, | |||
| double ** | comm, | |||
| double ** | arch | |||
| ) |
Definition at line 307 of file tm_mapping.C.
References compute_gain(), eval_sol(), exchange(), free(), generate_random_sol(), PUP::l, PUP::m, malloc(), max(), tm_topology_t::nb_levels, select_max(), and PUP::t.
Referenced by display_other_heuristics().


Definition at line 416 of file tm_mapping.C.
Definition at line 434 of file tm_mapping.C.
References _tree_t::arity, _tree_t::child, and _tree_t::id.
Referenced by map_topology().

Definition at line 446 of file tm_mapping.C.
References _tree_t::arity, _tree_t::child, and n.
Referenced by map_topology().

| void map_topology | ( | tm_topology_t * | topology, | |
| tree_t * | comm_tree, | |||
| int | nb_proc, | |||
| int | level, | |||
| int * | sigma, | |||
| int * | k | |||
| ) |
Definition at line 473 of file tm_mapping.C.
References assert, depth_first(), free(), PUP::l, malloc(), nb_leaves(), nb_nodes(), tm_topology_t::nb_nodes, and tm_topology_t::node_id.
Referenced by map_topology_simple(), and TreeMatchMapping().


| void map_topology_simple | ( | tm_topology_t * | topology, | |
| tree_t * | comm_tree, | |||
| int * | sigma, | |||
| int * | k | |||
| ) |
Definition at line 540 of file tm_mapping.C.
References map_topology(), tm_topology_t::nb_levels, and tm_topology_t::nb_nodes.
Referenced by TreeMatchLB::work().


| static int int_cmp | ( | const void * | x1, | |
| const void * | x2 | |||
| ) | [static] |
Definition at line 544 of file tm_mapping.C.
References e1.
Referenced by decompose().

Definition at line 556 of file tm_mapping.C.
References flag, int_cmp(), and qsort().
Referenced by TreeMatchMapping().


Definition at line 595 of file tm_mapping.C.
References malloc(), _tree_t::parent, set_node(), speed(), and _tree_t::val.

| void display_topology | ( | tm_topology_t * | topology | ) |
Definition at line 617 of file tm_mapping.C.
References tm_topology_t::nb_levels, tm_topology_t::nb_nodes, and tm_topology_t::node_id.
Referenced by TreeMatchLB::work().

| tm_topology_t* build_synthetic_topology | ( | int * | arity, | |
| int | nb_levels, | |||
| int * | core_numbering, | |||
| int | nb_core_per_nodes | |||
| ) |
Definition at line 638 of file tm_mapping.C.
References tm_topology_t::arity, malloc(), n, tm_topology_t::nb_levels, tm_topology_t::nb_nodes, and tm_topology_t::node_id.
Referenced by build_abe_topology().


| void build_synthetic_proc_id | ( | tm_topology_t * | topology | ) |
Definition at line 671 of file tm_mapping.C.
References tm_topology_t::arity, malloc(), n, tm_topology_t::nb_levels, tm_topology_t::nb_nodes, and tm_topology_t::node_id.
Referenced by TreeMatchMapping().


Definition at line 689 of file tm_mapping.C.
References malloc().
Referenced by TreeMatchMapping().


| void TreeMatchMapping | ( | int | nb_obj, | |
| int | nb_proc, | |||
| double ** | comm_mat, | |||
| double * | obj_weight, | |||
| double * | comm_speed, | |||
| int | d, | |||
| int * | sol | |||
| ) |
Definition at line 713 of file tm_mapping.C.
References tm_topology_t::arity, build_synthetic_proc_id(), build_tree_from_topology(), decompose(), free(), free_topology(), free_tree(), malloc(), map_topology(), tm_topology_t::nb_levels, and update_comm_speed().

| void display_other_heuristics | ( | tm_topology_t * | topology, | |
| int | N, | |||
| double ** | comm, | |||
| double ** | arch | |||
| ) |
Definition at line 768 of file tm_mapping.C.
References free(), malloc(), map_MPIPP(), map_Packed(), map_RR(), and print_sol().

1.5.5