00001 #ifndef FUPERMOD_DYNAMIC_H_
00002 #define FUPERMOD_DYNAMIC_H_
00003
00004 #include "fupermod_partition.h"
00005 #include <sys/time.h>
00006
00007 #ifdef __cplusplus
00008 extern "C" {
00009 #endif
00010
00045 typedef struct fupermod_dynamic {
00047 fupermod_partition partition;
00049 int size;
00051 fupermod_model** models;
00053 fupermod_dist* dist;
00054 } fupermod_dynamic;
00055
00065 int fupermod_partitioner_iterate(fupermod_dynamic* partitioner, MPI_Comm comm, int root, fupermod_precision precision, fupermod_benchmark* benchmark, double eps);
00066
00070 int fupermod_partitioner_iterate_one(fupermod_dynamic* partitioner, MPI_Comm comm, int root, fupermod_precision precision, fupermod_benchmark* benchmark, double eps);
00078 int fupermod_balancer_iterate(fupermod_dynamic* balancer, MPI_Comm comm, int root, struct timespec start);
00079
00083 #ifdef __cplusplus
00084 }
00085 #endif
00086
00087 #endif