Functions | |
void | FLA_LU_piv_cntl_init () |
void | FLA_LU_piv_cntl_finalize () |
Variables | |
fla_gemm_t * | fla_gemm_cntl_blas |
fla_trsm_t * | fla_trsm_cntl_blas |
fla_lu_t * | fla_lu_piv_cntl |
fla_lu_t * | fla_lu_piv_cntl2 |
fla_lu_t * | fla_lu_piv_cntl_in |
fla_lu_t * | fla_lu_piv_cntl_lapack |
fla_blocksize_t * | fla_lu_piv_var5_bsize |
fla_blocksize_t * | fla_lu_piv_var5_bsize_in |
double | fla_lu_piv_var5_in_to_ou_bsize_ratio = 0.125 |
void FLA_LU_piv_cntl_finalize | ( | void | ) |
References FLA_Blocksize_free(), and FLA_Cntl_obj_free().
Referenced by FLA_Cntl_finalize_flamec().
00100 { 00101 FLA_Cntl_obj_free( fla_lu_piv_cntl ); 00102 FLA_Cntl_obj_free( fla_lu_piv_cntl2 ); 00103 FLA_Cntl_obj_free( fla_lu_piv_cntl_in ); 00104 FLA_Cntl_obj_free( fla_lu_piv_cntl_lapack ); 00105 00106 FLA_Blocksize_free( fla_lu_piv_var5_bsize ); 00107 FLA_Blocksize_free( fla_lu_piv_var5_bsize_in ); 00108 }
void FLA_LU_piv_cntl_init | ( | void | ) |
References FLA_Blocksize_create_copy(), FLA_Blocksize_scale(), FLA_Cntl_lu_obj_create(), fla_lu_piv_var5_in_to_ou_bsize_ratio, and FLA_Query_blocksizes().
Referenced by FLA_Cntl_init_flamec().
00048 { 00049 // Set blocksizes with default values for conventional storage. 00050 fla_lu_piv_var5_bsize = FLA_Query_blocksizes( FLA_DIMENSION_MIN ); 00051 fla_lu_piv_var5_bsize_in = FLA_Blocksize_create_copy( fla_lu_piv_var5_bsize ); 00052 FLA_Blocksize_scale( fla_lu_piv_var5_bsize_in, fla_lu_piv_var5_in_to_ou_bsize_ratio ); 00053 00054 // Create a control tree to invoke LAPACK. 00055 fla_lu_piv_cntl_lapack = FLA_Cntl_lu_obj_create( FLA_FLAT, 00056 FLA_SUBPROBLEM, 00057 NULL, 00058 NULL, 00059 NULL, 00060 NULL, 00061 NULL, 00062 NULL, 00063 NULL ); 00064 00065 // Create a control tree for small subproblems. 00066 fla_lu_piv_cntl_in = FLA_Cntl_lu_obj_create( FLA_FLAT, 00067 FLA_BLOCKED_VARIANT5, 00068 fla_lu_piv_var5_bsize_in, 00069 fla_lu_piv_cntl_lapack, 00070 fla_gemm_cntl_blas, 00071 fla_gemm_cntl_blas, 00072 fla_gemm_cntl_blas, 00073 fla_trsm_cntl_blas, 00074 fla_trsm_cntl_blas ); 00075 00076 // Create a control tree for larger problems with one level of recursion. 00077 fla_lu_piv_cntl2 = FLA_Cntl_lu_obj_create( FLA_FLAT, 00078 FLA_BLOCKED_VARIANT5, 00079 fla_lu_piv_var5_bsize, 00080 fla_lu_piv_cntl_in, 00081 fla_gemm_cntl_blas, 00082 fla_gemm_cntl_blas, 00083 fla_gemm_cntl_blas, 00084 fla_trsm_cntl_blas, 00085 fla_trsm_cntl_blas ); 00086 00087 // Create a control tree for large problems with no extra recursion. 00088 fla_lu_piv_cntl = FLA_Cntl_lu_obj_create( FLA_FLAT, 00089 FLA_BLOCKED_VARIANT5, 00090 fla_lu_piv_var5_bsize, 00091 fla_lu_piv_cntl_lapack, 00092 fla_gemm_cntl_blas, 00093 fla_gemm_cntl_blas, 00094 fla_gemm_cntl_blas, 00095 fla_trsm_cntl_blas, 00096 fla_trsm_cntl_blas ); 00097 }
double fla_lu_piv_var5_in_to_ou_bsize_ratio = 0.125 |
Referenced by FLA_LU_piv_cntl_init().