SpikeGPU
1.0.0
|
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 |
Output solver statistics.
This structure encapsulates all solver statistics, both from the iterative solver and the preconditioner.
|
inline |
This is the constructor for the Stats class. It initializes all timing and performance measures.
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.