SpikeGPU  1.0.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
spike::Stats Struct Reference

Output solver statistics. More...

#include <solver.h>

Public Member Functions

 Stats ()
 

Public Attributes

double timeSetup
 
double timeUpdate
 
double timeSolve
 
double time_reorder
 
double time_cpu_assemble
 
double time_transfer
 
double time_toBanded
 
double time_offDiags
 
double time_bandLU
 
double time_bandUL
 
double time_fullLU
 
double time_assembly
 
double time_shuffle
 
int bandwidthReorder
 
int bandwidthMC64
 
int bandwidth
 
int numPartitions
 
double actualDropOff
 
float numIterations
 
double residualNorm
 
double relResidualNorm
 

Detailed Description

Output solver statistics.

This structure encapsulates all solver statistics, both from the iterative solver and the preconditioner.

Constructor & Destructor Documentation

spike::Stats::Stats ( )
inline

This is the constructor for the Stats class. It initializes all timing and performance measures.

Member Data Documentation

double spike::Stats::actualDropOff

Actual fraction of the element-wise matrix 1-norm dropped off.

int spike::Stats::bandwidth

Half-bandwidth after reordering and drop-off.

int spike::Stats::bandwidthMC64

Half-bandwidth after MC64.

int spike::Stats::bandwidthReorder

Half-bandwidth after reordering.

float spike::Stats::numIterations

Number of iterations required for iterative solver to converge.

int spike::Stats::numPartitions

Actual number of partitions used in the Spike factorization

double spike::Stats::relResidualNorm

Final relative residual norm (i.e. ||b-Ax||_2 / ||b||_2)

double spike::Stats::residualNorm

Final residual norm (i.e. ||b-Ax||_2).

double spike::Stats::time_assembly

Time for assembling off-diagonal matrices (including solving multiple RHS)

double spike::Stats::time_bandLU

Time for LU factorization of diagonal blocks.

double spike::Stats::time_bandUL

Time for UL factorization of diagonal blocks(in LU_UL method only).

double spike::Stats::time_cpu_assemble

Time on CPU to assemble the banded matrix and off-diagonal spikes.

double spike::Stats::time_fullLU

Time for LU factorization of the reduced matrix R.

double spike::Stats::time_offDiags

Time to compute off-diagonal spike matrices on GPU.

double spike::Stats::time_reorder

Time to do reordering.

double spike::Stats::time_shuffle

Total time to do vector reordering and scaling.

double spike::Stats::time_toBanded

Time to form banded matrix when reordering is disabled.

double spike::Stats::time_transfer

Time to transfer data from CPU to GPU.

double spike::Stats::timeSetup

Time to set up the preconditioner.

double spike::Stats::timeSolve

Time for Krylov solve.

double spike::Stats::timeUpdate

Time to update the preconditioner.


The documentation for this struct was generated from the following file: