Cyclops Tensor Framework
parallel arithmetic on multidimensional arrays
dgtog_redist.cxx File Reference
#include "dgtog_calc_cnt.h"
#include "dgtog_redist.h"
#include "../shared/util.h"
#include "dgtog_bucket.h"
#include "dgtog_redist_ror.h"
Include dependency graph for dgtog_redist.cxx:

Go to the source code of this file.

Namespaces

 CTF_int
 
 CTF_redist_noror
 
 CTF_redist_ror
 
 CTF_redist_ror_isr
 
 CTF_redist_ror_put
 
 CTF_redist_ror_isr_any
 

Macros

#define MTAG   777
 
#define ROR
 
#define ROR
 
#define IREDIST
 
#define ROR
 
#define PUTREDIST
 
#define ROR
 
#define IREDIST
 
#define WAITANY
 

Typedefs

typedef MPI_Request CTF_redist_noror::CTF_Request
 
typedef MPI_Request CTF_redist_ror::CTF_Request
 
typedef MPI_Request CTF_redist_ror_isr::CTF_Request
 
typedef MPI_Request CTF_redist_ror_put::CTF_Request
 
typedef MPI_Request CTF_redist_ror_isr_any::CTF_Request
 

Functions

double CTF_int::dgtog_est_time (int64_t tot_sz, int np)
 estimates execution time, given this processor sends a receives tot_sz across np procs More...
 
template<int idim>
void CTF_redist_noror::isendrecv (int *const *pe_offset, int *const *bucket_offset, int const *rep_phase, int64_t const *counts, int64_t const *displs, CTF_Request *reqs, MPI_Comm cm, char *buffer, algstrct const *sr, int bucket_off, int pe_off, int dir)
 
template<>
void CTF_redist_noror::isendrecv< 0 > (int *const *pe_offset, int *const *bucket_offset, int const *rep_phase, int64_t const *counts, int64_t const *displs, CTF_Request *reqs, MPI_Comm cm, char *buffer, algstrct const *sr, int bucket_off, int pe_off, int dir)
 
void CTF_redist_noror::dgtog_reshuffle (int const *sym, int const *edge_len, distribution const &old_dist, distribution const &new_dist, char **ptr_tsr_data, char **ptr_tsr_new_data, algstrct const *sr, CommData ord_glb_comm)
 
template<int idim>
void CTF_redist_ror::isendrecv (int *const *pe_offset, int *const *bucket_offset, int const *rep_phase, int64_t const *counts, int64_t const *displs, CTF_Request *reqs, MPI_Comm cm, char *buffer, algstrct const *sr, int bucket_off, int pe_off, int dir)
 
template<>
void CTF_redist_ror::isendrecv< 0 > (int *const *pe_offset, int *const *bucket_offset, int const *rep_phase, int64_t const *counts, int64_t const *displs, CTF_Request *reqs, MPI_Comm cm, char *buffer, algstrct const *sr, int bucket_off, int pe_off, int dir)
 
template<int idim>
void CTF_redist_ror::redist_bucket_ror (int *const *bucket_offset, int64_t *const *data_offset, int *const *ivmax_pre, int const *rep_phase, int const *rep_idx, int virt_dim0, bool data_to_buckets, char *__restrict__ data, char **__restrict__ buckets, int64_t *counts, algstrct const *sr, int64_t data_off=0, int bucket_off=0, int prev_idx=0)
 
template<>
void CTF_redist_ror::redist_bucket_ror< 0 > (int *const *bucket_offset, int64_t *const *data_offset, int *const *ivmax_pre, int const *rep_phase, int const *rep_idx, int virt_dim0, bool data_to_buckets, char *__restrict__ data, char **__restrict__ buckets, int64_t *counts, algstrct const *sr, int64_t data_off, int bucket_off, int prev_idx)
 
template<int idim>
void CTF_redist_ror::redist_bucket_isr (int order, int *const *pe_offset, int *const *bucket_offset, int64_t *const *data_offset, int *const *ivmax_pre, int const *rep_phase, int *rep_idx, int virt_dim0, bool data_to_buckets, char *__restrict__ data, char **__restrict__ buckets, int64_t *counts, algstrct const *sr, int bucket_off=0, int pe_off=0)
 
template<>
void CTF_redist_ror::redist_bucket_isr< 0 > (int order, int *const *pe_offset, int *const *bucket_offset, int64_t *const *data_offset, int *const *ivmax_pre, int const *rep_phase, int *rep_idx, int virt_dim0, bool data_to_buckets, char *__restrict__ data, char **__restrict__ buckets, int64_t *counts, algstrct const *sr, int bucket_off, int pe_off)
 
void CTF_redist_ror::dgtog_reshuffle (int const *sym, int const *edge_len, distribution const &old_dist, distribution const &new_dist, char **ptr_tsr_data, char **ptr_tsr_new_data, algstrct const *sr, CommData ord_glb_comm)
 
template<int idim>
void CTF_redist_ror_isr::isendrecv (int *const *pe_offset, int *const *bucket_offset, int const *rep_phase, int64_t const *counts, int64_t const *displs, CTF_Request *reqs, MPI_Comm cm, char *buffer, algstrct const *sr, int bucket_off, int pe_off, int dir)
 
template<>
void CTF_redist_ror_isr::isendrecv< 0 > (int *const *pe_offset, int *const *bucket_offset, int const *rep_phase, int64_t const *counts, int64_t const *displs, CTF_Request *reqs, MPI_Comm cm, char *buffer, algstrct const *sr, int bucket_off, int pe_off, int dir)
 
template<int idim>
void CTF_redist_ror_isr::redist_bucket_ror (int *const *bucket_offset, int64_t *const *data_offset, int *const *ivmax_pre, int const *rep_phase, int const *rep_idx, int virt_dim0, bool data_to_buckets, char *__restrict__ data, char **__restrict__ buckets, int64_t *counts, algstrct const *sr, int64_t data_off=0, int bucket_off=0, int prev_idx=0)
 
template<>
void CTF_redist_ror_isr::redist_bucket_ror< 0 > (int *const *bucket_offset, int64_t *const *data_offset, int *const *ivmax_pre, int const *rep_phase, int const *rep_idx, int virt_dim0, bool data_to_buckets, char *__restrict__ data, char **__restrict__ buckets, int64_t *counts, algstrct const *sr, int64_t data_off, int bucket_off, int prev_idx)
 
template<int idim>
void CTF_redist_ror_isr::redist_bucket_isr (int order, int *const *pe_offset, int *const *bucket_offset, int64_t *const *data_offset, int *const *ivmax_pre, int const *rep_phase, int *rep_idx, int virt_dim0, CTF_Request *rep_reqs, MPI_Comm cm, bool data_to_buckets, char *__restrict__ data, char **__restrict__ buckets, int64_t *counts, algstrct const *sr, int bucket_off=0, int pe_off=0)
 
template<>
void CTF_redist_ror_isr::redist_bucket_isr< 0 > (int order, int *const *pe_offset, int *const *bucket_offset, int64_t *const *data_offset, int *const *ivmax_pre, int const *rep_phase, int *rep_idx, int virt_dim0, CTF_Request *rep_reqs, MPI_Comm cm, bool data_to_buckets, char *__restrict__ data, char **__restrict__ buckets, int64_t *counts, algstrct const *sr, int bucket_off, int pe_off)
 
void CTF_redist_ror_isr::dgtog_reshuffle (int const *sym, int const *edge_len, distribution const &old_dist, distribution const &new_dist, char **ptr_tsr_data, char **ptr_tsr_new_data, algstrct const *sr, CommData ord_glb_comm)
 
template<int idim>
void CTF_redist_ror_put::isendrecv (int *const *pe_offset, int *const *bucket_offset, int const *rep_phase, int64_t const *counts, int64_t const *displs, CTF_Request *reqs, MPI_Comm cm, char *buffer, algstrct const *sr, int bucket_off, int pe_off, int dir)
 
template<>
void CTF_redist_ror_put::isendrecv< 0 > (int *const *pe_offset, int *const *bucket_offset, int const *rep_phase, int64_t const *counts, int64_t const *displs, CTF_Request *reqs, MPI_Comm cm, char *buffer, algstrct const *sr, int bucket_off, int pe_off, int dir)
 
template<int idim>
void CTF_redist_ror_put::redist_bucket_ror (int *const *bucket_offset, int64_t *const *data_offset, int *const *ivmax_pre, int const *rep_phase, int const *rep_idx, int virt_dim0, bool data_to_buckets, char *__restrict__ data, char **__restrict__ buckets, int64_t *counts, algstrct const *sr, int64_t data_off=0, int bucket_off=0, int prev_idx=0)
 
template<>
void CTF_redist_ror_put::redist_bucket_ror< 0 > (int *const *bucket_offset, int64_t *const *data_offset, int *const *ivmax_pre, int const *rep_phase, int const *rep_idx, int virt_dim0, bool data_to_buckets, char *__restrict__ data, char **__restrict__ buckets, int64_t *counts, algstrct const *sr, int64_t data_off, int bucket_off, int prev_idx)
 
template<int idim>
void CTF_redist_ror_put::put_buckets (int const *rep_phase, int *const *pe_offset, int *const *bucket_offset, char *const *__restrict__ buckets, int64_t const *counts, algstrct const *sr, int64_t const *put_displs, CTF_Win &win, int bucket_off, int pe_off)
 
template<>
void CTF_redist_ror_put::put_buckets< 0 > (int const *rep_phase, int *const *pe_offset, int *const *bucket_offset, char *const *__restrict__ buckets, int64_t const *counts, algstrct const *sr, int64_t const *put_displs, CTF_Win &win, int bucket_off, int pe_off)
 
template<int idim>
void CTF_redist_ror_put::redist_bucket_isr (int order, int *const *pe_offset, int *const *bucket_offset, int64_t *const *data_offset, int *const *ivmax_pre, int const *rep_phase, int *rep_idx, int virt_dim0, int64_t const *put_displs, CTF_Win &win, bool data_to_buckets, char *__restrict__ data, char **__restrict__ buckets, int64_t *counts, algstrct const *sr, int bucket_off=0, int pe_off=0)
 
template<>
void CTF_redist_ror_put::redist_bucket_isr< 0 > (int order, int *const *pe_offset, int *const *bucket_offset, int64_t *const *data_offset, int *const *ivmax_pre, int const *rep_phase, int *rep_idx, int virt_dim0, int64_t const *put_displs, CTF_Win &win, bool data_to_buckets, char *__restrict__ data, char **__restrict__ buckets, int64_t *counts, algstrct const *sr, int bucket_off, int pe_off)
 
void CTF_redist_ror_put::dgtog_reshuffle (int const *sym, int const *edge_len, distribution const &old_dist, distribution const &new_dist, char **ptr_tsr_data, char **ptr_tsr_new_data, algstrct const *sr, CommData ord_glb_comm)
 
template<int idim>
void CTF_redist_ror_isr_any::isendrecv (int *const *pe_offset, int *const *bucket_offset, int const *rep_phase, int64_t const *counts, int64_t const *displs, CTF_Request *reqs, MPI_Comm cm, char *buffer, algstrct const *sr, int bucket_off, int pe_off, int dir)
 
template<>
void CTF_redist_ror_isr_any::isendrecv< 0 > (int *const *pe_offset, int *const *bucket_offset, int const *rep_phase, int64_t const *counts, int64_t const *displs, CTF_Request *reqs, MPI_Comm cm, char *buffer, algstrct const *sr, int bucket_off, int pe_off, int dir)
 
template<int idim>
void CTF_redist_ror_isr_any::redist_bucket_ror (int *const *bucket_offset, int64_t *const *data_offset, int *const *ivmax_pre, int const *rep_phase, int const *rep_idx, int virt_dim0, bool data_to_buckets, char *__restrict__ data, char **__restrict__ buckets, int64_t *counts, algstrct const *sr, int64_t data_off=0, int bucket_off=0, int prev_idx=0)
 
template<>
void CTF_redist_ror_isr_any::redist_bucket_ror< 0 > (int *const *bucket_offset, int64_t *const *data_offset, int *const *ivmax_pre, int const *rep_phase, int const *rep_idx, int virt_dim0, bool data_to_buckets, char *__restrict__ data, char **__restrict__ buckets, int64_t *counts, algstrct const *sr, int64_t data_off, int bucket_off, int prev_idx)
 
template<int idim>
void CTF_redist_ror_isr_any::redist_bucket_isr (int order, int *const *pe_offset, int *const *bucket_offset, int64_t *const *data_offset, int *const *ivmax_pre, int const *rep_phase, int *rep_idx, int virt_dim0, CTF_Request *rep_reqs, MPI_Comm cm, bool data_to_buckets, char *__restrict__ data, char **__restrict__ buckets, int64_t *counts, algstrct const *sr, int bucket_off=0, int pe_off=0)
 
template<>
void CTF_redist_ror_isr_any::redist_bucket_isr< 0 > (int order, int *const *pe_offset, int *const *bucket_offset, int64_t *const *data_offset, int *const *ivmax_pre, int const *rep_phase, int *rep_idx, int virt_dim0, CTF_Request *rep_reqs, MPI_Comm cm, bool data_to_buckets, char *__restrict__ data, char **__restrict__ buckets, int64_t *counts, algstrct const *sr, int bucket_off, int pe_off)
 
void CTF_redist_ror_isr_any::dgtog_reshuffle (int const *sym, int const *edge_len, distribution const &old_dist, distribution const &new_dist, char **ptr_tsr_data, char **ptr_tsr_new_data, algstrct const *sr, CommData ord_glb_comm)
 
void CTF_int::dgtog_reshuffle (int const *sym, int const *edge_len, distribution const &old_dist, distribution const &new_dist, char **ptr_tsr_data, char **ptr_tsr_new_data, algstrct const *sr, CommData ord_glb_comm)
 

Variables

LinModel< 3 > CTF_int::dgtog_res_mdl (dgtog_res_mdl_init,"dgtog_res_mdl")
 

Macro Definition Documentation

#define IREDIST

Definition at line 46 of file dgtog_redist.cxx.

Referenced by dgtog_reshuffle(), and isendrecv< 0 >().

#define IREDIST

Definition at line 46 of file dgtog_redist.cxx.

#define MTAG   777

Definition at line 17 of file dgtog_redist.cxx.

Referenced by isendrecv< 0 >().

#define PUTREDIST

Definition at line 38 of file dgtog_redist.cxx.

Referenced by dgtog_reshuffle(), and isendrecv< 0 >().

#define ROR

Definition at line 45 of file dgtog_redist.cxx.

#define ROR

Definition at line 45 of file dgtog_redist.cxx.

#define ROR

Definition at line 45 of file dgtog_redist.cxx.

#define ROR

Definition at line 45 of file dgtog_redist.cxx.

#define WAITANY

Definition at line 47 of file dgtog_redist.cxx.