1 #include <hwloc.h> 2 #include "tm_tree.h" 3 4 tm_topology_t* get_local_topo_with_hwloc(void); 5 tm_topology_t* hwloc_to_tm(char *filename); 6 int int_cmp_inc(const void* x1,const void* x2); 7 void optimize_arity(int **arity, double **cost, int *nb_levels,int n); 8 int symetric(hwloc_topology_t topology); 9 tm_topology_t * tgt_to_tm(char *filename); 10 void tm_display_arity(tm_topology_t *topology); 11 void tm_display_topology(tm_topology_t *topology); 12 void tm_free_topology(tm_topology_t *topology); 13 tm_topology_t *tm_load_topology(char *arch_filename, tm_file_type_t arch_file_type); 14 void tm_optimize_topology(tm_topology_t **topology); 15 int tm_topology_add_binding_constraints(char *constraints_filename, tm_topology_t *topology); 16 int topo_nb_proc(hwloc_topology_t topology,int N); 17 void topology_arity(tm_topology_t *topology,int **arity,int *nb_levels); 18 void topology_constraints(tm_topology_t *topology,int **constraints,int *nb_constraints); 19 void topology_cost(tm_topology_t *topology,double **cost); 20 void topology_numbering(tm_topology_t *topology,int **numbering,int *nb_nodes); 21 double ** topology_to_arch(hwloc_topology_t topology); 22 int nb_processing_units(tm_topology_t *topology); 23