HiCMA
Hierarchical Computations on Manycore Architectures
time_zpotrf_tile.c File Reference
#include "morse.h"
#include "timing.h"
#include "hicma_constants.h"
#include "hicma_struct.h"
#include "hicma_z.h"
#include <stdio.h>
#include <time.h>
#include <sys/time.h>
#include "starpu.h"
#include <cblas.h>
#include <lapacke.h>
#include "starsh-spatial.h"
#include <assert.h>
#include "auxcompute_z.h"
#include "auxdescutil.h"
#include "hicma.h"
#include <math.h>

Go to the source code of this file.

Macros

#define CBLAS_SADDR(_val)   (_val)
 
#define PROGRESS(str)
 

Functions

void fwrite_array (int m, int n, int ld, double *arr, char *file)
 
double timediff (struct timeval begin, struct timeval end)
 
int RunTest (int *iparam, double *dparam, morse_time_t *t_, char *rankfile)
 

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
 

Detailed Description

This file shows how to generate tile low-rank (TLR) matrix and factorize it using Cholesky factorization.

HiCMA is a software package provided by King Abdullah University of Science and Technology (KAUST)

Version
0.1.1
Author
Kadir Akbudak
Date
2018-11-08

Definition in file time_zpotrf_tile.c.

Macro Definition Documentation

◆ CBLAS_SADDR

#define CBLAS_SADDR (   _val)    (_val)

The meaning of the descriptors:

  • AUV: U and V, side by side
  • AD : U*V
  • A : the original, non-approximated problem
  • Ark: rank of U and V, each tile of the matrix is a single integer in fact a double.

Definition at line 68 of file time_zpotrf_tile.c.

◆ PROGRESS

#define PROGRESS (   str)
Value:
int myrank = MORSE_My_Mpi_Rank();\
time(&timer); \
tm_info = localtime(&timer); \
strftime(datebuf, 26, "%Y-%m-%d %H:%M:%S",tm_info); \
fprintf(stderr, "%d:%s\t%d\t%s\t%s\n", myrank, datebuf, __LINE__, __func__, str);\
fflush(stderr);\
}
int print_progress
char datebuf[128]
struct tm * tm_info
time_t timer

Definition at line 77 of file time_zpotrf_tile.c.

Function Documentation

◆ fwrite_array()

void fwrite_array ( int  m,
int  n,
int  ld,
double *  arr,
char *  file 
)

Definition at line 105 of file time_zpotrf_tile.c.

◆ timediff()

double timediff ( struct timeval  begin,
struct timeval  end 
)

Definition at line 122 of file time_zpotrf_tile.c.

◆ RunTest()

int RunTest ( int *  iparam,
double *  dparam,
morse_time_t t_,
char *  rankfile 
)

Definition at line 131 of file time_zpotrf_tile.c.

Variable Documentation

◆ mpiF

STARSH_blrf* mpiF

Definition at line 71 of file time_zpotrf_tile.c.

◆ print_progress

int print_progress = 1

Definition at line 73 of file time_zpotrf_tile.c.

◆ datebuf

char datebuf[128]

Definition at line 74 of file time_zpotrf_tile.c.

◆ timer

time_t timer

Definition at line 75 of file time_zpotrf_tile.c.

◆ tm_info

struct tm* tm_info

Definition at line 76 of file time_zpotrf_tile.c.

◆ store_only_diagonal_tiles

int store_only_diagonal_tiles = 0

Definition at line 89 of file time_zpotrf_tile.c.

◆ global_check

int global_check = 0

Definition at line 90 of file time_zpotrf_tile.c.

◆ global_always_fixed_rank

int global_always_fixed_rank = 0

Definition at line 91 of file time_zpotrf_tile.c.

◆ global_fixed_rank

int global_fixed_rank = 0

Definition at line 92 of file time_zpotrf_tile.c.

◆ global_omit_computation

int global_omit_computation = 1

Definition at line 93 of file time_zpotrf_tile.c.

◆ num_mpi_ranks

int num_mpi_ranks

Definition at line 94 of file time_zpotrf_tile.c.

◆ run_potrf

int run_potrf = 1

Definition at line 95 of file time_zpotrf_tile.c.

◆ diag_nrows

int diag_nrows = 0

Definition at line 96 of file time_zpotrf_tile.c.

◆ main_print_index

int main_print_index = 0

Definition at line 97 of file time_zpotrf_tile.c.

◆ print_index

int print_index = 0

Definition at line 98 of file time_zpotrf_tile.c.

◆ print_index_end

int print_index_end = 0

Definition at line 99 of file time_zpotrf_tile.c.

◆ main_print_mat

int main_print_mat = 0

Definition at line 100 of file time_zpotrf_tile.c.

◆ print_mat

int print_mat = 0

Definition at line 101 of file time_zpotrf_tile.c.

◆ use_scratch

int use_scratch = 1

Definition at line 102 of file time_zpotrf_tile.c.

◆ calc_rank_stat

int calc_rank_stat = 1

Definition at line 103 of file time_zpotrf_tile.c.