
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) |
| 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().
| int nb_lines | ( | char * | filename | ) |
Definition at line 111 of file tm_mapping.c.
References ptr.
Referenced by build_comm(), and CmiIsomallocInit().
| 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().
| 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.
References c.
Referenced by compute_gain(), gain_exchange(), 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 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(), generate_random_sol(), malloc(), max(), tm_topology_t::nb_levels, and select_max().
Referenced by display_other_heuristics().
Definition at line 400 of file tm_mapping.c.
Definition at line 418 of file tm_mapping.c.
References _tree_t::arity, _tree_t::child, and _tree_t::id.
Referenced by map_topology().
Definition at line 430 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 457 of file tm_mapping.c.
References depth_first(), free(), malloc(), nb_leaves(), nb_nodes(), tm_topology_t::nb_nodes, tm_topology_t::node_id, and printf().
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 524 of file tm_mapping.c.
References map_topology(), tm_topology_t::nb_levels, and tm_topology_t::nb_nodes.
Referenced by TreeMatchLB::work().
| int int_cmp | ( | const void * | x1, | |
| const void * | x2 | |||
| ) |
Definition at line 540 of file tm_mapping.c.
References int_cmp(), printf(), and qsort().
Referenced by TreeMatchMapping().
Definition at line 579 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 601 of file tm_mapping.c.
References tm_topology_t::nb_levels, tm_topology_t::nb_nodes, tm_topology_t::node_id, and printf().
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 622 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 655 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 673 of file tm_mapping.c.
References malloc(), and printf().
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 697 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, printf(), and update_comm_speed().
| void display_other_heuristics | ( | tm_topology_t * | topology, | |
| int | N, | |||
| double ** | comm, | |||
| double ** | arch | |||
| ) |
Definition at line 752 of file tm_mapping.c.
References free(), malloc(), map_MPIPP(), map_Packed(), map_RR(), print_sol(), and printf().
1.5.5