Revision 3e17855d6a9288302842fee9bf152e258f348d4f authored by Santosh Gunturu on 05 August 2016, 19:16:55 UTC, committed by Santosh Gunturu on 05 August 2016, 19:16:55 UTC
1 parent 0117143
multinode.h
// enveomics/mpi.h - Library for mpi-related code in enve-omics software
// @author Luis M. Rodriguez-R <lmrodriguezr at gmail dot com>
// @licanse artistic 2.0
// @version 1.0
#ifndef ENVEOMICS_MULTINODE_H
#define ENVEOMICS_MULTINODE_H
/**
* void init_multinode(int argc, char **argv, int &processID, int &processes);
* Description:
* Initializes multinode mode. If MPI is not supported, it's a dummy function.
* Input:
* int argc: argc of main.
* char **argv: argv of main.
* int &pid: Reference to an integer to be defined as the (current) process ID.
* int &pp: Reference to an integer to be defined as the total number of spanned processes.
*/
void init_multinode(int& argc, char**& argv, int& pid, int& pp);
/**
* void finalize_multinode();
* Description:
* If MPI support is active closes MPI, otherwise it's a dummy function.
*/
void finalize_multinode();
size_t broadcast_int(size_t value);
double broadcast_double(double value);
char* broadcast_char(char* value, size_t size);
char broadcast_char(char value);
void barrier_multinode();
void reduce_sum_int(int *send, int *receive, int size);
void reduce_sum_int(int send, int receive);
void reduce_sum_double(double *send, double *receive, int size);
#endif
![swh spinner](/static/img/swh-spinner.gif)
Computing file changes ...