Cyclops Tensor Framework
parallel arithmetic on multidimensional arrays
CTF_int::ctr_replicate Class Reference

#include <ctr_comm.h>

Inheritance diagram for CTF_int::ctr_replicate:
Collaboration diagram for CTF_int::ctr_replicate:

Public Member Functions

void run (char *A, char *B, char *C)
 
int64_t mem_fp ()
 returns the number of bytes of buffer space we need More...
 
int64_t mem_rec ()
 returns the number of bytes need by each processor in this kernel and its recursive calls More...
 
double est_time_fp (int nlyr)
 returns the execution time the local part this kernel is estimated to take More...
 
double est_time_rec (int nlyr)
 returns the execution time this kernel and its recursive calls are estimated to take More...
 
void print ()
 
ctrclone ()
 
 ctr_replicate (ctr *other)
 
 ~ctr_replicate ()
 
 ctr_replicate (contraction const *c, int const *phys_mapped, int64_t blk_sz_A, int64_t blk_sz_B, int64_t blk_sz_C)
 
- Public Member Functions inherited from CTF_int::ctr
virtual ~ctr ()
 deallocates generic ctr object More...
 
 ctr (ctr *other)
 copies generic ctr object More...
 
 ctr (contraction const *c)
 main constructor, defines variable based on contraction class More...
 

Data Fields

int ncdt_A
 
int ncdt_B
 
int ncdt_C
 
int64_t size_A
 
int64_t size_B
 
int64_t size_C
 
CommData ** cdt_A
 
CommData ** cdt_B
 
CommData ** cdt_C
 
ctrrec_ctr
 
- Data Fields inherited from CTF_int::ctr
algstrct const * sr_A
 
algstrct const * sr_B
 
algstrct const * sr_C
 
char const * beta
 
int num_lyr
 
int idx_lyr
 

Detailed Description

Definition at line 198 of file ctr_comm.h.

Constructor & Destructor Documentation

CTF_int::ctr_replicate::ctr_replicate ( ctr other)

Definition at line 137 of file ctr_comm.cxx.

References CTF_int::ctr::clone(), ncdt_A, ncdt_B, ncdt_C, rec_ctr, size_A, size_B, and size_C.

Referenced by clone().

CTF_int::ctr_replicate::~ctr_replicate ( )

Definition at line 118 of file ctr_comm.cxx.

References CTF_int::cdealloc(), cdt_A, cdt_B, cdt_C, ncdt_A, ncdt_B, ncdt_C, and rec_ctr.

CTF_int::ctr_replicate::ctr_replicate ( contraction const *  c,
int const *  phys_mapped,
int64_t  blk_sz_A,
int64_t  blk_sz_B,
int64_t  blk_sz_C 
)

Member Function Documentation

ctr * CTF_int::ctr_replicate::clone ( )
virtual

Reimplemented from CTF_int::ctr.

Definition at line 148 of file ctr_comm.cxx.

References ctr_replicate().

double CTF_int::ctr_replicate::est_time_fp ( int  nlyr)
virtual

returns the execution time the local part this kernel is estimated to take

Returns
time in sec

Reimplemented from CTF_int::ctr.

Definition at line 173 of file ctr_comm.cxx.

References CTF_int::algstrct::addmop(), ASSERT, cdt_A, cdt_B, cdt_C, CTF_int::accumulatable::el_size, CTF_int::CommData::estimate_bcast_time(), CTF_int::CommData::estimate_red_time(), ncdt_A, ncdt_B, ncdt_C, ctf.core::np(), size_A, size_B, size_C, CTF_int::ctr::sr_A, CTF_int::ctr::sr_B, and CTF_int::ctr::sr_C.

Referenced by est_time_rec().

double CTF_int::ctr_replicate::est_time_rec ( int  nlyr)
virtual

returns the execution time this kernel and its recursive calls are estimated to take

Returns
time in sec

Reimplemented from CTF_int::ctr.

Definition at line 192 of file ctr_comm.cxx.

References est_time_fp(), CTF_int::ctr::est_time_rec(), and rec_ctr.

int64_t CTF_int::ctr_replicate::mem_fp ( )
virtual

returns the number of bytes of buffer space we need

Returns
bytes needed

Reimplemented from CTF_int::ctr.

Definition at line 196 of file ctr_comm.cxx.

Referenced by mem_rec().

int64_t CTF_int::ctr_replicate::mem_rec ( )
virtual

returns the number of bytes need by each processor in this kernel and its recursive calls

Returns
bytes needed for recursive contraction

Reimplemented from CTF_int::ctr.

Definition at line 200 of file ctr_comm.cxx.

References mem_fp(), CTF_int::ctr::mem_rec(), and rec_ctr.

void CTF_int::ctr_replicate::print ( )
virtual

Reimplemented from CTF_int::ctr.

Definition at line 152 of file ctr_comm.cxx.

References cdt_A, cdt_B, cdt_C, ncdt_A, ncdt_B, ncdt_C, ctf.core::np(), CTF_int::ctr::print(), rec_ctr, size_A, size_B, and size_C.

Field Documentation

CommData** CTF_int::ctr_replicate::cdt_A

Definition at line 207 of file ctr_comm.h.

Referenced by ctr_replicate(), est_time_fp(), print(), run(), and ~ctr_replicate().

CommData** CTF_int::ctr_replicate::cdt_B

Definition at line 208 of file ctr_comm.h.

Referenced by ctr_replicate(), est_time_fp(), print(), run(), and ~ctr_replicate().

CommData** CTF_int::ctr_replicate::cdt_C

Definition at line 209 of file ctr_comm.h.

Referenced by ctr_replicate(), est_time_fp(), print(), run(), and ~ctr_replicate().

int CTF_int::ctr_replicate::ncdt_A

Definition at line 200 of file ctr_comm.h.

Referenced by ctr_replicate(), est_time_fp(), print(), run(), and ~ctr_replicate().

int CTF_int::ctr_replicate::ncdt_B

Definition at line 201 of file ctr_comm.h.

Referenced by ctr_replicate(), est_time_fp(), print(), run(), and ~ctr_replicate().

int CTF_int::ctr_replicate::ncdt_C

Definition at line 202 of file ctr_comm.h.

Referenced by ctr_replicate(), est_time_fp(), print(), run(), and ~ctr_replicate().

ctr* CTF_int::ctr_replicate::rec_ctr
int64_t CTF_int::ctr_replicate::size_A

Definition at line 203 of file ctr_comm.h.

Referenced by ctr_replicate(), est_time_fp(), print(), and run().

int64_t CTF_int::ctr_replicate::size_B

Definition at line 204 of file ctr_comm.h.

Referenced by ctr_replicate(), est_time_fp(), print(), and run().

int64_t CTF_int::ctr_replicate::size_C

Definition at line 205 of file ctr_comm.h.

Referenced by ctr_replicate(), est_time_fp(), print(), and run().


The documentation for this class was generated from the following files: