HiRep 0.1
|
Abstracted sendrecv of buffers of given fields. More...
#include "geometry.h"
#include "memory.h"
#include "libhr_core.h"
#include "io.h"
#include <pthread.h>
#include <stdio.h>
#include <unistd.h>
#include <stdlib.h>
#include <string.h>
Data Structures | |
struct | comms_args |
Macros | |
#define | NO_OF_COMMS_THREADS 1 |
#define | _GET_RECV_BUFFER(_buffer, _i, _field_dim, _type, _chars_per_site) |
#define | _GET_SEND_BUFFER(_buffer, _i, _field_dim, _type, _chars_per_site) |
#define | _BUFFER_FOR(_i, _nbuffers) |
#define | roundUp(_val, _mod) |
Functions | |
void | communicate (comms_args *l) |
void * | wait_for_signal (void *argv) |
void | signal () |
int | spawn_threads () |
void | hr_sendrecv_complete (int nreq, MPI_Request *field_reqs) |
void | init_hr_comms () |
void | finalize_hr_comms () |
void | hr_sendrecv (void *sendbuffer, void *recvbuffer, geometry_descriptor *type, MPI_Datatype mpi_real_type, int field_dim, int size_of_real, int mpi_chunks_per_site, int nbuffers, MPI_Request *field_reqs) |
Variables | |
pthread_t | thread [1] |
pthread_mutex_t | mutex = PTHREAD_MUTEX_INITIALIZER |
pthread_cond_t | cond = PTHREAD_COND_INITIALIZER |
pthread_barrier_t | barrier |
Abstracted sendrecv of buffers of given fields.
#define _BUFFER_FOR | ( | _i, | |
_nbuffers ) |
#define _GET_RECV_BUFFER | ( | _buffer, | |
_i, | |||
_field_dim, | |||
_type, | |||
_chars_per_site ) |
#define _GET_SEND_BUFFER | ( | _buffer, | |
_i, | |||
_field_dim, | |||
_type, | |||
_chars_per_site ) |
#define roundUp | ( | _val, | |
_mod ) |