gretl_mpi

gretl_mpi

Functions

Types and Values

Description

Functions

gretl_MPI_init ()

int
gretl_MPI_init (void);

gretl_mpi_initialized ()

int
gretl_mpi_initialized (void);

gretl_mpi_rank ()

int
gretl_mpi_rank (void);

gretl_mpi_n_processes ()

int
gretl_mpi_n_processes (void);

gretl_mpi_bcast ()

int
gretl_mpi_bcast (void *p,
                 GretlType type,
                 int root);

Broadcasts the value referenced by p to MPI_COMM_WORLD. type must be GRETL_TYPE_MATRIX, in which case p should be a (**gretl_matrix) pointer; GRETL_TYPE_BUNDLE, in which case p should be a (**gretl_bundle) pointer; or GRETL_TYPE_DOUBLE, in which case p should be a (*double) pointer.

Parameters

p

the location of the object to be broadcast.

 

type

the type of the object to which p points.

 

root

the rank of the root process.

 

Returns

0 on successful completion, non-zero code otherwise.


gretl_matrix_mpi_bcast ()

int
gretl_matrix_mpi_bcast (gretl_matrix **pm,
                        int root);

gretl_scalar_mpi_bcast ()

int
gretl_scalar_mpi_bcast (double *px,
                        int root);

gretl_int_mpi_bcast ()

int
gretl_int_mpi_bcast (int *pu,
                     int root);

gretl_unsigned_mpi_bcast ()

int
gretl_unsigned_mpi_bcast (unsigned int *ui,
                          int root);

gretl_mpi_send ()

int
gretl_mpi_send (void *p,
                GretlType type,
                int dest);

Sends the value referenced by p to the MPI process with rank dest . At present type must be GRETL_TYPE_MATRIX, GRETL_TYPE_DOUBLE, GRETL_TYPE_INT or GRETL_TYPE_BUNDLE. The p argument should be a pointer of matching type: (*gretl_matrix), (*double), (*int) or (*gretl_bundle).

Parameters

p

pointer to the object to be sent.

 

type

the type of the object.

 

dest

the MPI rank of the destination.

 

Returns

0 on successful completion, non-zero code otherwise.


gretl_matrix_mpi_send ()

int
gretl_matrix_mpi_send (const gretl_matrix *m,
                       int dest);

gretl_matrix_mpi_receive ()

gretl_matrix *
gretl_matrix_mpi_receive (int source,
                          int *err);

gretl_matrix_mpi_reduce ()

int
gretl_matrix_mpi_reduce (gretl_matrix *sm,
                         gretl_matrix **pm,
                         Gretl_MPI_Op op,
                         int root,
                         gretlopt opt);

gretl_scalar_mpi_reduce ()

int
gretl_scalar_mpi_reduce (double x,
                         double *xp,
                         Gretl_MPI_Op op,
                         int root,
                         gretlopt opt);

gretl_matrix_mpi_scatter ()

int
gretl_matrix_mpi_scatter (const gretl_matrix *m,
                          gretl_matrix **recvm,
                          Gretl_MPI_Op op,
                          int root);

gretl_scalar_mpi_receive ()

double
gretl_scalar_mpi_receive (int source,
                          int *err);

gretl_mpi_receive ()

int
gretl_mpi_receive (int source,
                   GretlType *type,
                   gretl_matrix **pm,
                   gretl_bundle **pb,
                   double *px,
                   int *pi);

gretl_mpi_stopwatch_init ()

void
gretl_mpi_stopwatch_init (void);

gretl_mpi_stopwatch ()

double
gretl_mpi_stopwatch (void);

Types and Values

enum Gretl_MPI_Op

Members

GRETL_MPI_SUM

   

GRETL_MPI_PROD

   

GRETL_MPI_MAX

   

GRETL_MPI_MIN

   

GRETL_MPI_HCAT

   

GRETL_MPI_VCAT

   

GRETL_MPI_HSPLIT

   

GRETL_MPI_VSPLIT