| Cyclops Tensor Framework
    parallel arithmetic on multidimensional arrays | 
#include <spctr_tsr.h>


| Public Member Functions | |
| ~spctr () | |
| spctr (spctr *other) | |
| virtual spctr * | clone () | 
| virtual double | est_time_fp (int nlyr, double nnz_frac_A, double nnz_frac_B, double nnz_frac_C) | 
| returns the execution time the local part this kernel is estimated to take  More... | |
| double | est_time_fp (int nlyr) | 
| virtual double | est_time_rec (int nlyr, double nnz_frac_A, double nnz_frac_B, double nnz_frac_C) | 
| returns the execution time this kernel and its recursive calls are estimated to take  More... | |
| double | est_time_rec (int nlyr) | 
| virtual int64_t | spmem_rec (double nnz_frac_A, double nnz_frac_B, double nnz_frac_C) | 
| returns the number of bytes need by each processor in this kernel and its recursive calls  More... | |
| void | run (char *A, char *B, char *C) | 
| virtual void | run (char *A, int nblk_A, int64_t const *size_blk_A, char *B, int nblk_B, int64_t const *size_blk_B, char *C, int nblk_C, int64_t *size_blk_C, char *&new_C) | 
| spctr (contraction const *c) | |
|  Public Member Functions inherited from CTF_int::ctr | |
| virtual void | print () | 
| virtual int64_t | mem_fp () | 
| virtual int64_t | mem_rec () | 
| 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 | |
| bool | is_sparse_A | 
| bool | is_sparse_B | 
| bool | is_sparse_C | 
| char * | new_C | 
|  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 | 
Definition at line 10 of file spctr_tsr.h.
| CTF_int::spctr::~spctr | ( | ) | 
Definition at line 27 of file spctr_tsr.cxx.
| CTF_int::spctr::spctr | ( | spctr * | other | ) | 
Definition at line 20 of file spctr_tsr.cxx.
References is_sparse_A, is_sparse_B, and is_sparse_C.
Referenced by run().
| CTF_int::spctr::spctr | ( | contraction const * | c | ) | 
Definition at line 13 of file spctr_tsr.cxx.
References CTF_int::contraction::A, CTF_int::contraction::B, CTF_int::contraction::C, CTF_int::tensor::is_sparse, is_sparse_A, is_sparse_B, and is_sparse_C.
| 
 | inlinevirtual | 
Reimplemented from CTF_int::ctr.
Reimplemented in CTF_int::spctr_pin_keys, CTF_int::spctr_virt, CTF_int::spctr_2d_general, CTF_int::seq_tsr_spctr, and CTF_int::spctr_replicate.
Definition at line 19 of file spctr_tsr.h.
Referenced by CTF_int::spctr_virt::run(), CTF_int::spctr_2d_general::spctr_2d_general(), CTF_int::spctr_pin_keys::spctr_pin_keys(), CTF_int::spctr_replicate::spctr_replicate(), and CTF_int::spctr_virt::spctr_virt().
| 
 | inlinevirtual | 
returns the execution time the local part this kernel is estimated to take
| [in] | nlyr | amount of replication | 
| [in] | nnz_frac_A | percentage of nonzeros in tensor A | 
| [in] | nnz_frac_B | percentage of nonzeros in tensor B | 
| [in] | nnz_frac_C | percentage of nonzeros in tensor C | 
Reimplemented in CTF_int::spctr_pin_keys, CTF_int::spctr_2d_general, CTF_int::seq_tsr_spctr, and CTF_int::spctr_replicate.
Definition at line 29 of file spctr_tsr.h.
| 
 | inlinevirtual | 
Reimplemented from CTF_int::ctr.
Definition at line 30 of file spctr_tsr.h.
References est_time_fp().
Referenced by est_time_fp().
| 
 | inlinevirtual | 
returns the execution time this kernel and its recursive calls are estimated to take
| [in] | nlyr | amount of replication | 
| [in] | nnz_frac_A | percentage of nonzeros in tensor A | 
| [in] | nnz_frac_B | percentage of nonzeros in tensor B | 
| [in] | nnz_frac_C | percentage of nonzeros in tensor C | 
Reimplemented in CTF_int::spctr_pin_keys, CTF_int::spctr_virt, CTF_int::spctr_2d_general, CTF_int::seq_tsr_spctr, and CTF_int::spctr_replicate.
Definition at line 39 of file spctr_tsr.h.
Referenced by CTF_int::spctr_replicate::est_time_rec(), CTF_int::spctr_2d_general::est_time_rec(), CTF_int::spctr_virt::est_time_rec(), and CTF_int::spctr_pin_keys::est_time_rec().
| 
 | inlinevirtual | 
Reimplemented from CTF_int::ctr.
Definition at line 40 of file spctr_tsr.h.
References est_time_rec().
Referenced by est_time_rec().
| 
 | inlinevirtual | 
Reimplemented from CTF_int::ctr.
Definition at line 48 of file spctr_tsr.h.
Referenced by CTF_int::spctr_replicate::run(), CTF_int::spctr_2d_general::run(), CTF_int::spctr_virt::run(), and CTF_int::spctr_pin_keys::run().
| 
 | inlinevirtual | 
Reimplemented in CTF_int::spctr_pin_keys, CTF_int::spctr_virt, CTF_int::spctr_2d_general, CTF_int::seq_tsr_spctr, and CTF_int::spctr_replicate.
Definition at line 49 of file spctr_tsr.h.
| 
 | inlinevirtual | 
returns the number of bytes need by each processor in this kernel and its recursive calls
Reimplemented in CTF_int::spctr_pin_keys, CTF_int::spctr_virt, CTF_int::spctr_2d_general, and CTF_int::spctr_replicate.
Definition at line 45 of file spctr_tsr.h.
Referenced by CTF_int::spctr_replicate::spmem_rec(), CTF_int::spctr_2d_general::spmem_rec(), CTF_int::spctr_virt::spmem_rec(), and CTF_int::spctr_pin_keys::spmem_rec().
| bool CTF_int::spctr::is_sparse_A | 
Definition at line 12 of file spctr_tsr.h.
Referenced by CTF_int::seq_tsr_spctr::est_fp(), CTF_int::seq_tsr_spctr::est_membw(), CTF_int::spctr_replicate::est_time_fp(), CTF_int::spctr_2d_general::est_time_fp(), CTF_int::spctr_replicate::run(), CTF_int::seq_tsr_spctr::run(), CTF_int::spctr_2d_general::run(), CTF_int::spctr_virt::run(), spctr(), CTF_int::spctr_replicate::spmem_fp(), and CTF_int::spctr_2d_general::spmem_fp().
| bool CTF_int::spctr::is_sparse_B | 
Definition at line 13 of file spctr_tsr.h.
Referenced by CTF_int::seq_tsr_spctr::est_fp(), CTF_int::seq_tsr_spctr::est_membw(), CTF_int::spctr_replicate::est_time_fp(), CTF_int::spctr_2d_general::est_time_fp(), CTF_int::spctr_replicate::run(), CTF_int::seq_tsr_spctr::run(), CTF_int::spctr_2d_general::run(), CTF_int::spctr_virt::run(), spctr(), CTF_int::spctr_replicate::spmem_fp(), and CTF_int::spctr_2d_general::spmem_fp().
| bool CTF_int::spctr::is_sparse_C | 
Definition at line 14 of file spctr_tsr.h.
Referenced by CTF_int::seq_tsr_spctr::est_membw(), CTF_int::spctr_replicate::est_time_fp(), CTF_int::spctr_2d_general::est_time_fp(), CTF_int::spctr_replicate::run(), CTF_int::seq_tsr_spctr::run(), CTF_int::spctr_2d_general::run(), CTF_int::spctr_virt::run(), spctr(), CTF_int::spctr_replicate::spmem_fp(), and CTF_int::spctr_2d_general::spmem_fp().
| char* CTF_int::spctr::new_C | 
Definition at line 15 of file spctr_tsr.h.
Referenced by CTF_int::seq_tsr_spctr::run().