Go to the documentation of this file.
19 #if !defined escript_Taipan_20050427_H
20 #define escript_Taipan_20050427_H
48 typedef long size_type;
90 new_array(size_type dim, size_type
N);
99 delete_array(
double* array);
107 release_unused_arrays();
121 num_arrays(size_type
N);
128 num_free(size_type
N);
157 void operator=(
const Taipan& c){}
159 typedef struct Taipan_StatTable {
164 long allocated_elements;
165 long deallocated_elements;
169 Taipan_StatTable* statTable;
171 typedef struct Taipan_MemTable {
177 struct Taipan_MemTable* next;
180 Taipan_MemTable* memTable_Root;
#define ESCRIPT_DLL_API
Definition: escriptcore/src/system_dep.h:30
static dim_t N
Definition: SparseMatrix_saveHB.cpp:52
int frees
Definition: Taipan.h:189
struct Taipan_MemTable * next
Definition: Taipan.h:205
long totalElements
Definition: Taipan.h:210
struct escript::Taipan::Taipan_MemTable Taipan_MemTable
boost::shared_ptr< Distribution > Distribution_ptr
Definition: Distribution.h:39
int num_arrays()
Calculate the total number of arrays currently under management.
Definition: Taipan.cpp:275
Connector_ptr col_connector
Definition: SystemMatrixPattern.h:81
Taipan_MemTable * memTable_Root
Definition: Taipan.h:208
boost::shared_ptr< SystemMatrixPattern > SystemMatrixPattern_ptr
Definition: SystemMatrixPattern.h:54
SystemMatrixPattern(int type, escript::Distribution_ptr output_distribution, escript::Distribution_ptr input_distribution, Pattern_ptr mainPattern, Pattern_ptr col_couplePattern, Pattern_ptr row_couplePattern, Connector_ptr col_connector, Connector_ptr row_connector)
Definition: SystemMatrixPattern.cpp:48
int deallocations
Definition: Taipan.h:191
long allocated_elements
Definition: Taipan.h:192
escript::Distribution_ptr output_distribution
Definition: SystemMatrixPattern.h:83
double * array
Definition: Taipan.h:200
#define MATRIX_FORMAT_OFFSET1
Definition: Paso.h:65
Definition: Distribution.h:46
Connector_ptr row_connector
Definition: SystemMatrixPattern.h:82
void clear_stats()
Clear record of statistics on the memory under management.
Definition: Taipan.cpp:368
int type
Definition: SystemMatrixPattern.h:76
int requests
Definition: Taipan.h:188
long size_type
Definition: Taipan.h:76
Taipan_StatTable * statTable
Definition: Taipan.h:197
size_type dim
Definition: Taipan.h:201
index_t dim_t
Definition: DataTypes.h:93
struct escript::Taipan::Taipan_StatTable Taipan_StatTable
~Taipan()
Default destructor for Taipan data-array manager.
Definition: Taipan.cpp:41
escript::Distribution_ptr input_distribution
Definition: SystemMatrixPattern.h:84
int numThreads
Definition: Taipan.h:203
int num_free(size_type N)
Calculate the total number of free arrays of N blocks currently under management.
Definition: Taipan.cpp:315
double * new_array(size_type dim, size_type N)
Taipan data-array allocator.
Definition: Taipan.cpp:105
void dump_stats()
Print out statistics on the memory under management.
Definition: Taipan.cpp:345
void delete_array(double *array)
Taipan data-array deallocator.
Definition: Taipan.cpp:192
int allocations
Definition: Taipan.h:190
long max_tab_size
Definition: Taipan.h:194
Definition: AbstractContinuousDomain.cpp:23
Pattern_ptr row_couplePattern
Definition: SystemMatrixPattern.h:80
size_type N
Definition: Taipan.h:202
SystemMatrixPattern_ptr unrollBlocks(int type, dim_t output_block_size, dim_t input_block_size)
Definition: SystemMatrixPattern_unrollBlocks.cpp:47
long deallocated_elements
Definition: Taipan.h:193
bool free
Definition: Taipan.h:204
Pattern_ptr col_couplePattern
Definition: SystemMatrixPattern.h:79
boost::shared_ptr< Connector > Connector_ptr
Definition: Coupler.h:52
boost::shared_ptr< Pattern > Pattern_ptr
Definition: Pattern.h:52
long num_elements()
Return the total number of array elements currently under management.
Definition: Taipan.cpp:337
Definition: BiCGStab.cpp:26
void release_unused_arrays()
frees all arrays that are currently unused.
Definition: Taipan.cpp:74
Pattern_ptr mainPattern
Definition: SystemMatrixPattern.h:78