HiCMA
Hierarchical Computations on Manycore Architectures
|
This file shows how to factorize and solve using HiCMA. X/B matrix in AX=B is dense. More...
#include "timing.h"
#include "hicma_constants.h"
#include "hicma_struct.h"
#include "hicma_z.h"
#include "hicma.h"
#include "hicma_common.h"
#include <assert.h>
#include "auxcompute_z.h"
#include "auxdescutil.h"
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <math.h>
#include <morse.h>
#include "testing_zauxiliary.h"
Go to the source code of this file.
Enumerations | |
enum | blas_order_type { blas_rowmajor = 101, blas_colmajor = 102, blas_rowmajor = 101, blas_colmajor = 102 } |
enum | blas_cmach_type { blas_base = 151, blas_t = 152, blas_rnd = 153, blas_ieee = 154, blas_emin = 155, blas_emax = 156, blas_eps = 157, blas_prec = 158, blas_underflow = 159, blas_overflow = 160, blas_sfmin = 161, blas_base = 151, blas_t = 152, blas_rnd = 153, blas_ieee = 154, blas_emin = 155, blas_emax = 156, blas_eps = 157, blas_prec = 158, blas_underflow = 159, blas_overflow = 160, blas_sfmin = 161 } |
enum | blas_norm_type { blas_one_norm = 171, blas_real_one_norm = 172, blas_two_norm = 173, blas_frobenius_norm = 174, blas_inf_norm = 175, blas_real_inf_norm = 176, blas_max_norm = 177, blas_real_max_norm = 178, blas_one_norm = 171, blas_real_one_norm = 172, blas_two_norm = 173, blas_frobenius_norm = 174, blas_inf_norm = 175, blas_real_inf_norm = 176, blas_max_norm = 177, blas_real_max_norm = 178 } |
Functions | |
int | testing_dposv (int argc, char **argv) |
Factorize and Solve | |
| |
int | testing_dtrsmd (int argc, char **argv) |
Variables | |
STARSH_blrf * | mpiF |
int | print_progress = 1 |
char | datebuf [128] |
time_t | timer |
struct tm * | tm_info |
int | store_only_diagonal_tiles = 0 |
int | global_check = 0 |
int | global_always_fixed_rank = 0 |
int | global_fixed_rank = 0 |
int | global_omit_computation = 1 |
int | num_mpi_ranks |
int | run_potrf = 1 |
int | diag_nrows = 0 |
int | main_print_index = 0 |
int | print_index = 0 |
int | print_index_end = 0 |
int | main_print_mat = 0 |
int | print_mat = 0 |
int | use_scratch = 1 |
int | calc_rank_stat = 1 |
This file shows how to factorize and solve using HiCMA. X/B matrix in AX=B is dense.
HiCMA testing routine. HiCMA is a software package provided by King Abdullah University of Science and Technology (KAUST)
Definition in file testing_ztrsmd.c.
enum blas_order_type |
Enumerator | |
---|---|
blas_rowmajor | |
blas_colmajor | |
blas_rowmajor | |
blas_colmajor |
Definition at line 88 of file testing_ztrsmd.c.
enum blas_cmach_type |
Definition at line 92 of file testing_ztrsmd.c.
enum blas_norm_type |
Definition at line 105 of file testing_ztrsmd.c.
int testing_dposv | ( | int | argc, |
char ** | argv | ||
) |
This function shows matrix factorization and solve using TLR matrices.
Steps are as follows:
A
A
. Set off-diagonal elements to 0 and diagonal elements to NB since only diagonals are dense. descAdense
for only checking purposes. descAD
but put the tiles in a tall and skinny matrix. descAUV
. descBdense
for only checking purposes. descBUV
. Definition at line 213 of file testing_ztrsmd.c.
int testing_dtrsmd | ( | int | argc, |
char ** | argv | ||
) |
This function shows matrix factorization and solve using TLR and dense matrices. A is in TLR format. X/B is in dense format.
Steps are as follows:
A
A
. Set off-diagonal elements to 0 and diagonal elements to NB since only diagonals are dense. descAdense
for only checking purposes. descAD
but put the tiles in a tall and skinny matrix. descAUV
. descBdense
for only checking purposes. Definition at line 227 of file testing_ztrsmd.c.
STARSH_blrf* mpiF |
Definition at line 56 of file testing_ztrsmd.c.
int print_progress = 1 |
Definition at line 58 of file testing_ztrsmd.c.
char datebuf[128] |
Definition at line 59 of file testing_ztrsmd.c.
time_t timer |
Definition at line 60 of file testing_ztrsmd.c.
struct tm* tm_info |
Definition at line 61 of file testing_ztrsmd.c.
int store_only_diagonal_tiles = 0 |
Definition at line 63 of file testing_ztrsmd.c.
int global_check = 0 |
Definition at line 64 of file testing_ztrsmd.c.
int global_always_fixed_rank = 0 |
Definition at line 65 of file testing_ztrsmd.c.
int global_fixed_rank = 0 |
Definition at line 66 of file testing_ztrsmd.c.
int global_omit_computation = 1 |
Definition at line 67 of file testing_ztrsmd.c.
int num_mpi_ranks |
Definition at line 68 of file testing_ztrsmd.c.
int run_potrf = 1 |
Definition at line 69 of file testing_ztrsmd.c.
int diag_nrows = 0 |
Definition at line 70 of file testing_ztrsmd.c.
int main_print_index = 0 |
Definition at line 71 of file testing_ztrsmd.c.
int print_index = 0 |
Definition at line 72 of file testing_ztrsmd.c.
int print_index_end = 0 |
Definition at line 73 of file testing_ztrsmd.c.
int main_print_mat = 0 |
Definition at line 74 of file testing_ztrsmd.c.
int print_mat = 0 |
Definition at line 75 of file testing_ztrsmd.c.
int use_scratch = 1 |
Definition at line 76 of file testing_ztrsmd.c.
int calc_rank_stat = 1 |
Definition at line 77 of file testing_ztrsmd.c.