Cyclops Tensor Framework
parallel arithmetic on multidimensional arrays
dgtog_calc_cnt.h File Reference
#include "../tensor/algstrct.h"
#include "../mapping/distribution.h"
#include "redist.h"
Include dependency graph for dgtog_calc_cnt.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

 CTF_int
 

Functions

template<int idim>
int64_t CTF_int::calc_cnt (int const *sym, int const *rep_phase, int const *sphase, int const *gidx_off, int const *edge_len, int const *loc_edge_len)
 computes the cardinality of the set of elements of a tensor of order idim+1 that are owned by processor index gidx_off in a distribution with dimensions sphase More...
 
template<int idim>
int64_t * CTF_int::calc_sy_pfx (int const *sym, int const *rep_phase, int const *sphase, int const *gidx_off, int const *edge_len, int const *loc_edge_len)
 computes the cardinality of the sets of elements of a tensor of order idim+1 for different values of the idim'th tensor dimension More...
 
template<int idim>
void CTF_int::calc_drv_cnts (int order, int const *sym, int64_t *counts, int const *rep_phase, int const *rep_phase_lda, int const *sphase, int const *phys_phase, int *gidx_off, int const *edge_len, int const *loc_edge_len)
 
void CTF_int::calc_drv_displs (int const *sym, int const *edge_len, distribution const &old_dist, distribution const &new_dist, int64_t *counts, int idx_lyr)
 
template<int idim>
void CTF_int::calc_cnt_from_rep_cnt (int const *rep_phase, int *const *pe_offset, int *const *bucket_offset, int64_t const *old_counts, int64_t *counts, int bucket_off, int pe_off, int dir)
 
void CTF_int::precompute_offsets (distribution const &old_dist, distribution const &new_dist, int const *sym, int const *len, int const *rep_phase, int const *phys_edge_len, int const *virt_edge_len, int const *virt_dim, int const *virt_lda, int64_t virt_nelem, int **pe_offset, int **bucket_offset, int64_t **data_offset, int **ivmax_pre)
 
template<int idim>
void CTF_int::redist_bucket (int *const *bucket_offset, int64_t *const *data_offset, int *const *ivmax_pre, int rep_phase0, 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)