nrnmpi.h

Go to the documentation of this file.
00001 #ifndef nrnmpi_h
00002 #define nrnmpi_h
00003 #include "nrnmpiuse.h"
00004 
00005 /* by default nrnmpi_numprocs_world = nrnmpi_numprocs = nrnmpi_numsubworlds and
00006    nrnmpi_myid_world = nrnmpi_myid and the bulletin board and network communication do
00007    not easily coexist. ParallelContext.subworlds(nsmall) divides the world into
00008    nrnmpi_numprocs_world/small subworlds of size nsmall.
00009 */
00010 extern int nrnmpi_numprocs_world; /* size of entire world. total size of all subworlds */
00011 extern int nrnmpi_myid_world; /* rank in entire world */
00012 extern int nrnmpi_numprocs; /* size of subworld */
00013 extern int nrnmpi_myid; /* rank in subworld */
00014 extern int nrnmpi_numprocs_bbs; /* number of subworlds */
00015 extern int nrnmpi_myid_bbs; /* rank in nrn_bbs_comm of rank 0 of a subworld */
00016 
00017 #if NRNMPI
00018 
00019 #if defined(__cplusplus)
00020 extern "C" {
00021 #endif
00022 
00023 extern int nrnmpi_use; /* NEURON does MPI init and terminate?*/
00024 extern void nrnmpi_init(int under_NEURON_control, int* pargc, char*** pargv);
00025 extern void nrnmpi_terminate();
00026 extern void nrnmpi_abort(int errcode);
00027 extern double nrnmpi_wtime();
00028 
00029 #if defined(__cplusplus)
00030 }
00031 #endif /*c++*/
00032 
00033 #endif /*NRNMPI*/
00034 #endif /*nrnmpi_h*/
Generated on Mon Jun 13 08:10:27 2011 for NEURON by  doxygen 1.6.3