1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
|
#ifndef __BUCKET_H__
#define __BUCKET_H__
#include "ompi_config.h"
typedef struct{
int i;
int j;
}coord;
typedef struct{
coord * bucket; /* store i,j */
int bucket_len; /* allocated size in the heap */
int nb_elem; /* number of usefull elements (nb_elem should be lower than bucket_len) */
int sorted;
}bucket_t;
typedef struct{
bucket_t **bucket_tab;
int nb_buckets;
double **tab;
int N;/* length of tab */
/* For iterating over the buckets */
int cur_bucket;
int bucket_indice;
double *pivot;
double *pivot_tree;
int max_depth;
}_bucket_list_t;
typedef _bucket_list_t *bucket_list_t;
OMPI_HIDDEN double tm_bucket_grouping(tm_affinity_mat_t *aff_mat,tm_tree_t *tab_node, tm_tree_t *new_tab_node,
int arity,int M);
OMPI_HIDDEN int tm_try_add_edge(tm_tree_t *tab_node, tm_tree_t *parent,int arity,int i,int j,int *nb_groups);
#endif
|