libflame  revision_anchor
Functions
FLA_Cntl_init_flamec.h File Reference

(r)

Go to the source code of this file.

Functions

void FLA_Cntl_init_flamec (void)
 
void FLA_Cntl_finalize_flamec (void)
 
void FLA_Transpose_cntl_init (void)
 
void FLA_Transpose_cntl_finalize (void)
 
void FLA_Axpy_cntl_init (void)
 
void FLA_Axpyt_cntl_init (void)
 
void FLA_Copy_cntl_init (void)
 
void FLA_Copyt_cntl_init (void)
 
void FLA_Copyr_cntl_init (void)
 
void FLA_Scal_cntl_init (void)
 
void FLA_Scalr_cntl_init (void)
 
void FLA_Axpy_cntl_finalize (void)
 
void FLA_Axpyt_cntl_finalize (void)
 
void FLA_Copy_cntl_finalize (void)
 
void FLA_Copyt_cntl_finalize (void)
 
void FLA_Copyr_cntl_finalize (void)
 
void FLA_Scal_cntl_finalize (void)
 
void FLA_Scalr_cntl_finalize (void)
 
void FLA_Gemv_cntl_init (void)
 
void FLA_Trsv_cntl_init (void)
 
void FLA_Gemv_cntl_finalize (void)
 
void FLA_Trsv_cntl_finalize (void)
 
void FLA_Gemm_cntl_init (void)
 
void FLA_Hemm_cntl_init (void)
 
void FLA_Herk_cntl_init (void)
 
void FLA_Her2k_cntl_init (void)
 
void FLA_Symm_cntl_init (void)
 
void FLA_Syrk_cntl_init (void)
 
void FLA_Syr2k_cntl_init (void)
 
void FLA_Trmm_cntl_init (void)
 
void FLA_Trsm_cntl_init (void)
 
void FLA_Gemm_cntl_finalize (void)
 
void FLA_Hemm_cntl_finalize (void)
 
void FLA_Herk_cntl_finalize (void)
 
void FLA_Her2k_cntl_finalize (void)
 
void FLA_Symm_cntl_finalize (void)
 
void FLA_Syrk_cntl_finalize (void)
 
void FLA_Syr2k_cntl_finalize (void)
 
void FLA_Trmm_cntl_finalize (void)
 
void FLA_Trsm_cntl_finalize (void)
 
void FLA_Apply_pivots_cntl_init (void)
 
void FLA_Chol_cntl_init (void)
 
void FLA_LU_piv_cntl_init (void)
 
void FLA_LU_nopiv_cntl_init (void)
 
void FLA_QR_UT_cntl_init (void)
 
void FLA_QR2_UT_cntl_init (void)
 
void FLA_LQ_UT_cntl_init (void)
 
void FLA_CAQR2_UT_cntl_init (void)
 
void FLA_UDdate_UT_cntl_init (void)
 
void FLA_Hess_UT_cntl_init (void)
 
void FLA_Tridiag_UT_cntl_init (void)
 
void FLA_Bidiag_UT_cntl_init (void)
 
void FLA_Trinv_cntl_init (void)
 
void FLA_Ttmm_cntl_init (void)
 
void FLA_Sylv_cntl_init (void)
 
void FLA_Lyap_cntl_init (void)
 
void FLA_SPDinv_cntl_init (void)
 
void FLA_Apply_Q_UT_cntl_init (void)
 
void FLA_Apply_Q2_UT_cntl_init (void)
 
void FLA_Apply_CAQ2_UT_cntl_init (void)
 
void FLA_Apply_QUD_UT_cntl_init (void)
 
void FLA_Eig_gest_cntl_init (void)
 
void FLA_Apply_pivots_cntl_finalize (void)
 
void FLA_Chol_cntl_finalize (void)
 
void FLA_LU_piv_cntl_finalize (void)
 
void FLA_LU_nopiv_cntl_finalize (void)
 
void FLA_QR_UT_cntl_finalize (void)
 
void FLA_QR2_UT_cntl_finalize (void)
 
void FLA_LQ_UT_cntl_finalize (void)
 
void FLA_CAQR2_UT_cntl_finalize (void)
 
void FLA_UDdate_UT_cntl_finalize (void)
 
void FLA_Hess_UT_cntl_finalize (void)
 
void FLA_Tridiag_UT_cntl_finalize (void)
 
void FLA_Bidiag_UT_cntl_finalize (void)
 
void FLA_Trinv_cntl_finalize (void)
 
void FLA_Ttmm_cntl_finalize (void)
 
void FLA_Sylv_cntl_finalize (void)
 
void FLA_Lyap_cntl_finalize (void)
 
void FLA_SPDinv_cntl_finalize (void)
 
void FLA_Apply_Q_UT_cntl_finalize (void)
 
void FLA_Apply_Q2_UT_cntl_finalize (void)
 
void FLA_Apply_CAQ2_UT_cntl_finalize (void)
 
void FLA_Apply_QUD_UT_cntl_finalize (void)
 
void FLA_Eig_gest_cntl_finalize (void)
 

Function Documentation

◆ FLA_Apply_CAQ2_UT_cntl_finalize()

void FLA_Apply_CAQ2_UT_cntl_finalize ( void  )
46 {
48 
50 }
fla_apcaq2ut_t * fla_apcaq2ut_cntl_leaf
Definition: FLA_Apply_CAQ2_UT_cntl_init.c:19
fla_blocksize_t * fla_apcaq2ut_var1_bsize
Definition: FLA_Apply_CAQ2_UT_cntl_init.c:20
void FLA_Cntl_obj_free(void *cntl)
Definition: FLA_Cntl.c:13
void FLA_Blocksize_free(fla_blocksize_t *bp)
Definition: FLA_Blocksize.c:110

References fla_apcaq2ut_cntl_leaf, fla_apcaq2ut_var1_bsize, FLA_Blocksize_free(), and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flamec().

◆ FLA_Apply_CAQ2_UT_cntl_init()

void FLA_Apply_CAQ2_UT_cntl_init ( void  )
23 {
24  // Set the blocksize to the default value for conventional storage,
25  // but scaled down.
26  fla_apcaq2ut_var1_bsize = FLA_Query_blocksizes( FLA_DIMENSION_MIN );
27  FLA_Blocksize_scale( fla_apcaq2ut_var1_bsize, FLA_CAQR_INNER_TO_OUTER_B_RATIO );
28 
29  // Create a control tree to invoke variant 1.
31  FLA_BLOCKED_VARIANT1,
33  NULL,
43 }
fla_axpy_t * fla_axpy_cntl_blas
Definition: FLA_Axpy_cntl_init.c:13
fla_gemm_t * fla_gemm_cntl_blas
Definition: FLA_Gemm_cntl_init.c:15
fla_trsm_t * fla_trsm_cntl_blas
Definition: FLA_Trsm_cntl_init.c:16
fla_trmm_t * fla_trmm_cntl_blas
Definition: FLA_Trmm_cntl_init.c:16
fla_copy_t * fla_copy_cntl_blas
Definition: FLA_Copy_cntl_init.c:13
fla_apcaq2ut_t * FLA_Cntl_apcaq2ut_obj_create(FLA_Matrix_type matrix_type, int variant, fla_blocksize_t *blocksize, fla_apcaq2ut_t *sub_apcaq2ut, fla_gemm_t *sub_gemm1, fla_gemm_t *sub_gemm2, fla_trmm_t *sub_trmm1, fla_trmm_t *sub_trmm2, fla_trsm_t *sub_trsm, fla_axpy_t *sub_axpy1, fla_axpy_t *sub_axpy2, fla_axpy_t *sub_axpy3, fla_copy_t *sub_copy)
Definition: FLA_Cntl_lapack.c:525
fla_blocksize_t * FLA_Query_blocksizes(FLA_Dimension dim)
Definition: FLA_Blocksize.c:142
void FLA_Blocksize_scale(fla_blocksize_t *bp, double factor)
Definition: FLA_Blocksize.c:64

References fla_apcaq2ut_cntl_leaf, fla_apcaq2ut_var1_bsize, fla_axpy_cntl_blas, FLA_Blocksize_scale(), FLA_Cntl_apcaq2ut_obj_create(), fla_copy_cntl_blas, fla_gemm_cntl_blas, FLA_Query_blocksizes(), fla_trmm_cntl_blas, and fla_trsm_cntl_blas.

Referenced by FLA_Cntl_init_flamec().

◆ FLA_Apply_pivots_cntl_finalize()

void FLA_Apply_pivots_cntl_finalize ( void  )
29 {
31 }
fla_appiv_t * fla_appiv_cntl_leaf
Definition: FLA_Apply_pivots_cntl_init.c:13

References fla_appiv_cntl_leaf, and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flamec().

◆ FLA_Apply_pivots_cntl_init()

void FLA_Apply_pivots_cntl_init ( void  )
16 {
17  // Create a control tree to invoke LAPACK.
19 #ifdef FLA_ENABLE_EXTERNAL_LAPACK_FOR_SUBPROBLEMS
20  FLA_UNBLOCKED_EXTERN,
21 #else
22  FLA_UNB_OPT_VARIANT1,
23 #endif
24  NULL,
25  NULL );
26 }
fla_appiv_t * FLA_Cntl_appiv_obj_create(FLA_Matrix_type matrix_type, int variant, fla_blocksize_t *blocksize, fla_appiv_t *sub_appiv)
Definition: FLA_Cntl_lapack.c:72

References fla_appiv_cntl_leaf, and FLA_Cntl_appiv_obj_create().

Referenced by FLA_Cntl_init_flamec().

◆ FLA_Apply_Q2_UT_cntl_finalize()

void FLA_Apply_Q2_UT_cntl_finalize ( void  )
41 {
43 
45 }
fla_apq2ut_t * fla_apq2ut_cntl_leaf
Definition: FLA_Apply_Q2_UT_cntl_init.c:18
fla_blocksize_t * fla_apq2ut_var1_bsize
Definition: FLA_Apply_Q2_UT_cntl_init.c:19

References fla_apq2ut_cntl_leaf, fla_apq2ut_var1_bsize, FLA_Blocksize_free(), and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flamec().

◆ FLA_Apply_Q2_UT_cntl_init()

void FLA_Apply_Q2_UT_cntl_init ( void  )
22 {
23  // Set the blocksize to the default value for conventional storage,
24  // but scaled down.
25  fla_apq2ut_var1_bsize = FLA_Query_blocksizes( FLA_DIMENSION_MIN );
26  FLA_Blocksize_scale( fla_apq2ut_var1_bsize, FLA_QR_INNER_TO_OUTER_B_RATIO );
27 
28  // Create a control tree to invoke variant 1.
30  FLA_BLOCKED_VARIANT1,
32  NULL,
38 }
fla_gemm_t * fla_gemm_cntl_blas
Definition: FLA_Gemm_cntl_init.c:15
fla_axpyt_t * fla_axpyt_cntl_blas
Definition: FLA_Axpyt_cntl_init.c:13
fla_trsm_t * fla_trsm_cntl_blas
Definition: FLA_Trsm_cntl_init.c:16
fla_copyt_t * fla_copyt_cntl_blas
Definition: FLA_Copyt_cntl_init.c:13
fla_apq2ut_t * FLA_Cntl_apq2ut_obj_create(FLA_Matrix_type matrix_type, int variant, fla_blocksize_t *blocksize, fla_apq2ut_t *sub_apq2ut, fla_gemm_t *sub_gemm1, fla_gemm_t *sub_gemm2, fla_trsm_t *sub_trsm, fla_copyt_t *sub_copyt, fla_axpyt_t *sub_axpyt)
Definition: FLA_Cntl_lapack.c:498

References fla_apq2ut_cntl_leaf, fla_apq2ut_var1_bsize, fla_axpyt_cntl_blas, FLA_Blocksize_scale(), FLA_Cntl_apq2ut_obj_create(), fla_copyt_cntl_blas, fla_gemm_cntl_blas, FLA_Query_blocksizes(), and fla_trsm_cntl_blas.

Referenced by FLA_Cntl_init_flamec().

◆ FLA_Apply_Q_UT_cntl_finalize()

void FLA_Apply_Q_UT_cntl_finalize ( void  )
61 {
63 /*
64  FLA_Cntl_obj_free( fla_apqut_cntl );
65 */
66 
69 }
fla_apqut_t * fla_apqut_cntl_leaf
Definition: FLA_Apply_Q_UT_cntl_init.c:19
fla_blocksize_t * fla_apqut_var2_bsize
Definition: FLA_Apply_Q_UT_cntl_init.c:22
fla_blocksize_t * fla_apqut_var1_bsize
Definition: FLA_Apply_Q_UT_cntl_init.c:21

References fla_apqut_cntl_leaf, fla_apqut_var1_bsize, fla_apqut_var2_bsize, FLA_Blocksize_free(), and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flamec().

◆ FLA_Apply_Q_UT_cntl_init()

void FLA_Apply_Q_UT_cntl_init ( void  )
25 {
26  // Set the outer blocksize to the default value for conventional storage,
27  // and the inner blocksize to the same value but scaled down.
28  fla_apqut_var2_bsize = FLA_Query_blocksizes( FLA_DIMENSION_MIN );
29  fla_apqut_var1_bsize = FLA_Query_blocksizes( FLA_DIMENSION_MIN );
30  FLA_Blocksize_scale( fla_apqut_var1_bsize, FLA_QR_INNER_TO_OUTER_B_RATIO );
31 
32  // Create a control tree to invoke variant 1.
34  FLA_BLOCKED_VARIANT1,
36  NULL,
44 /*
45  // Create a control tree to invoke variant 2.
46  fla_apqut_cntl = FLA_Cntl_apqut_obj_create( FLA_FLAT,
47  FLA_BLOCKED_VARIANT2,
48  fla_apqut_var2_bsize,
49  fla_apqut_cntl_leaf,
50  NULL,
51  NULL,
52  NULL,
53  NULL,
54  NULL,
55  NULL,
56  NULL );
57 */
58 }
fla_gemm_t * fla_gemm_cntl_blas
Definition: FLA_Gemm_cntl_init.c:15
fla_axpyt_t * fla_axpyt_cntl_blas
Definition: FLA_Axpyt_cntl_init.c:13
fla_trsm_t * fla_trsm_cntl_blas
Definition: FLA_Trsm_cntl_init.c:16
fla_trmm_t * fla_trmm_cntl_blas
Definition: FLA_Trmm_cntl_init.c:16
fla_copyt_t * fla_copyt_cntl_blas
Definition: FLA_Copyt_cntl_init.c:13
fla_apqut_t * FLA_Cntl_apqut_obj_create(FLA_Matrix_type matrix_type, int variant, fla_blocksize_t *blocksize, fla_apqut_t *sub_apqut, fla_trmm_t *sub_trmm1, fla_trmm_t *sub_trmm2, fla_gemm_t *sub_gemm1, fla_gemm_t *sub_gemm2, fla_trsm_t *sub_trsm, fla_copyt_t *sub_copyt, fla_axpyt_t *sub_axpyt)
Definition: FLA_Cntl_lapack.c:467

References fla_apqut_cntl_leaf, fla_apqut_var1_bsize, fla_apqut_var2_bsize, fla_axpyt_cntl_blas, FLA_Blocksize_scale(), FLA_Cntl_apqut_obj_create(), fla_copyt_cntl_blas, fla_gemm_cntl_blas, FLA_Query_blocksizes(), fla_trmm_cntl_blas, and fla_trsm_cntl_blas.

Referenced by FLA_Cntl_init_flamec().

◆ FLA_Apply_QUD_UT_cntl_finalize()

void FLA_Apply_QUD_UT_cntl_finalize ( void  )
43 {
45 
47 }
fla_apqudut_t * fla_apqudut_cntl_leaf
Definition: FLA_Apply_QUD_UT_cntl_init.c:18
fla_blocksize_t * fla_apqudut_var1_bsize
Definition: FLA_Apply_QUD_UT_cntl_init.c:19

References fla_apqudut_cntl_leaf, fla_apqudut_var1_bsize, FLA_Blocksize_free(), and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flamec().

◆ FLA_Apply_QUD_UT_cntl_init()

void FLA_Apply_QUD_UT_cntl_init ( void  )
22 {
23  // Set the blocksize to the default value for conventional storage,
24  // but scaled down.
25  fla_apqudut_var1_bsize = FLA_Query_blocksizes( FLA_DIMENSION_MIN );
26  FLA_Blocksize_scale( fla_apqudut_var1_bsize, FLA_UDDATE_INNER_TO_OUTER_B_RATIO );
27 
28  // Create a control tree to invoke variant 1.
30  FLA_BLOCKED_VARIANT1,
32  NULL,
40 }
fla_gemm_t * fla_gemm_cntl_blas
Definition: FLA_Gemm_cntl_init.c:15
fla_axpyt_t * fla_axpyt_cntl_blas
Definition: FLA_Axpyt_cntl_init.c:13
fla_trsm_t * fla_trsm_cntl_blas
Definition: FLA_Trsm_cntl_init.c:16
fla_copyt_t * fla_copyt_cntl_blas
Definition: FLA_Copyt_cntl_init.c:13
fla_apqudut_t * FLA_Cntl_apqudut_obj_create(FLA_Matrix_type matrix_type, int variant, fla_blocksize_t *blocksize, fla_apqudut_t *sub_apqudut, fla_gemm_t *sub_gemm1, fla_gemm_t *sub_gemm2, fla_gemm_t *sub_gemm3, fla_gemm_t *sub_gemm4, fla_trsm_t *sub_trsm, fla_copyt_t *sub_copyt, fla_axpyt_t *sub_axpyt)
Definition: FLA_Cntl_lapack.c:597

References fla_apqudut_cntl_leaf, fla_apqudut_var1_bsize, fla_axpyt_cntl_blas, FLA_Blocksize_scale(), FLA_Cntl_apqudut_obj_create(), fla_copyt_cntl_blas, fla_gemm_cntl_blas, FLA_Query_blocksizes(), and fla_trsm_cntl_blas.

Referenced by FLA_Cntl_init_flamec().

◆ FLA_Axpy_cntl_finalize()

void FLA_Axpy_cntl_finalize ( void  )
25 {
27 }
fla_axpy_t * fla_axpy_cntl_blas
Definition: FLA_Axpy_cntl_init.c:13

References fla_axpy_cntl_blas, and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flamec().

◆ FLA_Axpy_cntl_init()

void FLA_Axpy_cntl_init ( void  )
16 {
17  // Create a control tree that assumes A and B are small.
19  FLA_SUBPROBLEM,
20  NULL,
21  NULL );
22 }
fla_axpy_t * FLA_Cntl_axpy_obj_create(FLA_Matrix_type matrix_type, int variant, fla_blocksize_t *blocksize, fla_axpy_t *sub_axpy)
Definition: FLA_Cntl_blas1.c:17

References fla_axpy_cntl_blas, and FLA_Cntl_axpy_obj_create().

Referenced by FLA_Cntl_init_flamec().

◆ FLA_Axpyt_cntl_finalize()

void FLA_Axpyt_cntl_finalize ( void  )
25 {
27 }
fla_axpyt_t * fla_axpyt_cntl_blas
Definition: FLA_Axpyt_cntl_init.c:13

References fla_axpyt_cntl_blas, and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flamec().

◆ FLA_Axpyt_cntl_init()

void FLA_Axpyt_cntl_init ( void  )
16 {
17  // Create a control tree that assumes A and B are small.
19  FLA_SUBPROBLEM,
20  NULL,
21  NULL );
22 }
fla_axpyt_t * FLA_Cntl_axpyt_obj_create(FLA_Matrix_type matrix_type, int variant, fla_blocksize_t *blocksize, fla_axpyt_t *sub_axpyt)
Definition: FLA_Cntl_blas1.c:34

References fla_axpyt_cntl_blas, and FLA_Cntl_axpyt_obj_create().

Referenced by FLA_Cntl_init_flamec().

◆ FLA_Bidiag_UT_cntl_finalize()

void FLA_Bidiag_UT_cntl_finalize ( void  )
42 {
46 
48 }
fla_bidiagut_t * fla_bidiagut_cntl_fused
Definition: FLA_Bidiag_UT_cntl_init.c:13
fla_blocksize_t * fla_bidiagut_bsize_leaf
Definition: FLA_Bidiag_UT_cntl_init.c:17
fla_bidiagut_t * fla_bidiagut_cntl_nofus
Definition: FLA_Bidiag_UT_cntl_init.c:14
fla_bidiagut_t * fla_bidiagut_cntl_plain
Definition: FLA_Bidiag_UT_cntl_init.c:15

References fla_bidiagut_bsize_leaf, fla_bidiagut_cntl_fused, fla_bidiagut_cntl_nofus, fla_bidiagut_cntl_plain, FLA_Blocksize_free(), and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flamec().

◆ FLA_Bidiag_UT_cntl_init()

void FLA_Bidiag_UT_cntl_init ( void  )
20 {
21  // Set blocksizes with default values for conventional storage.
22  fla_bidiagut_bsize_leaf = FLA_Query_blocksizes( FLA_DIMENSION_MIN );
23  FLA_Blocksize_scale( fla_bidiagut_bsize_leaf, FLA_BIDIAG_INNER_TO_OUTER_B_RATIO );
24 
25  // Create a control tree that uses fused subproblems.
27  FLA_BLK_FUS_VARIANT4,
29 
30  // Create a control tree that does not used any fusing.
32  FLA_BLOCKED_VARIANT4,
34 
35  // Create a control tree that reflects the basic algorithm.
37  FLA_BLOCKED_VARIANT1,
39 }
fla_bidiagut_t * FLA_Cntl_bidiagut_obj_create(FLA_Matrix_type matrix_type, int variant, fla_blocksize_t *blocksize)
Definition: FLA_Cntl_lapack.c:262

References fla_bidiagut_bsize_leaf, fla_bidiagut_cntl_fused, fla_bidiagut_cntl_nofus, fla_bidiagut_cntl_plain, FLA_Blocksize_scale(), FLA_Cntl_bidiagut_obj_create(), and FLA_Query_blocksizes().

Referenced by FLA_Cntl_init_flamec().

◆ FLA_CAQR2_UT_cntl_finalize()

void FLA_CAQR2_UT_cntl_finalize ( void  )
65 {
68 
70 }
fla_caqr2ut_t * fla_caqr2ut_cntl_unb
Definition: FLA_CAQR2_UT_cntl_init.c:19
fla_blocksize_t * fla_caqr2ut_var1_bsize
Definition: FLA_CAQR2_UT_cntl_init.c:21
fla_caqr2ut_t * fla_caqr2ut_cntl_leaf
Definition: FLA_CAQR2_UT_cntl_init.c:20

References FLA_Blocksize_free(), fla_caqr2ut_cntl_leaf, fla_caqr2ut_cntl_unb, fla_caqr2ut_var1_bsize, and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flamec().

◆ FLA_CAQR2_UT_cntl_init()

void FLA_CAQR2_UT_cntl_init ( void  )
24 {
25  // Set the blocksize to the default value for conventional storage,
26  // but scaled down.
27  fla_caqr2ut_var1_bsize = FLA_Query_blocksizes( FLA_DIMENSION_MIN );
28  FLA_Blocksize_scale( fla_caqr2ut_var1_bsize, FLA_CAQR_INNER_TO_OUTER_B_RATIO );
29 
30  // Create a control tree to invoke unblocked variant 1.
32  //FLA_UNBLOCKED_VARIANT1,
33  FLA_UNB_OPT_VARIANT1,
34  NULL,
35  NULL,
36  NULL,
37  NULL,
38  NULL,
39  NULL,
40  NULL,
41  NULL,
42  NULL,
43  NULL,
44  NULL );
45 
46  // Create a control tree for small-to-medium sequential problems and
47  // as the means to compute on FLASH blocks.
49  FLA_BLOCKED_VARIANT1,
61 
62 }
fla_axpy_t * fla_axpy_cntl_blas
Definition: FLA_Axpy_cntl_init.c:13
fla_gemm_t * fla_gemm_cntl_blas
Definition: FLA_Gemm_cntl_init.c:15
fla_trsm_t * fla_trsm_cntl_blas
Definition: FLA_Trsm_cntl_init.c:16
fla_trmm_t * fla_trmm_cntl_blas
Definition: FLA_Trmm_cntl_init.c:16
fla_copy_t * fla_copy_cntl_blas
Definition: FLA_Copy_cntl_init.c:13
fla_caqr2ut_t * FLA_Cntl_caqr2ut_obj_create(FLA_Matrix_type matrix_type, int variant, fla_blocksize_t *blocksize, fla_caqr2ut_t *sub_caqr2ut, fla_gemm_t *sub_gemm1, fla_gemm_t *sub_gemm2, fla_trmm_t *sub_trmm1, fla_trmm_t *sub_trmm2, fla_trsm_t *sub_trsm, fla_axpy_t *sub_axpy1, fla_axpy_t *sub_axpy2, fla_axpy_t *sub_axpy3, fla_copy_t *sub_copy)
Definition: FLA_Cntl_lapack.c:197

References fla_axpy_cntl_blas, FLA_Blocksize_scale(), fla_caqr2ut_cntl_leaf, fla_caqr2ut_cntl_unb, fla_caqr2ut_var1_bsize, FLA_Cntl_caqr2ut_obj_create(), fla_copy_cntl_blas, fla_gemm_cntl_blas, FLA_Query_blocksizes(), fla_trmm_cntl_blas, and fla_trsm_cntl_blas.

Referenced by FLA_Cntl_init_flamec().

◆ FLA_Chol_cntl_finalize()

void FLA_Chol_cntl_finalize ( void  )
74 {
79 
82 }
fla_chol_t * fla_chol_cntl2
Definition: FLA_Chol_cntl_init.c:17
fla_blocksize_t * fla_chol_var3_bsize_in
Definition: FLA_Chol_cntl_init.c:22
fla_chol_t * fla_chol_cntl
Definition: FLA_Chol_cntl_init.c:16
fla_chol_t * fla_chol_cntl_leaf
Definition: FLA_Chol_cntl_init.c:20
fla_blocksize_t * fla_chol_var3_bsize
Definition: FLA_Chol_cntl_init.c:21
fla_chol_t * fla_chol_cntl_in
Definition: FLA_Chol_cntl_init.c:19

References FLA_Blocksize_free(), fla_chol_cntl, fla_chol_cntl2, fla_chol_cntl_in, fla_chol_cntl_leaf, fla_chol_var3_bsize, fla_chol_var3_bsize_in, and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flamec().

◆ FLA_Chol_cntl_init()

void FLA_Chol_cntl_init ( void  )
26 {
27  // Set blocksize with default values for conventional storage.
28  fla_chol_var3_bsize = FLA_Query_blocksizes( FLA_DIMENSION_MIN );
31 
32  // Create a control tree to invoke LAPACK.
34 #ifdef FLA_ENABLE_EXTERNAL_LAPACK_FOR_SUBPROBLEMS
35  FLA_BLOCKED_EXTERN,
36 #else
37  FLA_UNB_OPT_VARIANT2,
38 #endif
39  NULL,
40  NULL,
41  NULL,
42  NULL,
43  NULL );
44 
45  // Create a control tree for small subproblems.
47  FLA_BLOCKED_VARIANT3,
52  NULL );
53 
54  // Create a control tree for larger problems with one level of recursion.
56  FLA_BLOCKED_VARIANT3,
61  NULL );
62 
63  // Create a control tree for large problems with no extra recursion.
65  FLA_BLOCKED_VARIANT3,
70  NULL );
71 }
double fla_chol_var3_in_to_ou_bsize_ratio
Definition: FLA_Chol_cntl_init.c:23
fla_trsm_t * fla_trsm_cntl_blas
Definition: FLA_Trsm_cntl_init.c:16
fla_herk_t * fla_herk_cntl_blas
Definition: FLA_Herk_cntl_init.c:16
fla_chol_t * FLA_Cntl_chol_obj_create(FLA_Matrix_type matrix_type, int variant, fla_blocksize_t *blocksize, fla_chol_t *sub_chol, fla_herk_t *sub_herk, fla_trsm_t *sub_trsm, fla_gemm_t *sub_gemm)
Definition: FLA_Cntl_lapack.c:17
fla_blocksize_t * FLA_Blocksize_create_copy(fla_blocksize_t *bp)
Definition: FLA_Blocksize.c:83

References FLA_Blocksize_create_copy(), FLA_Blocksize_scale(), fla_chol_cntl, fla_chol_cntl2, fla_chol_cntl_in, fla_chol_cntl_leaf, fla_chol_var3_bsize, fla_chol_var3_bsize_in, fla_chol_var3_in_to_ou_bsize_ratio, FLA_Cntl_chol_obj_create(), fla_herk_cntl_blas, FLA_Query_blocksizes(), and fla_trsm_cntl_blas.

Referenced by FLA_Cntl_init_flamec().

◆ FLA_Cntl_finalize_flamec()

void FLA_Cntl_finalize_flamec ( void  )
72 {
74 
75  // Level-1 BLAS
83 
84  // Level-2 BLAS
87 
88  // Level-3 BLAS
98 
99  // LAPACK-level
114 
115  // Compound LAPACK operations
124 }
void FLA_Axpy_cntl_finalize()
Definition: FLA_Axpy_cntl_init.c:24
void FLA_Axpyt_cntl_finalize()
Definition: FLA_Axpyt_cntl_init.c:24
void FLA_SPDinv_cntl_finalize(void)
Definition: FLA_SPDinv_cntl_init.c:37
void FLA_Chol_cntl_finalize(void)
Definition: FLA_Chol_cntl_init.c:73
void FLA_CAQR2_UT_cntl_finalize(void)
Definition: FLA_CAQR2_UT_cntl_init.c:64
void FLA_LU_nopiv_cntl_finalize(void)
Definition: FLA_LU_nopiv_cntl_init.c:85
void FLA_Apply_QUD_UT_cntl_finalize(void)
Definition: FLA_Apply_QUD_UT_cntl_init.c:42
void FLA_Trinv_cntl_finalize(void)
Definition: FLA_Trinv_cntl_init.c:52
void FLA_LQ_UT_cntl_finalize(void)
Definition: FLA_LQ_UT_cntl_init.c:42
void FLA_Tridiag_UT_cntl_finalize(void)
Definition: FLA_Tridiag_UT_cntl_init.c:41
void FLA_Ttmm_cntl_finalize(void)
Definition: FLA_Ttmm_cntl_init.c:49
void FLA_QR_UT_cntl_finalize(void)
Definition: FLA_QR_UT_cntl_init.c:59
void FLA_Apply_Q2_UT_cntl_finalize(void)
Definition: FLA_Apply_Q2_UT_cntl_init.c:40
void FLA_Apply_pivots_cntl_finalize(void)
Definition: FLA_Apply_pivots_cntl_init.c:28
void FLA_Apply_Q_UT_cntl_finalize(void)
Definition: FLA_Apply_Q_UT_cntl_init.c:60
void FLA_Eig_gest_cntl_finalize(void)
Definition: FLA_Eig_gest_cntl_init.c:110
void FLA_Bidiag_UT_cntl_finalize(void)
Definition: FLA_Bidiag_UT_cntl_init.c:41
void FLA_Lyap_cntl_finalize(void)
Definition: FLA_Lyap_cntl_init.c:53
void FLA_Sylv_cntl_finalize(void)
Definition: FLA_Sylv_cntl_init.c:78
void FLA_Hess_UT_cntl_finalize(void)
Definition: FLA_Hess_UT_cntl_init.c:29
void FLA_QR2_UT_cntl_finalize(void)
Definition: FLA_QR2_UT_cntl_init.c:54
void FLA_LU_piv_cntl_finalize(void)
Definition: FLA_LU_piv_cntl_init.c:90
void FLA_UDdate_UT_cntl_finalize(void)
Definition: FLA_UDdate_UT_cntl_init.c:43
void FLA_Apply_CAQ2_UT_cntl_finalize(void)
Definition: FLA_Apply_CAQ2_UT_cntl_init.c:45
void FLA_Copy_cntl_finalize()
Definition: FLA_Copy_cntl_init.c:24
void FLA_Copyr_cntl_finalize()
Definition: FLA_Copyr_cntl_init.c:25
void FLA_Copyt_cntl_finalize()
Definition: FLA_Copyt_cntl_init.c:24
void FLA_Gemm_cntl_finalize()
Definition: FLA_Gemm_cntl_init.c:189
void FLA_Gemv_cntl_finalize()
Definition: FLA_Gemv_cntl_init.c:25
void FLA_Hemm_cntl_finalize()
Definition: FLA_Hemm_cntl_init.c:67
void FLA_Her2k_cntl_finalize()
Definition: FLA_Her2k_cntl_init.c:66
void FLA_Herk_cntl_finalize()
Definition: FLA_Herk_cntl_init.c:62
void FLA_Scal_cntl_finalize()
Definition: FLA_Scal_cntl_init.c:24
void FLA_Scalr_cntl_finalize()
Definition: FLA_Scalr_cntl_init.c:25
void FLA_Symm_cntl_finalize()
Definition: FLA_Symm_cntl_init.c:67
void FLA_Syr2k_cntl_finalize()
Definition: FLA_Syr2k_cntl_init.c:66
void FLA_Syrk_cntl_finalize()
Definition: FLA_Syrk_cntl_init.c:62
void FLA_Transpose_cntl_finalize()
Definition: FLA_Transpose_cntl_init.c:54
void FLA_Trmm_cntl_finalize()
Definition: FLA_Trmm_cntl_init.c:62
void FLA_Trsm_cntl_finalize()
Definition: FLA_Trsm_cntl_init.c:62
void FLA_Trsv_cntl_finalize()
Definition: FLA_Trsv_cntl_init.c:25

References FLA_Apply_CAQ2_UT_cntl_finalize(), FLA_Apply_pivots_cntl_finalize(), FLA_Apply_Q2_UT_cntl_finalize(), FLA_Apply_Q_UT_cntl_finalize(), FLA_Apply_QUD_UT_cntl_finalize(), FLA_Axpy_cntl_finalize(), FLA_Axpyt_cntl_finalize(), FLA_Bidiag_UT_cntl_finalize(), FLA_CAQR2_UT_cntl_finalize(), FLA_Chol_cntl_finalize(), FLA_Copy_cntl_finalize(), FLA_Copyr_cntl_finalize(), FLA_Copyt_cntl_finalize(), FLA_Eig_gest_cntl_finalize(), FLA_Gemm_cntl_finalize(), FLA_Gemv_cntl_finalize(), FLA_Hemm_cntl_finalize(), FLA_Her2k_cntl_finalize(), FLA_Herk_cntl_finalize(), FLA_Hess_UT_cntl_finalize(), FLA_LQ_UT_cntl_finalize(), FLA_LU_nopiv_cntl_finalize(), FLA_LU_piv_cntl_finalize(), FLA_Lyap_cntl_finalize(), FLA_QR2_UT_cntl_finalize(), FLA_QR_UT_cntl_finalize(), FLA_Scal_cntl_finalize(), FLA_Scalr_cntl_finalize(), FLA_SPDinv_cntl_finalize(), FLA_Sylv_cntl_finalize(), FLA_Symm_cntl_finalize(), FLA_Syr2k_cntl_finalize(), FLA_Syrk_cntl_finalize(), FLA_Transpose_cntl_finalize(), FLA_Tridiag_UT_cntl_finalize(), FLA_Trinv_cntl_finalize(), FLA_Trmm_cntl_finalize(), FLA_Trsm_cntl_finalize(), FLA_Trsv_cntl_finalize(), FLA_Ttmm_cntl_finalize(), and FLA_UDdate_UT_cntl_finalize().

Referenced by FLA_Cntl_finalize().

◆ FLA_Cntl_init_flamec()

void FLA_Cntl_init_flamec ( void  )
14 {
16 
17  // Level-1 BLAS
25 
26  // Level-2 BLAS
29 
30  // Level-3 BLAS
31  // Note gemm must be first since it is used by all other level-3 BLAS.
41 
42  // LAPACK-level
43  // These require level-3 BLAS operations to be initialized.
58 
59  // Compound LAPACK operations
60  // These require previous LAPACK operations to already be initialized.
69 }
void FLA_Axpy_cntl_init()
Definition: FLA_Axpy_cntl_init.c:15
void FLA_Axpyt_cntl_init()
Definition: FLA_Axpyt_cntl_init.c:15
void FLA_Apply_QUD_UT_cntl_init(void)
Definition: FLA_Apply_QUD_UT_cntl_init.c:21
void FLA_Hess_UT_cntl_init(void)
Definition: FLA_Hess_UT_cntl_init.c:17
void FLA_QR_UT_cntl_init(void)
Definition: FLA_QR_UT_cntl_init.c:23
void FLA_LQ_UT_cntl_init(void)
Definition: FLA_LQ_UT_cntl_init.c:20
void FLA_Apply_Q_UT_cntl_init(void)
Definition: FLA_Apply_Q_UT_cntl_init.c:24
void FLA_CAQR2_UT_cntl_init(void)
Definition: FLA_CAQR2_UT_cntl_init.c:23
void FLA_Lyap_cntl_init(void)
Definition: FLA_Lyap_cntl_init.c:23
void FLA_UDdate_UT_cntl_init(void)
Definition: FLA_UDdate_UT_cntl_init.c:19
void FLA_SPDinv_cntl_init(void)
Definition: FLA_SPDinv_cntl_init.c:20
void FLA_Sylv_cntl_init(void)
Definition: FLA_Sylv_cntl_init.c:20
void FLA_Eig_gest_cntl_init(void)
Definition: FLA_Eig_gest_cntl_init.c:26
void FLA_LU_nopiv_cntl_init(void)
Definition: FLA_LU_nopiv_cntl_init.c:25
void FLA_Apply_CAQ2_UT_cntl_init(void)
Definition: FLA_Apply_CAQ2_UT_cntl_init.c:22
void FLA_Apply_Q2_UT_cntl_init(void)
Definition: FLA_Apply_Q2_UT_cntl_init.c:21
void FLA_Apply_pivots_cntl_init(void)
Definition: FLA_Apply_pivots_cntl_init.c:15
void FLA_LU_piv_cntl_init(void)
Definition: FLA_LU_piv_cntl_init.c:26
void FLA_Chol_cntl_init(void)
Definition: FLA_Chol_cntl_init.c:25
void FLA_Trinv_cntl_init(void)
Definition: FLA_Trinv_cntl_init.c:21
void FLA_Ttmm_cntl_init(void)
Definition: FLA_Ttmm_cntl_init.c:21
void FLA_QR2_UT_cntl_init(void)
Definition: FLA_QR2_UT_cntl_init.c:22
void FLA_Tridiag_UT_cntl_init(void)
Definition: FLA_Tridiag_UT_cntl_init.c:19
void FLA_Bidiag_UT_cntl_init(void)
Definition: FLA_Bidiag_UT_cntl_init.c:19
void FLA_Copy_cntl_init()
Definition: FLA_Copy_cntl_init.c:15
void FLA_Copyr_cntl_init()
Definition: FLA_Copyr_cntl_init.c:15
void FLA_Copyt_cntl_init()
Definition: FLA_Copyt_cntl_init.c:15
void FLA_Gemm_cntl_init()
Definition: FLA_Gemm_cntl_init.c:48
void FLA_Gemv_cntl_init()
Definition: FLA_Gemv_cntl_init.c:15
void FLA_Hemm_cntl_init()
Definition: FLA_Hemm_cntl_init.c:23
void FLA_Her2k_cntl_init()
Definition: FLA_Her2k_cntl_init.c:23
void FLA_Herk_cntl_init()
Definition: FLA_Herk_cntl_init.c:23
void FLA_Scal_cntl_init()
Definition: FLA_Scal_cntl_init.c:15
void FLA_Scalr_cntl_init()
Definition: FLA_Scalr_cntl_init.c:15
void FLA_Symm_cntl_init()
Definition: FLA_Symm_cntl_init.c:23
void FLA_Syr2k_cntl_init()
Definition: FLA_Syr2k_cntl_init.c:23
void FLA_Syrk_cntl_init()
Definition: FLA_Syrk_cntl_init.c:23
void FLA_Transpose_cntl_init()
Definition: FLA_Transpose_cntl_init.c:21
void FLA_Trmm_cntl_init()
Definition: FLA_Trmm_cntl_init.c:23
void FLA_Trsm_cntl_init()
Definition: FLA_Trsm_cntl_init.c:23
void FLA_Trsv_cntl_init()
Definition: FLA_Trsv_cntl_init.c:15

References FLA_Apply_CAQ2_UT_cntl_init(), FLA_Apply_pivots_cntl_init(), FLA_Apply_Q2_UT_cntl_init(), FLA_Apply_Q_UT_cntl_init(), FLA_Apply_QUD_UT_cntl_init(), FLA_Axpy_cntl_init(), FLA_Axpyt_cntl_init(), FLA_Bidiag_UT_cntl_init(), FLA_CAQR2_UT_cntl_init(), FLA_Chol_cntl_init(), FLA_Copy_cntl_init(), FLA_Copyr_cntl_init(), FLA_Copyt_cntl_init(), FLA_Eig_gest_cntl_init(), FLA_Gemm_cntl_init(), FLA_Gemv_cntl_init(), FLA_Hemm_cntl_init(), FLA_Her2k_cntl_init(), FLA_Herk_cntl_init(), FLA_Hess_UT_cntl_init(), FLA_LQ_UT_cntl_init(), FLA_LU_nopiv_cntl_init(), FLA_LU_piv_cntl_init(), FLA_Lyap_cntl_init(), FLA_QR2_UT_cntl_init(), FLA_QR_UT_cntl_init(), FLA_Scal_cntl_init(), FLA_Scalr_cntl_init(), FLA_SPDinv_cntl_init(), FLA_Sylv_cntl_init(), FLA_Symm_cntl_init(), FLA_Syr2k_cntl_init(), FLA_Syrk_cntl_init(), FLA_Transpose_cntl_init(), FLA_Tridiag_UT_cntl_init(), FLA_Trinv_cntl_init(), FLA_Trmm_cntl_init(), FLA_Trsm_cntl_init(), FLA_Trsv_cntl_init(), FLA_Ttmm_cntl_init(), and FLA_UDdate_UT_cntl_init().

Referenced by FLA_Cntl_init().

◆ FLA_Copy_cntl_finalize()

void FLA_Copy_cntl_finalize ( void  )
25 {
27 }
fla_copy_t * fla_copy_cntl_blas
Definition: FLA_Copy_cntl_init.c:13

References FLA_Cntl_obj_free(), and fla_copy_cntl_blas.

Referenced by FLA_Cntl_finalize_flamec().

◆ FLA_Copy_cntl_init()

void FLA_Copy_cntl_init ( void  )
16 {
17  // Create a control tree that assumes A and B are small.
19  FLA_SUBPROBLEM,
20  NULL,
21  NULL );
22 }
fla_copy_t * FLA_Cntl_copy_obj_create(FLA_Matrix_type matrix_type, int variant, fla_blocksize_t *blocksize, fla_copy_t *sub_copy)
Definition: FLA_Cntl_blas1.c:51

References FLA_Cntl_copy_obj_create(), and fla_copy_cntl_blas.

Referenced by FLA_Cntl_init_flamec().

◆ FLA_Copyr_cntl_finalize()

void FLA_Copyr_cntl_finalize ( void  )
26 {
28 }
fla_copyr_t * fla_copyr_cntl_blas
Definition: FLA_Copyr_cntl_init.c:13

References FLA_Cntl_obj_free(), and fla_copyr_cntl_blas.

Referenced by FLA_Cntl_finalize_flamec().

◆ FLA_Copyr_cntl_init()

void FLA_Copyr_cntl_init ( void  )
16 {
17  // Create a control tree that assumes A and B are small.
19  FLA_SUBPROBLEM,
20  NULL,
21  NULL,
22  NULL );
23 }
fla_copyr_t * FLA_Cntl_copyr_obj_create(FLA_Matrix_type matrix_type, int variant, fla_blocksize_t *blocksize, fla_copyr_t *sub_copyr, fla_copy_t *sub_copy)
Definition: FLA_Cntl_blas1.c:85

References FLA_Cntl_copyr_obj_create(), and fla_copyr_cntl_blas.

Referenced by FLA_Cntl_init_flamec().

◆ FLA_Copyt_cntl_finalize()

void FLA_Copyt_cntl_finalize ( void  )
25 {
27 }
fla_copyt_t * fla_copyt_cntl_blas
Definition: FLA_Copyt_cntl_init.c:13

References FLA_Cntl_obj_free(), and fla_copyt_cntl_blas.

Referenced by FLA_Cntl_finalize_flamec().

◆ FLA_Copyt_cntl_init()

void FLA_Copyt_cntl_init ( void  )
16 {
17  // Create a control tree that assumes A and B are small.
19  FLA_SUBPROBLEM,
20  NULL,
21  NULL );
22 }
fla_copyt_t * FLA_Cntl_copyt_obj_create(FLA_Matrix_type matrix_type, int variant, fla_blocksize_t *blocksize, fla_copyt_t *sub_copyt)
Definition: FLA_Cntl_blas1.c:68

References FLA_Cntl_copyt_obj_create(), and fla_copyt_cntl_blas.

Referenced by FLA_Cntl_init_flamec().

◆ FLA_Eig_gest_cntl_finalize()

void FLA_Eig_gest_cntl_finalize ( void  )
111 {
116 
118 }
fla_eig_gest_t * fla_eig_gest_nx_cntl
Definition: FLA_Eig_gest_cntl_init.c:21
fla_eig_gest_t * fla_eig_gest_nx_cntl_leaf
Definition: FLA_Eig_gest_cntl_init.c:23
fla_eig_gest_t * fla_eig_gest_ix_cntl
Definition: FLA_Eig_gest_cntl_init.c:20
fla_blocksize_t * fla_eig_gest_var1_bsize
Definition: FLA_Eig_gest_cntl_init.c:24
fla_eig_gest_t * fla_eig_gest_ix_cntl_leaf
Definition: FLA_Eig_gest_cntl_init.c:22

References FLA_Blocksize_free(), FLA_Cntl_obj_free(), fla_eig_gest_ix_cntl, fla_eig_gest_ix_cntl_leaf, fla_eig_gest_nx_cntl, fla_eig_gest_nx_cntl_leaf, and fla_eig_gest_var1_bsize.

Referenced by FLA_Cntl_finalize_flamec().

◆ FLA_Eig_gest_cntl_init()

void FLA_Eig_gest_cntl_init ( void  )
27 {
28  // Set blocksize with default values for conventional storage.
29  fla_eig_gest_var1_bsize = FLA_Query_blocksizes( FLA_DIMENSION_MIN );
30 
31  // Create a control tree to invoke the unblocked subproblem (inverse cases).
33 #ifdef FLA_ENABLE_EXTERNAL_LAPACK_FOR_SUBPROBLEMS
34  FLA_BLOCKED_EXTERN,
35 #else
36  FLA_UNB_OPT_VARIANT3,
37 #endif
38  NULL,
39  NULL,
40  NULL,
41  NULL,
42  NULL,
43  NULL,
44  NULL,
45  NULL,
46  NULL,
47  NULL,
48  NULL,
49  NULL,
50  NULL );
51 
52  // Create a control tree to invoke the unblocked subproblem (no inverse cases).
54 #ifdef FLA_ENABLE_EXTERNAL_LAPACK_FOR_SUBPROBLEMS
55  FLA_BLOCKED_EXTERN,
56 #else
57  FLA_UNB_OPT_VARIANT2,
58 #endif
59  NULL,
60  NULL,
61  NULL,
62  NULL,
63  NULL,
64  NULL,
65  NULL,
66  NULL,
67  NULL,
68  NULL,
69  NULL,
70  NULL,
71  NULL );
72 
73  // Create a control tree for large problems with no extra recursion
74  // (inverse cases).
76  FLA_BLOCKED_VARIANT4,
90 
91  // Create a control tree for large problems with no extra recursion
92  // (no inverse cases).
94  FLA_BLOCKED_VARIANT2,
108 }
fla_eig_gest_t * FLA_Cntl_eig_gest_obj_create(FLA_Matrix_type matrix_type, int variant, fla_blocksize_t *blocksize, fla_eig_gest_t *sub_eig_gest, fla_axpy_t *sub_axpy1, fla_axpy_t *sub_axpy2, fla_gemm_t *sub_gemm1, fla_gemm_t *sub_gemm2, fla_gemm_t *sub_gemm3, fla_hemm_t *sub_hemm, fla_her2k_t *sub_her2k, fla_trmm_t *sub_trmm1, fla_trmm_t *sub_trmm2, fla_trsm_t *sub_trsm1, fla_trsm_t *sub_trsm2)
Definition: FLA_Cntl_lapack.c:628
fla_axpy_t * fla_axpy_cntl_blas
Definition: FLA_Axpy_cntl_init.c:13
fla_hemm_t * fla_hemm_cntl_blas
Definition: FLA_Hemm_cntl_init.c:16
fla_her2k_t * fla_her2k_cntl_blas
Definition: FLA_Her2k_cntl_init.c:16
fla_gemm_t * fla_gemm_cntl_blas
Definition: FLA_Gemm_cntl_init.c:15
fla_trsm_t * fla_trsm_cntl_blas
Definition: FLA_Trsm_cntl_init.c:16
fla_trmm_t * fla_trmm_cntl_blas
Definition: FLA_Trmm_cntl_init.c:16

References fla_axpy_cntl_blas, FLA_Cntl_eig_gest_obj_create(), fla_eig_gest_ix_cntl, fla_eig_gest_ix_cntl_leaf, fla_eig_gest_nx_cntl, fla_eig_gest_nx_cntl_leaf, fla_eig_gest_var1_bsize, fla_gemm_cntl_blas, fla_hemm_cntl_blas, fla_her2k_cntl_blas, FLA_Query_blocksizes(), fla_trmm_cntl_blas, and fla_trsm_cntl_blas.

Referenced by FLA_Cntl_init_flamec().

◆ FLA_Gemm_cntl_finalize()

void FLA_Gemm_cntl_finalize ( void  )
190 {
192 
196 
209 
219 
223 }
fla_gemm_t * fla_gemm_cntl_mp_ip
Definition: FLA_Gemm_cntl_init.c:21
fla_gemm_t * fla_gemm_cntl_op_pb_bb
Definition: FLA_Gemm_cntl_init.c:28
fla_gemm_t * fla_gemm_cntl_pm_bp_bb
Definition: FLA_Gemm_cntl_init.c:32
fla_gemm_t * fla_gemm_cntl_mm_op
Definition: FLA_Gemm_cntl_init.c:40
fla_gemm_t * fla_gemm_cntl_mp_pb_bb
Definition: FLA_Gemm_cntl_init.c:30
fla_gemm_t * fla_gemm_cntl_pm_bp
Definition: FLA_Gemm_cntl_init.c:31
fla_gemm_t * fla_gemm_cntl_mm_op_bp
Definition: FLA_Gemm_cntl_init.c:41
fla_gemm_t * fla_gemm_cntl_op_pb
Definition: FLA_Gemm_cntl_init.c:27
fla_gemm_t * fla_gemm_cntl_mm_op_bp_bb
Definition: FLA_Gemm_cntl_init.c:42
fla_gemm_t * fla_gemm_cntl_blas
Definition: FLA_Gemm_cntl_init.c:15
fla_gemm_t * fla_gemm_cntl_pm_ip_bb
Definition: FLA_Gemm_cntl_init.c:26
fla_gemm_t * fla_gemm_cntl_pm_ip
Definition: FLA_Gemm_cntl_init.c:25
fla_blocksize_t * fla_gemm_var3_bsize
Definition: FLA_Gemm_cntl_init.c:45
fla_gemm_t * fla_gemm_cntl_mp_ip_bb
Definition: FLA_Gemm_cntl_init.c:22
fla_gemm_t * fla_gemm_cntl_pb_bb
Definition: FLA_Gemm_cntl_init.c:17
fla_gemm_t * fla_gemm_cntl_mm_mp_ip
Definition: FLA_Gemm_cntl_init.c:38
fla_blocksize_t * fla_gemm_var1_bsize
Definition: FLA_Gemm_cntl_init.c:44
fla_gemm_t * fla_gemm_cntl_mm_mp_ip_bb
Definition: FLA_Gemm_cntl_init.c:39
fla_gemm_t * fla_gemm_cntl_bp_bb
Definition: FLA_Gemm_cntl_init.c:18
fla_gemm_t * fla_gemm_cntl_ip_bb
Definition: FLA_Gemm_cntl_init.c:19
fla_gemm_t * fla_gemm_cntl_op_bp
Definition: FLA_Gemm_cntl_init.c:23
fla_gemm_t * fla_gemm_cntl_mm_pm
Definition: FLA_Gemm_cntl_init.c:34
fla_gemm_t * fla_gemm_cntl_mp_pb
Definition: FLA_Gemm_cntl_init.c:29
fla_gemm_t * fla_gemm_cntl_mm_pm_ip
Definition: FLA_Gemm_cntl_init.c:35
fla_gemm_t * fla_gemm_cntl_mm_pm_ip_bb
Definition: FLA_Gemm_cntl_init.c:36
fla_gemm_t * fla_gemm_cntl_op_bp_bb
Definition: FLA_Gemm_cntl_init.c:24
fla_gemm_t * fla_gemm_cntl_mm_mp
Definition: FLA_Gemm_cntl_init.c:37
fla_blocksize_t * fla_gemm_var5_bsize
Definition: FLA_Gemm_cntl_init.c:46

References FLA_Blocksize_free(), FLA_Cntl_obj_free(), fla_gemm_cntl_blas, fla_gemm_cntl_bp_bb, fla_gemm_cntl_ip_bb, fla_gemm_cntl_mm_mp, fla_gemm_cntl_mm_mp_ip, fla_gemm_cntl_mm_mp_ip_bb, fla_gemm_cntl_mm_op, fla_gemm_cntl_mm_op_bp, fla_gemm_cntl_mm_op_bp_bb, fla_gemm_cntl_mm_pm, fla_gemm_cntl_mm_pm_ip, fla_gemm_cntl_mm_pm_ip_bb, fla_gemm_cntl_mp_ip, fla_gemm_cntl_mp_ip_bb, fla_gemm_cntl_mp_pb, fla_gemm_cntl_mp_pb_bb, fla_gemm_cntl_op_bp, fla_gemm_cntl_op_bp_bb, fla_gemm_cntl_op_pb, fla_gemm_cntl_op_pb_bb, fla_gemm_cntl_pb_bb, fla_gemm_cntl_pm_bp, fla_gemm_cntl_pm_bp_bb, fla_gemm_cntl_pm_ip, fla_gemm_cntl_pm_ip_bb, fla_gemm_var1_bsize, fla_gemm_var3_bsize, and fla_gemm_var5_bsize.

Referenced by FLA_Cntl_finalize_flamec().

◆ FLA_Gemm_cntl_init()

void FLA_Gemm_cntl_init ( void  )
49 {
50  // Set blocksizes with default values for conventional storage.
51  fla_gemm_var1_bsize = FLA_Query_blocksizes( FLA_DIMENSION_MIN );
52  fla_gemm_var3_bsize = FLA_Query_blocksizes( FLA_DIMENSION_MIN );
53  fla_gemm_var5_bsize = FLA_Query_blocksizes( FLA_DIMENSION_MIN );
54 
55  // Create a control tree node that executes a gemm subproblem.
57  FLA_SUBPROBLEM,
58  NULL,
59  NULL,
60  NULL );
61 
62  // Create control trees for situations where one dimension is large.
64  FLA_BLOCKED_VARIANT1,
69  FLA_BLOCKED_VARIANT3,
74  FLA_BLOCKED_VARIANT5,
78 
79  // Create control trees for situations where two dimensions are large.
81  FLA_BLOCKED_VARIANT1,
86  FLA_BLOCKED_VARIANT1,
91  FLA_BLOCKED_VARIANT1,
96  FLA_BLOCKED_VARIANT1,
101  FLA_BLOCKED_VARIANT3,
106  FLA_BLOCKED_VARIANT3,
111  FLA_BLOCKED_VARIANT3,
116  FLA_BLOCKED_VARIANT3,
121  FLA_BLOCKED_VARIANT5,
126  FLA_BLOCKED_VARIANT5,
131  FLA_BLOCKED_VARIANT5,
136  FLA_BLOCKED_VARIANT5,
140 
141  // Create control trees for situations where all dimensions are large.
143  FLA_BLOCKED_VARIANT1,
148  FLA_BLOCKED_VARIANT1,
153  FLA_BLOCKED_VARIANT1,
158  FLA_BLOCKED_VARIANT3,
163  FLA_BLOCKED_VARIANT3,
168  FLA_BLOCKED_VARIANT3,
173  FLA_BLOCKED_VARIANT5,
178  FLA_BLOCKED_VARIANT5,
183  FLA_BLOCKED_VARIANT5,
187 }
fla_gemm_t * FLA_Cntl_gemm_obj_create(FLA_Matrix_type matrix_type, int variant, fla_blocksize_t *blocksize, fla_scal_t *sub_scal, fla_gemm_t *sub_gemm)
Definition: FLA_Cntl_blas3.c:17
fla_scal_t * fla_scal_cntl_blas
Definition: FLA_Scal_cntl_init.c:13

References FLA_Cntl_gemm_obj_create(), fla_gemm_cntl_blas, fla_gemm_cntl_bp_bb, fla_gemm_cntl_ip_bb, fla_gemm_cntl_mm_mp, fla_gemm_cntl_mm_mp_ip, fla_gemm_cntl_mm_mp_ip_bb, fla_gemm_cntl_mm_op, fla_gemm_cntl_mm_op_bp, fla_gemm_cntl_mm_op_bp_bb, fla_gemm_cntl_mm_pm, fla_gemm_cntl_mm_pm_ip, fla_gemm_cntl_mm_pm_ip_bb, fla_gemm_cntl_mp_ip, fla_gemm_cntl_mp_ip_bb, fla_gemm_cntl_mp_pb, fla_gemm_cntl_mp_pb_bb, fla_gemm_cntl_op_bp, fla_gemm_cntl_op_bp_bb, fla_gemm_cntl_op_pb, fla_gemm_cntl_op_pb_bb, fla_gemm_cntl_pb_bb, fla_gemm_cntl_pm_bp, fla_gemm_cntl_pm_bp_bb, fla_gemm_cntl_pm_ip, fla_gemm_cntl_pm_ip_bb, fla_gemm_var1_bsize, fla_gemm_var3_bsize, fla_gemm_var5_bsize, FLA_Query_blocksizes(), and fla_scal_cntl_blas.

Referenced by FLA_Cntl_init_flamec().

◆ FLA_Gemv_cntl_finalize()

void FLA_Gemv_cntl_finalize ( void  )
26 {
28 }
fla_gemv_t * fla_gemv_cntl_blas
Definition: FLA_Gemv_cntl_init.c:13

References FLA_Cntl_obj_free(), and fla_gemv_cntl_blas.

Referenced by FLA_Cntl_finalize_flamec().

◆ FLA_Gemv_cntl_init()

void FLA_Gemv_cntl_init ( void  )
16 {
17  // Create a control tree that assumes A is small.
19  FLA_SUBPROBLEM,
20  NULL,
21  NULL,
22  NULL );
23 }
fla_gemv_t * FLA_Cntl_gemv_obj_create(FLA_Matrix_type matrix_type, int variant, fla_blocksize_t *blocksize, fla_scal_t *sub_scal, fla_gemv_t *sub_gemv)
Definition: FLA_Cntl_blas2.c:17

References FLA_Cntl_gemv_obj_create(), and fla_gemv_cntl_blas.

Referenced by FLA_Cntl_init_flamec().

◆ FLA_Hemm_cntl_finalize()

void FLA_Hemm_cntl_finalize ( void  )
68 {
70 
74 
77 }
fla_hemm_t * fla_hemm_cntl_blas
Definition: FLA_Hemm_cntl_init.c:16
fla_hemm_t * fla_hemm_cntl_mp
Definition: FLA_Hemm_cntl_init.c:18
fla_blocksize_t * fla_hemm_var9_bsize
Definition: FLA_Hemm_cntl_init.c:21
fla_blocksize_t * fla_hemm_var1_bsize
Definition: FLA_Hemm_cntl_init.c:20
fla_hemm_t * fla_hemm_cntl_bp
Definition: FLA_Hemm_cntl_init.c:17
fla_hemm_t * fla_hemm_cntl_mm
Definition: FLA_Hemm_cntl_init.c:19

References FLA_Blocksize_free(), FLA_Cntl_obj_free(), fla_hemm_cntl_blas, fla_hemm_cntl_bp, fla_hemm_cntl_mm, fla_hemm_cntl_mp, fla_hemm_var1_bsize, and fla_hemm_var9_bsize.

Referenced by FLA_Cntl_finalize_flamec().

◆ FLA_Hemm_cntl_init()

void FLA_Hemm_cntl_init ( void  )
24 {
25  // Set blocksizes with default values for conventional storage.
26  fla_hemm_var1_bsize = FLA_Query_blocksizes( FLA_DIMENSION_MIN );
27  fla_hemm_var9_bsize = FLA_Query_blocksizes( FLA_DIMENSION_MIN );
28 
29  // Create a control tree that assumes A and B are b x b blocks.
31  FLA_SUBPROBLEM,
32  NULL,
33  NULL,
34  NULL,
35  NULL,
36  NULL );
37 
38  // Create a control tree that assumes A is a block and B is a panel.
40  FLA_BLOCKED_VARIANT9,
44  NULL,
45  NULL );
46 
47  // Create a control tree that assumes A is large and B is a panel.
49  FLA_BLOCKED_VARIANT1,
55 
56  // Create a control tree that assumes A and B are both large.
58  FLA_BLOCKED_VARIANT9,
62  NULL,
63  NULL );
64 
65 }
fla_hemm_t * FLA_Cntl_hemm_obj_create(FLA_Matrix_type matrix_type, int variant, fla_blocksize_t *blocksize, fla_scal_t *sub_scal, fla_hemm_t *sub_hemm, fla_gemm_t *sub_gemm1, fla_gemm_t *sub_gemm2)
Definition: FLA_Cntl_blas3.c:36
fla_scal_t * fla_scal_cntl_blas
Definition: FLA_Scal_cntl_init.c:13
fla_gemm_t * fla_gemm_cntl_blas
Definition: FLA_Gemm_cntl_init.c:15

References FLA_Cntl_hemm_obj_create(), fla_gemm_cntl_blas, fla_hemm_cntl_blas, fla_hemm_cntl_bp, fla_hemm_cntl_mm, fla_hemm_cntl_mp, fla_hemm_var1_bsize, fla_hemm_var9_bsize, FLA_Query_blocksizes(), and fla_scal_cntl_blas.

Referenced by FLA_Cntl_init_flamec().

◆ FLA_Her2k_cntl_finalize()

void FLA_Her2k_cntl_finalize ( void  )
67 {
69 
73 
76 }
fla_her2k_t * fla_her2k_cntl_op
Definition: FLA_Her2k_cntl_init.c:18
fla_her2k_t * fla_her2k_cntl_blas
Definition: FLA_Her2k_cntl_init.c:16
fla_her2k_t * fla_her2k_cntl_mm
Definition: FLA_Her2k_cntl_init.c:19
fla_blocksize_t * fla_her2k_var3_bsize
Definition: FLA_Her2k_cntl_init.c:20
fla_her2k_t * fla_her2k_cntl_ip
Definition: FLA_Her2k_cntl_init.c:17
fla_blocksize_t * fla_her2k_var9_bsize
Definition: FLA_Her2k_cntl_init.c:21

References FLA_Blocksize_free(), FLA_Cntl_obj_free(), fla_her2k_cntl_blas, fla_her2k_cntl_ip, fla_her2k_cntl_mm, fla_her2k_cntl_op, fla_her2k_var3_bsize, and fla_her2k_var9_bsize.

Referenced by FLA_Cntl_finalize_flamec().

◆ FLA_Her2k_cntl_init()

void FLA_Her2k_cntl_init ( void  )
24 {
25  // Set blocksizes with default values for conventional storage.
26  fla_her2k_var3_bsize = FLA_Query_blocksizes( FLA_DIMENSION_MIN );
27  fla_her2k_var9_bsize = FLA_Query_blocksizes( FLA_DIMENSION_MIN );
28 
29  // Create a control tree that assumes A and B are b x b blocks.
31  FLA_SUBPROBLEM,
32  NULL,
33  NULL,
34  NULL,
35  NULL,
36  NULL );
37 
38  // Create a control tree that assumes A and B form an inner panel product.
40  FLA_BLOCKED_VARIANT9,
44  NULL,
45  NULL );
46 
47  // Create a control tree that assumes A and B form an outer panel product.
49  FLA_BLOCKED_VARIANT3,
55 
56  // Create a control tree that assumes A and B are both large.
58  FLA_BLOCKED_VARIANT9,
62  NULL,
63  NULL );
64 }
fla_her2k_t * FLA_Cntl_her2k_obj_create(FLA_Matrix_type matrix_type, int variant, fla_blocksize_t *blocksize, fla_scalr_t *sub_scalr, fla_her2k_t *sub_her2k, fla_gemm_t *sub_gemm1, fla_gemm_t *sub_gemm2)
Definition: FLA_Cntl_blas3.c:80
fla_gemm_t * fla_gemm_cntl_blas
Definition: FLA_Gemm_cntl_init.c:15
fla_scalr_t * fla_scalr_cntl_blas
Definition: FLA_Scalr_cntl_init.c:13

References FLA_Cntl_her2k_obj_create(), fla_gemm_cntl_blas, fla_her2k_cntl_blas, fla_her2k_cntl_ip, fla_her2k_cntl_mm, fla_her2k_cntl_op, fla_her2k_var3_bsize, fla_her2k_var9_bsize, FLA_Query_blocksizes(), and fla_scalr_cntl_blas.

Referenced by FLA_Cntl_init_flamec().

◆ FLA_Herk_cntl_finalize()

void FLA_Herk_cntl_finalize ( void  )
63 {
65 
69 
72 }
fla_blocksize_t * fla_herk_var2_bsize
Definition: FLA_Herk_cntl_init.c:20
fla_blocksize_t * fla_herk_var5_bsize
Definition: FLA_Herk_cntl_init.c:21
fla_herk_t * fla_herk_cntl_ip
Definition: FLA_Herk_cntl_init.c:17
fla_herk_t * fla_herk_cntl_blas
Definition: FLA_Herk_cntl_init.c:16
fla_herk_t * fla_herk_cntl_mm
Definition: FLA_Herk_cntl_init.c:19
fla_herk_t * fla_herk_cntl_op
Definition: FLA_Herk_cntl_init.c:18

References FLA_Blocksize_free(), FLA_Cntl_obj_free(), fla_herk_cntl_blas, fla_herk_cntl_ip, fla_herk_cntl_mm, fla_herk_cntl_op, fla_herk_var2_bsize, and fla_herk_var5_bsize.

Referenced by FLA_Cntl_finalize_flamec().

◆ FLA_Herk_cntl_init()

void FLA_Herk_cntl_init ( void  )
24 {
25  // Set blocksizes with default values for conventional storage.
26  fla_herk_var2_bsize = FLA_Query_blocksizes( FLA_DIMENSION_MIN );
27  fla_herk_var5_bsize = FLA_Query_blocksizes( FLA_DIMENSION_MIN );
28 
29  // Create a control tree that assumes A is a b x b block.
31  FLA_SUBPROBLEM,
32  NULL,
33  NULL,
34  NULL,
35  NULL );
36 
37  // Create a control tree that assumes A * A' forms an inner panel product.
39  FLA_BLOCKED_VARIANT5,
43  NULL );
44 
45  // Create a control tree that assumes A * A' forms an outer panel product.
47  FLA_BLOCKED_VARIANT2,
52 
53  // Create a control tree that assumes A is large.
55  FLA_BLOCKED_VARIANT5,
59  NULL );
60 }
fla_herk_t * FLA_Cntl_herk_obj_create(FLA_Matrix_type matrix_type, int variant, fla_blocksize_t *blocksize, fla_scalr_t *sub_scalr, fla_herk_t *sub_herk, fla_gemm_t *sub_gemm)
Definition: FLA_Cntl_blas3.c:59
fla_gemm_t * fla_gemm_cntl_blas
Definition: FLA_Gemm_cntl_init.c:15
fla_scalr_t * fla_scalr_cntl_blas
Definition: FLA_Scalr_cntl_init.c:13

References FLA_Cntl_herk_obj_create(), fla_gemm_cntl_blas, fla_herk_cntl_blas, fla_herk_cntl_ip, fla_herk_cntl_mm, fla_herk_cntl_op, fla_herk_var2_bsize, fla_herk_var5_bsize, FLA_Query_blocksizes(), and fla_scalr_cntl_blas.

Referenced by FLA_Cntl_init_flamec().

◆ FLA_Hess_UT_cntl_finalize()

void FLA_Hess_UT_cntl_finalize ( void  )
30 {
32 
34 }
fla_blocksize_t * fla_hessut_bsize_leaf
Definition: FLA_Hess_UT_cntl_init.c:15
fla_hessut_t * fla_hessut_cntl_leaf
Definition: FLA_Hess_UT_cntl_init.c:13

References FLA_Blocksize_free(), FLA_Cntl_obj_free(), fla_hessut_bsize_leaf, and fla_hessut_cntl_leaf.

Referenced by FLA_Cntl_finalize_flamec().

◆ FLA_Hess_UT_cntl_init()

void FLA_Hess_UT_cntl_init ( void  )
18 {
19  // Set blocksizes with default values for conventional storage.
20  fla_hessut_bsize_leaf = FLA_Query_blocksizes( FLA_DIMENSION_MIN );
21  FLA_Blocksize_scale( fla_hessut_bsize_leaf, FLA_HESS_INNER_TO_OUTER_B_RATIO );
22 
23  // Create a control tree for small-to-medium sequential problems.
25  FLA_BLOCKED_VARIANT5,
27 }
fla_hessut_t * FLA_Cntl_hessut_obj_create(FLA_Matrix_type matrix_type, int variant, fla_blocksize_t *blocksize)
Definition: FLA_Cntl_lapack.c:232

References FLA_Blocksize_scale(), FLA_Cntl_hessut_obj_create(), fla_hessut_bsize_leaf, fla_hessut_cntl_leaf, and FLA_Query_blocksizes().

Referenced by FLA_Cntl_init_flamec().

◆ FLA_LQ_UT_cntl_finalize()

void FLA_LQ_UT_cntl_finalize ( void  )
43 {
46 
48 }
fla_lqut_t * fla_lqut_cntl_unb
Definition: FLA_LQ_UT_cntl_init.c:15
fla_blocksize_t * fla_lqut_var1_bsize_leaf
Definition: FLA_LQ_UT_cntl_init.c:18
fla_lqut_t * fla_lqut_cntl_leaf
Definition: FLA_LQ_UT_cntl_init.c:16

References FLA_Blocksize_free(), FLA_Cntl_obj_free(), fla_lqut_cntl_leaf, fla_lqut_cntl_unb, and fla_lqut_var1_bsize_leaf.

Referenced by FLA_Cntl_finalize_flamec().

◆ FLA_LQ_UT_cntl_init()

void FLA_LQ_UT_cntl_init ( void  )
21 {
22  // Set blocksizes with default values for conventional storage.
23  fla_lqut_var1_bsize_leaf = FLA_Query_blocksizes( FLA_DIMENSION_MIN );
24  FLA_Blocksize_scale( fla_lqut_var1_bsize_leaf, FLA_LQ_INNER_TO_OUTER_B_RATIO );
25 
26  // Create a control tree to invoke unblocked variant 2.
28  FLA_UNB_OPT_VARIANT2,
29  NULL,
30  NULL,
31  NULL );
32 
33  // Create a control tree for small-to-medium sequential problems and
34  // as the means to compute on FLASH blocks.
36  FLA_BLOCKED_VARIANT1,
40 }
fla_lqut_t * FLA_Cntl_lqut_obj_create(FLA_Matrix_type matrix_type, int variant, fla_blocksize_t *blocksize, fla_lqut_t *sub_lqut, fla_apqut_t *sub_apqut)
Definition: FLA_Cntl_lapack.c:178
fla_apqut_t * fla_apqut_cntl_leaf
Definition: FLA_Apply_Q_UT_cntl_init.c:19

References fla_apqut_cntl_leaf, FLA_Blocksize_scale(), FLA_Cntl_lqut_obj_create(), fla_lqut_cntl_leaf, fla_lqut_cntl_unb, fla_lqut_var1_bsize_leaf, and FLA_Query_blocksizes().

Referenced by FLA_Cntl_init_flamec().

◆ FLA_LU_nopiv_cntl_finalize()

void FLA_LU_nopiv_cntl_finalize ( void  )
86 {
91 
94 }
fla_lu_t * fla_lu_nopiv_cntl_leaf
Definition: FLA_LU_nopiv_cntl_init.c:20
fla_lu_t * fla_lu_nopiv_cntl2
Definition: FLA_LU_nopiv_cntl_init.c:17
fla_blocksize_t * fla_lu_nopiv_var5_bsize_in
Definition: FLA_LU_nopiv_cntl_init.c:22
fla_lu_t * fla_lu_nopiv_cntl
Definition: FLA_LU_nopiv_cntl_init.c:16
fla_lu_t * fla_lu_nopiv_cntl_in
Definition: FLA_LU_nopiv_cntl_init.c:19
fla_blocksize_t * fla_lu_nopiv_var5_bsize
Definition: FLA_LU_nopiv_cntl_init.c:21

References FLA_Blocksize_free(), FLA_Cntl_obj_free(), fla_lu_nopiv_cntl, fla_lu_nopiv_cntl2, fla_lu_nopiv_cntl_in, fla_lu_nopiv_cntl_leaf, fla_lu_nopiv_var5_bsize, and fla_lu_nopiv_var5_bsize_in.

Referenced by FLA_Cntl_finalize_flamec().

◆ FLA_LU_nopiv_cntl_init()

void FLA_LU_nopiv_cntl_init ( void  )
26 {
27  // Set blocksizes with default values for conventional storage.
28  fla_lu_nopiv_var5_bsize = FLA_Query_blocksizes( FLA_DIMENSION_MIN );
31 
32  // Create a control tree to invoke unblocked variant 1.
34  FLA_UNB_OPT_VARIANT5,
35  NULL,
36  NULL,
37  NULL,
38  NULL,
39  NULL,
40  NULL,
41  NULL,
42  NULL,
43  NULL );
44 
45  // Create a control tree for small subproblems.
47  FLA_BLOCKED_VARIANT5,
55  NULL,
56  NULL );
57 
58  // Create a control tree for larger problems with one level of recursion.
60  FLA_BLOCKED_VARIANT5,
68  NULL,
69  NULL );
70 
71  // Create a control tree for large problems with no extra recursion.
73  FLA_BLOCKED_VARIANT5,
81  NULL,
82  NULL );
83 }
fla_lu_t * FLA_Cntl_lu_obj_create(FLA_Matrix_type matrix_type, int variant, fla_blocksize_t *blocksize, fla_lu_t *sub_lu, fla_gemm_t *sub_gemm1, fla_gemm_t *sub_gemm2, fla_gemm_t *sub_gemm3, fla_trsm_t *sub_trsm1, fla_trsm_t *sub_trsm2, fla_appiv_t *sub_appiv1, fla_appiv_t *sub_appiv2)
Definition: FLA_Cntl_lapack.c:40
fla_gemm_t * fla_gemm_cntl_blas
Definition: FLA_Gemm_cntl_init.c:15
fla_trsm_t * fla_trsm_cntl_blas
Definition: FLA_Trsm_cntl_init.c:16
double fla_lu_nopiv_var5_in_to_ou_bsize_ratio
Definition: FLA_LU_nopiv_cntl_init.c:23

References FLA_Blocksize_create_copy(), FLA_Blocksize_scale(), FLA_Cntl_lu_obj_create(), fla_gemm_cntl_blas, fla_lu_nopiv_cntl, fla_lu_nopiv_cntl2, fla_lu_nopiv_cntl_in, fla_lu_nopiv_cntl_leaf, fla_lu_nopiv_var5_bsize, fla_lu_nopiv_var5_bsize_in, fla_lu_nopiv_var5_in_to_ou_bsize_ratio, FLA_Query_blocksizes(), and fla_trsm_cntl_blas.

Referenced by FLA_Cntl_init_flamec().

◆ FLA_LU_piv_cntl_finalize()

void FLA_LU_piv_cntl_finalize ( void  )
91 {
96 
99 }
fla_blocksize_t * fla_lu_piv_var5_bsize_in
Definition: FLA_LU_piv_cntl_init.c:23
fla_lu_t * fla_lu_piv_cntl
Definition: FLA_LU_piv_cntl_init.c:17
fla_blocksize_t * fla_lu_piv_var5_bsize
Definition: FLA_LU_piv_cntl_init.c:22
fla_lu_t * fla_lu_piv_cntl_leaf
Definition: FLA_LU_piv_cntl_init.c:21
fla_lu_t * fla_lu_piv_cntl_in
Definition: FLA_LU_piv_cntl_init.c:20
fla_lu_t * fla_lu_piv_cntl2
Definition: FLA_LU_piv_cntl_init.c:18

References FLA_Blocksize_free(), FLA_Cntl_obj_free(), fla_lu_piv_cntl, fla_lu_piv_cntl2, fla_lu_piv_cntl_in, fla_lu_piv_cntl_leaf, fla_lu_piv_var5_bsize, and fla_lu_piv_var5_bsize_in.

Referenced by FLA_Cntl_finalize_flamec().

◆ FLA_LU_piv_cntl_init()

void FLA_LU_piv_cntl_init ( void  )
27 {
28  // Set blocksizes with default values for conventional storage.
29  fla_lu_piv_var5_bsize = FLA_Query_blocksizes( FLA_DIMENSION_MIN );
32 
33  // Create a control tree to invoke LAPACK.
35 #ifdef FLA_ENABLE_EXTERNAL_LAPACK_FOR_SUBPROBLEMS
36  FLA_BLOCKED_EXTERN,
37 #else
38  FLA_UNB_OPT_VARIANT4,
39 #endif
40  NULL,
41  NULL,
42  NULL,
43  NULL,
44  NULL,
45  NULL,
46  NULL,
47  NULL,
48  NULL );
49 
50  // Create a control tree for small subproblems.
52  FLA_BLOCKED_VARIANT5,
62 
63  // Create a control tree for larger problems with one level of recursion.
65  FLA_BLOCKED_VARIANT5,
75 
76  // Create a control tree for large problems with no extra recursion.
78  FLA_BLOCKED_VARIANT5,
88 }
double fla_lu_piv_var5_in_to_ou_bsize_ratio
Definition: FLA_LU_piv_cntl_init.c:24
fla_gemm_t * fla_gemm_cntl_blas
Definition: FLA_Gemm_cntl_init.c:15
fla_trsm_t * fla_trsm_cntl_blas
Definition: FLA_Trsm_cntl_init.c:16
fla_appiv_t * fla_appiv_cntl_leaf
Definition: FLA_Apply_pivots_cntl_init.c:13

References fla_appiv_cntl_leaf, FLA_Blocksize_create_copy(), FLA_Blocksize_scale(), FLA_Cntl_lu_obj_create(), fla_gemm_cntl_blas, fla_lu_piv_cntl, fla_lu_piv_cntl2, fla_lu_piv_cntl_in, fla_lu_piv_cntl_leaf, fla_lu_piv_var5_bsize, fla_lu_piv_var5_bsize_in, fla_lu_piv_var5_in_to_ou_bsize_ratio, FLA_Query_blocksizes(), and fla_trsm_cntl_blas.

Referenced by FLA_Cntl_init_flamec().

◆ FLA_Lyap_cntl_finalize()

void FLA_Lyap_cntl_finalize ( void  )
54 {
57 
59 }
fla_lyap_t * fla_lyap_cntl_leaf
Definition: FLA_Lyap_cntl_init.c:19
fla_blocksize_t * fla_lyap_bsize
Definition: FLA_Lyap_cntl_init.c:21
fla_lyap_t * fla_lyap_cntl
Definition: FLA_Lyap_cntl_init.c:20

References FLA_Blocksize_free(), FLA_Cntl_obj_free(), fla_lyap_bsize, fla_lyap_cntl, and fla_lyap_cntl_leaf.

Referenced by FLA_Cntl_finalize_flamec().

◆ FLA_Lyap_cntl_init()

void FLA_Lyap_cntl_init ( void  )
24 {
25  // Set blocksize with default value for conventional storage.
26  fla_lyap_bsize = FLA_Query_blocksizes( FLA_DIMENSION_MIN );
27 
28  // Create a control tree to invoke an unblocked variant.
30  FLA_UNBLOCKED_VARIANT1,
31  NULL,
32  NULL,
33  NULL,
34  NULL,
35  NULL,
36  NULL,
37  NULL,
38  NULL );
39 
40  // Create a control tree to invoke a blocked variant.
42  FLA_BLOCKED_VARIANT1,
51 }
fla_lyap_t * FLA_Cntl_lyap_obj_create(FLA_Matrix_type matrix_type, int variant, fla_blocksize_t *blocksize, fla_scal_t *sub_scal, fla_lyap_t *sub_lyap, fla_sylv_t *sub_sylv, fla_gemm_t *sub_gemm1, fla_gemm_t *sub_gemm2, fla_hemm_t *sub_hemm, fla_her2k_t *sub_her2k)
Definition: FLA_Cntl_lapack.c:417
fla_hemm_t * fla_hemm_cntl_blas
Definition: FLA_Hemm_cntl_init.c:16
fla_scal_t * fla_scal_cntl_blas
Definition: FLA_Scal_cntl_init.c:13
fla_her2k_t * fla_her2k_cntl_blas
Definition: FLA_Her2k_cntl_init.c:16
fla_sylv_t * fla_sylv_cntl
Definition: FLA_Sylv_cntl_init.c:17
fla_gemm_t * fla_gemm_cntl_blas
Definition: FLA_Gemm_cntl_init.c:15

References FLA_Cntl_lyap_obj_create(), fla_gemm_cntl_blas, fla_hemm_cntl_blas, fla_her2k_cntl_blas, fla_lyap_bsize, fla_lyap_cntl, fla_lyap_cntl_leaf, FLA_Query_blocksizes(), fla_scal_cntl_blas, and fla_sylv_cntl.

Referenced by FLA_Cntl_init_flamec().

◆ FLA_QR2_UT_cntl_finalize()

void FLA_QR2_UT_cntl_finalize ( void  )
55 {
58 
60 }
fla_blocksize_t * fla_qr2ut_var1_bsize
Definition: FLA_QR2_UT_cntl_init.c:20
fla_qr2ut_t * fla_qr2ut_cntl_leaf
Definition: FLA_QR2_UT_cntl_init.c:19
fla_qr2ut_t * fla_qr2ut_cntl_unb
Definition: FLA_QR2_UT_cntl_init.c:18

References FLA_Blocksize_free(), FLA_Cntl_obj_free(), fla_qr2ut_cntl_leaf, fla_qr2ut_cntl_unb, and fla_qr2ut_var1_bsize.

Referenced by FLA_Cntl_finalize_flamec().

◆ FLA_QR2_UT_cntl_init()

void FLA_QR2_UT_cntl_init ( void  )
23 {
24  // Set the blocksize to the default value for conventional storage,
25  // but scaled down.
26  fla_qr2ut_var1_bsize = FLA_Query_blocksizes( FLA_DIMENSION_MIN );
27  FLA_Blocksize_scale( fla_qr2ut_var1_bsize, FLA_QR_INNER_TO_OUTER_B_RATIO );
28 
29  // Create a control tree to invoke unblocked variant 1.
31  FLA_UNB_OPT_VARIANT1,
32  NULL,
33  NULL,
34  NULL,
35  NULL,
36  NULL,
37  NULL,
38  NULL );
39 
40  // Create a control tree for small-to-medium sequential problems and
41  // as the means to compute on FLASH blocks.
43  FLA_BLOCKED_VARIANT1,
51 
52 }
fla_qr2ut_t * FLA_Cntl_qr2ut_obj_create(FLA_Matrix_type matrix_type, int variant, fla_blocksize_t *blocksize, fla_qr2ut_t *sub_qr2ut, fla_gemm_t *sub_gemm1, fla_gemm_t *sub_gemm2, fla_trsm_t *sub_trsm, fla_copy_t *sub_copy, fla_axpy_t *sub_axpy)
Definition: FLA_Cntl_lapack.c:109
fla_axpy_t * fla_axpy_cntl_blas
Definition: FLA_Axpy_cntl_init.c:13
fla_gemm_t * fla_gemm_cntl_blas
Definition: FLA_Gemm_cntl_init.c:15
fla_trsm_t * fla_trsm_cntl_blas
Definition: FLA_Trsm_cntl_init.c:16
fla_copy_t * fla_copy_cntl_blas
Definition: FLA_Copy_cntl_init.c:13

References fla_axpy_cntl_blas, FLA_Blocksize_scale(), FLA_Cntl_qr2ut_obj_create(), fla_copy_cntl_blas, fla_gemm_cntl_blas, fla_qr2ut_cntl_leaf, fla_qr2ut_cntl_unb, fla_qr2ut_var1_bsize, FLA_Query_blocksizes(), and fla_trsm_cntl_blas.

Referenced by FLA_Cntl_init_flamec().

◆ FLA_QR_UT_cntl_finalize()

void FLA_QR_UT_cntl_finalize ( void  )
60 {
63 
66 
68 }
fla_qrut_t * fla_qrut_cntl_unb
Definition: FLA_QR_UT_cntl_init.c:15
fla_qrut_t * fla_qrut_piv_cntl_unb
Definition: FLA_QR_UT_cntl_init.c:18
fla_qrut_t * fla_qrut_cntl_leaf
Definition: FLA_QR_UT_cntl_init.c:16
fla_blocksize_t * fla_qrut_var1_bsize_leaf
Definition: FLA_QR_UT_cntl_init.c:21
fla_qrut_t * fla_qrut_piv_cntl_leaf
Definition: FLA_QR_UT_cntl_init.c:19

References FLA_Blocksize_free(), FLA_Cntl_obj_free(), fla_qrut_cntl_leaf, fla_qrut_cntl_unb, fla_qrut_piv_cntl_leaf, fla_qrut_piv_cntl_unb, and fla_qrut_var1_bsize_leaf.

Referenced by FLA_Cntl_finalize_flamec().

◆ FLA_QR_UT_cntl_init()

void FLA_QR_UT_cntl_init ( void  )
24 {
25  // Set blocksizes with default values for conventional storage.
26  fla_qrut_var1_bsize_leaf = FLA_Query_blocksizes( FLA_DIMENSION_MIN );
27  FLA_Blocksize_scale( fla_qrut_var1_bsize_leaf, FLA_QR_INNER_TO_OUTER_B_RATIO );
28 
29  // Create a control tree to invoke unblocked variant 2.
31  FLA_UNB_OPT_VARIANT2,
32  NULL,
33  NULL,
34  NULL );
35 
36  // Create a control tree for small-to-medium sequential problems and
37  // as the means to compute on FLASH blocks.
39  FLA_BLOCKED_VARIANT1,
43 
44  // Create a control tree to invoke unblocked variant 1.
46  FLA_UNBLOCKED_VARIANT2,
47  NULL,
48  NULL,
49  NULL );
50 
51  // Create a control tree for QR_UT_piv.
53  FLA_BLOCKED_VARIANT2,
57 }
fla_qrut_t * FLA_Cntl_qrut_obj_create(FLA_Matrix_type matrix_type, int variant, fla_blocksize_t *blocksize, fla_qrut_t *sub_qrut, fla_apqut_t *sub_apqut)
Definition: FLA_Cntl_lapack.c:90
fla_apqut_t * fla_apqut_cntl_leaf
Definition: FLA_Apply_Q_UT_cntl_init.c:19

References fla_apqut_cntl_leaf, FLA_Blocksize_scale(), FLA_Cntl_qrut_obj_create(), fla_qrut_cntl_leaf, fla_qrut_cntl_unb, fla_qrut_piv_cntl_leaf, fla_qrut_piv_cntl_unb, fla_qrut_var1_bsize_leaf, and FLA_Query_blocksizes().

Referenced by FLA_Cntl_init_flamec().

◆ FLA_Scal_cntl_finalize()

void FLA_Scal_cntl_finalize ( void  )
25 {
27 }
fla_scal_t * fla_scal_cntl_blas
Definition: FLA_Scal_cntl_init.c:13

References FLA_Cntl_obj_free(), and fla_scal_cntl_blas.

Referenced by FLA_Cntl_finalize_flamec().

◆ FLA_Scal_cntl_init()

void FLA_Scal_cntl_init ( void  )
16 {
17  // Create a control tree that assumes A is small.
19  FLA_SUBPROBLEM,
20  NULL,
21  NULL );
22 }
fla_scal_t * FLA_Cntl_scal_obj_create(FLA_Matrix_type matrix_type, int variant, fla_blocksize_t *blocksize, fla_scal_t *sub_scal)
Definition: FLA_Cntl_blas1.c:104

References FLA_Cntl_scal_obj_create(), and fla_scal_cntl_blas.

Referenced by FLA_Cntl_init_flamec().

◆ FLA_Scalr_cntl_finalize()

void FLA_Scalr_cntl_finalize ( void  )
26 {
28 }
fla_scalr_t * fla_scalr_cntl_blas
Definition: FLA_Scalr_cntl_init.c:13

References FLA_Cntl_obj_free(), and fla_scalr_cntl_blas.

Referenced by FLA_Cntl_finalize_flamec().

◆ FLA_Scalr_cntl_init()

void FLA_Scalr_cntl_init ( void  )
16 {
17  // Create a control tree that assumes A is small.
19  FLA_SUBPROBLEM,
20  NULL,
21  NULL,
22  NULL );
23 }
fla_scalr_t * FLA_Cntl_scalr_obj_create(FLA_Matrix_type matrix_type, int variant, fla_blocksize_t *blocksize, fla_scalr_t *sub_scalr, fla_scal_t *sub_scal)
Definition: FLA_Cntl_blas1.c:121

References FLA_Cntl_scalr_obj_create(), and fla_scalr_cntl_blas.

Referenced by FLA_Cntl_init_flamec().

◆ FLA_SPDinv_cntl_finalize()

void FLA_SPDinv_cntl_finalize ( void  )
38 {
40 
42 }
fla_blocksize_t * fla_spdinv_size_cutoff
Definition: FLA_SPDinv_cntl_init.c:18
fla_spdinv_t * fla_spdinv_cntl
Definition: FLA_SPDinv_cntl_init.c:17

References FLA_Blocksize_free(), FLA_Cntl_obj_free(), fla_spdinv_cntl, and fla_spdinv_size_cutoff.

Referenced by FLA_Cntl_finalize_flamec().

◆ FLA_SPDinv_cntl_init()

void FLA_SPDinv_cntl_init ( void  )
21 {
22  // Rather than embed a blocksize, we store the cutoff matrix size for
23  // switching from external routines to internal FLAME variants.
24  fla_spdinv_size_cutoff = FLA_Query_blocksizes( FLA_DIMENSION_MIN );
25 
26  // Initialize a control tree node that calls the top-level Cholesky
27  // factorization, Trinagular inversion, and Triangular-transpose matrix
28  // multiply control trees.
30  FLA_BLOCKED_VARIANT1,
34  fla_ttmm_cntl );
35 }
fla_spdinv_t * FLA_Cntl_spdinv_obj_create(FLA_Matrix_type matrix_type, int variant, fla_blocksize_t *blocksize, fla_chol_t *sub_chol, fla_trinv_t *sub_trinv, fla_ttmm_t *sub_ttmm)
Definition: FLA_Cntl_lapack.c:446
fla_chol_t * fla_chol_cntl
Definition: FLA_Chol_cntl_init.c:16
fla_ttmm_t * fla_ttmm_cntl
Definition: FLA_Ttmm_cntl_init.c:18
fla_trinv_t * fla_trinv_cntl
Definition: FLA_Trinv_cntl_init.c:18

References fla_chol_cntl, FLA_Cntl_spdinv_obj_create(), FLA_Query_blocksizes(), fla_spdinv_cntl, fla_spdinv_size_cutoff, fla_trinv_cntl, and fla_ttmm_cntl.

Referenced by FLA_Cntl_init_flamec().

◆ FLA_Sylv_cntl_finalize()

void FLA_Sylv_cntl_finalize ( void  )
79 {
83 
85 }
fla_sylv_t * fla_sylv_cntl_leaf
Definition: FLA_Sylv_cntl_init.c:15
fla_sylv_t * fla_sylv_cntl
Definition: FLA_Sylv_cntl_init.c:17
fla_blocksize_t * fla_sylv_bsize
Definition: FLA_Sylv_cntl_init.c:18
fla_sylv_t * fla_sylv_cntl_mb
Definition: FLA_Sylv_cntl_init.c:16

References FLA_Blocksize_free(), FLA_Cntl_obj_free(), fla_sylv_bsize, fla_sylv_cntl, fla_sylv_cntl_leaf, and fla_sylv_cntl_mb.

Referenced by FLA_Cntl_finalize_flamec().

◆ FLA_Sylv_cntl_init()

void FLA_Sylv_cntl_init ( void  )
21 {
22  // Set blocksize with default value for conventional storage.
23  fla_sylv_bsize = FLA_Query_blocksizes( FLA_DIMENSION_MIN );
24 
25  // Create a control tree to invoke LAPACK.
27 #ifdef FLA_ENABLE_EXTERNAL_LAPACK_FOR_SUBPROBLEMS
28  FLA_BLOCKED_EXTERN,
29 #else
30  FLA_UNB_OPT_VARIANT1,
31 #endif
32  NULL,
33  NULL,
34  NULL,
35  NULL,
36  NULL,
37  NULL,
38  NULL,
39  NULL,
40  NULL,
41  NULL,
42  NULL,
43  NULL );
44 
45  // Create a control tree to invoke variant 15.
47  FLA_BLOCKED_VARIANT15,
50  NULL,
51  NULL,
53  NULL,
54  NULL,
55  NULL,
56  NULL,
57  NULL,
58  NULL,
59  NULL );
60 
61  // Create a control tree to invoke variant 17.
63  FLA_BLOCKED_VARIANT17,
66  NULL,
67  NULL,
69  NULL,
70  NULL,
71  NULL,
72  NULL,
73  NULL,
74  NULL,
75  NULL );
76 }
fla_sylv_t * FLA_Cntl_sylv_obj_create(FLA_Matrix_type matrix_type, int variant, fla_blocksize_t *blocksize, fla_sylv_t *sub_sylv1, fla_sylv_t *sub_sylv2, fla_sylv_t *sub_sylv3, fla_gemm_t *sub_gemm1, fla_gemm_t *sub_gemm2, fla_gemm_t *sub_gemm3, fla_gemm_t *sub_gemm4, fla_gemm_t *sub_gemm5, fla_gemm_t *sub_gemm6, fla_gemm_t *sub_gemm7, fla_gemm_t *sub_gemm8)
Definition: FLA_Cntl_lapack.c:380
fla_gemm_t * fla_gemm_cntl_blas
Definition: FLA_Gemm_cntl_init.c:15

References FLA_Cntl_sylv_obj_create(), fla_gemm_cntl_blas, FLA_Query_blocksizes(), fla_sylv_bsize, fla_sylv_cntl, fla_sylv_cntl_leaf, and fla_sylv_cntl_mb.

Referenced by FLA_Cntl_init_flamec().

◆ FLA_Symm_cntl_finalize()

void FLA_Symm_cntl_finalize ( void  )
68 {
70 
74 
77 }
fla_symm_t * fla_symm_cntl_bp
Definition: FLA_Symm_cntl_init.c:17
fla_blocksize_t * fla_symm_var1_bsize
Definition: FLA_Symm_cntl_init.c:20
fla_blocksize_t * fla_symm_var9_bsize
Definition: FLA_Symm_cntl_init.c:21
fla_symm_t * fla_symm_cntl_blas
Definition: FLA_Symm_cntl_init.c:16
fla_symm_t * fla_symm_cntl_mp
Definition: FLA_Symm_cntl_init.c:18
fla_symm_t * fla_symm_cntl_mm
Definition: FLA_Symm_cntl_init.c:19

References FLA_Blocksize_free(), FLA_Cntl_obj_free(), fla_symm_cntl_blas, fla_symm_cntl_bp, fla_symm_cntl_mm, fla_symm_cntl_mp, fla_symm_var1_bsize, and fla_symm_var9_bsize.

Referenced by FLA_Cntl_finalize_flamec().

◆ FLA_Symm_cntl_init()

void FLA_Symm_cntl_init ( void  )
24 {
25  // Set blocksizes with default values for conventional storage.
26  fla_symm_var1_bsize = FLA_Query_blocksizes( FLA_DIMENSION_MIN );
27  fla_symm_var9_bsize = FLA_Query_blocksizes( FLA_DIMENSION_MIN );
28 
29  // Create a control tree that assumes A and B are b x b blocks.
31  FLA_SUBPROBLEM,
32  NULL,
33  NULL,
34  NULL,
35  NULL,
36  NULL );
37 
38  // Create a control tree that assumes A is a block and B is a panel.
40  FLA_BLOCKED_VARIANT9,
44  NULL,
45  NULL );
46 
47  // Create a control tree that assumes A is large and B is a panel.
49  FLA_BLOCKED_VARIANT1,
55 
56  // Create a control tree that assumes A and B are both large.
58  FLA_BLOCKED_VARIANT9,
62  NULL,
63  NULL );
64 
65 }
fla_symm_t * FLA_Cntl_symm_obj_create(FLA_Matrix_type matrix_type, int variant, fla_blocksize_t *blocksize, fla_scal_t *sub_scal, fla_symm_t *sub_symm, fla_gemm_t *sub_gemm1, fla_gemm_t *sub_gemm2)
Definition: FLA_Cntl_blas3.c:103
fla_scal_t * fla_scal_cntl_blas
Definition: FLA_Scal_cntl_init.c:13
fla_gemm_t * fla_gemm_cntl_blas
Definition: FLA_Gemm_cntl_init.c:15

References FLA_Cntl_symm_obj_create(), fla_gemm_cntl_blas, FLA_Query_blocksizes(), fla_scal_cntl_blas, fla_symm_cntl_blas, fla_symm_cntl_bp, fla_symm_cntl_mm, fla_symm_cntl_mp, fla_symm_var1_bsize, and fla_symm_var9_bsize.

Referenced by FLA_Cntl_init_flamec().

◆ FLA_Syr2k_cntl_finalize()

void FLA_Syr2k_cntl_finalize ( void  )
67 {
69 
73 
76 }
fla_blocksize_t * fla_syr2k_var3_bsize
Definition: FLA_Syr2k_cntl_init.c:20
fla_syr2k_t * fla_syr2k_cntl_ip
Definition: FLA_Syr2k_cntl_init.c:17
fla_syr2k_t * fla_syr2k_cntl_mm
Definition: FLA_Syr2k_cntl_init.c:19
fla_syr2k_t * fla_syr2k_cntl_blas
Definition: FLA_Syr2k_cntl_init.c:16
fla_syr2k_t * fla_syr2k_cntl_op
Definition: FLA_Syr2k_cntl_init.c:18
fla_blocksize_t * fla_syr2k_var9_bsize
Definition: FLA_Syr2k_cntl_init.c:21

References FLA_Blocksize_free(), FLA_Cntl_obj_free(), fla_syr2k_cntl_blas, fla_syr2k_cntl_ip, fla_syr2k_cntl_mm, fla_syr2k_cntl_op, fla_syr2k_var3_bsize, and fla_syr2k_var9_bsize.

Referenced by FLA_Cntl_finalize_flamec().

◆ FLA_Syr2k_cntl_init()

void FLA_Syr2k_cntl_init ( void  )
24 {
25  // Set blocksizes with default values for conventional storage.
26  fla_syr2k_var3_bsize = FLA_Query_blocksizes( FLA_DIMENSION_MIN );
27  fla_syr2k_var9_bsize = FLA_Query_blocksizes( FLA_DIMENSION_MIN );
28 
29  // Create a control tree that assumes A and B are b x b blocks.
31  FLA_SUBPROBLEM,
32  NULL,
33  NULL,
34  NULL,
35  NULL,
36  NULL );
37 
38  // Create a control tree that assumes A and B form an inner panel product.
40  FLA_BLOCKED_VARIANT9,
44  NULL,
45  NULL );
46 
47  // Create a control tree that assumes A and B form an outer panel product.
49  FLA_BLOCKED_VARIANT3,
55 
56  // Create a control tree that assumes A and B are both large.
58  FLA_BLOCKED_VARIANT9,
62  NULL,
63  NULL );
64 }
fla_syr2k_t * FLA_Cntl_syr2k_obj_create(FLA_Matrix_type matrix_type, int variant, fla_blocksize_t *blocksize, fla_scalr_t *sub_scalr, fla_syr2k_t *sub_syr2k, fla_gemm_t *sub_gemm1, fla_gemm_t *sub_gemm2)
Definition: FLA_Cntl_blas3.c:147
fla_gemm_t * fla_gemm_cntl_blas
Definition: FLA_Gemm_cntl_init.c:15
fla_scalr_t * fla_scalr_cntl_blas
Definition: FLA_Scalr_cntl_init.c:13

References FLA_Cntl_syr2k_obj_create(), fla_gemm_cntl_blas, FLA_Query_blocksizes(), fla_scalr_cntl_blas, fla_syr2k_cntl_blas, fla_syr2k_cntl_ip, fla_syr2k_cntl_mm, fla_syr2k_cntl_op, fla_syr2k_var3_bsize, and fla_syr2k_var9_bsize.

Referenced by FLA_Cntl_init_flamec().

◆ FLA_Syrk_cntl_finalize()

void FLA_Syrk_cntl_finalize ( void  )
63 {
65 
69 
72 }
fla_blocksize_t * fla_syrk_var2_bsize
Definition: FLA_Syrk_cntl_init.c:20
fla_syrk_t * fla_syrk_cntl_ip
Definition: FLA_Syrk_cntl_init.c:17
fla_blocksize_t * fla_syrk_var5_bsize
Definition: FLA_Syrk_cntl_init.c:21
fla_syrk_t * fla_syrk_cntl_op
Definition: FLA_Syrk_cntl_init.c:18
fla_syrk_t * fla_syrk_cntl_mm
Definition: FLA_Syrk_cntl_init.c:19
fla_syrk_t * fla_syrk_cntl_blas
Definition: FLA_Syrk_cntl_init.c:16

References FLA_Blocksize_free(), FLA_Cntl_obj_free(), fla_syrk_cntl_blas, fla_syrk_cntl_ip, fla_syrk_cntl_mm, fla_syrk_cntl_op, fla_syrk_var2_bsize, and fla_syrk_var5_bsize.

Referenced by FLA_Cntl_finalize_flamec().

◆ FLA_Syrk_cntl_init()

void FLA_Syrk_cntl_init ( void  )
24 {
25  // Set blocksizes with default values for conventional storage.
26  fla_syrk_var2_bsize = FLA_Query_blocksizes( FLA_DIMENSION_MIN );
27  fla_syrk_var5_bsize = FLA_Query_blocksizes( FLA_DIMENSION_MIN );
28 
29  // Create a control tree that assumes A is a b x b block.
31  FLA_SUBPROBLEM,
32  NULL,
33  NULL,
34  NULL,
35  NULL );
36 
37  // Create a control tree that assumes A * A' forms an inner panel product.
39  FLA_BLOCKED_VARIANT5,
43  NULL );
44 
45  // Create a control tree that assumes A * A' forms an outer panel product.
47  FLA_BLOCKED_VARIANT2,
52 
53  // Create a control tree that assumes A is large.
55  FLA_BLOCKED_VARIANT5,
59  NULL );
60 }
fla_syrk_t * FLA_Cntl_syrk_obj_create(FLA_Matrix_type matrix_type, int variant, fla_blocksize_t *blocksize, fla_scalr_t *sub_scalr, fla_syrk_t *sub_syrk, fla_gemm_t *sub_gemm)
Definition: FLA_Cntl_blas3.c:126
fla_gemm_t * fla_gemm_cntl_blas
Definition: FLA_Gemm_cntl_init.c:15
fla_scalr_t * fla_scalr_cntl_blas
Definition: FLA_Scalr_cntl_init.c:13

References FLA_Cntl_syrk_obj_create(), fla_gemm_cntl_blas, FLA_Query_blocksizes(), fla_scalr_cntl_blas, fla_syrk_cntl_blas, fla_syrk_cntl_ip, fla_syrk_cntl_mm, fla_syrk_cntl_op, fla_syrk_var2_bsize, and fla_syrk_var5_bsize.

Referenced by FLA_Cntl_init_flamec().

◆ FLA_Transpose_cntl_finalize()

void FLA_Transpose_cntl_finalize ( void  )
55 {
60 
63 }
fla_swap_t * fla_swap_cntl_panel
Definition: FLA_Transpose_cntl_init.c:13
fla_tpose_t * fla_tpose_cntl_unb
Definition: FLA_Transpose_cntl_init.c:17
fla_blocksize_t * fla_tpose_swap_bsize
Definition: FLA_Transpose_cntl_init.c:19
fla_tpose_t * fla_tpose_cntl
Definition: FLA_Transpose_cntl_init.c:16
fla_swap_t * fla_swap_cntl_blas
Definition: FLA_Transpose_cntl_init.c:14
fla_blocksize_t * fla_tpose_bsize
Definition: FLA_Transpose_cntl_init.c:18

References FLA_Blocksize_free(), FLA_Cntl_obj_free(), fla_swap_cntl_blas, fla_swap_cntl_panel, fla_tpose_bsize, fla_tpose_cntl, fla_tpose_cntl_unb, and fla_tpose_swap_bsize.

Referenced by FLA_Cntl_finalize_flamec().

◆ FLA_Transpose_cntl_init()

void FLA_Transpose_cntl_init ( void  )
22 {
23  // Set blocksizes based on libgoto query.
24  fla_tpose_bsize = FLA_Query_blocksizes( FLA_DIMENSION_MIN );
25  fla_tpose_swap_bsize = FLA_Query_blocksizes( FLA_DIMENSION_MIN );
26 
27  // Create a control tree that performs unblocked variant 2 transposition.
29  FLA_UNBLOCKED_VARIANT2,
30  NULL,
31  NULL,
32  NULL );
33 
34  // Create a control tree that invokes an external implementation of swap.
36  FLA_SUBPROBLEM,
37  NULL,
38  NULL );
39 
40  // Create a control tree that invokes unblocked variant 2 of swap.
42  FLA_BLOCKED_VARIANT2,
45 
46  // Create a control tree that assumes a large matrix argument.
48  FLA_BLOCKED_VARIANT2,
52 }
fla_swap_t * FLA_Cntl_swap_obj_create(FLA_Matrix_type matrix_type, int variant, fla_blocksize_t *blocksize, fla_swap_t *sub_swap)
Definition: FLA_Cntl_blas1.c:140
fla_tpose_t * FLA_Cntl_tpose_obj_create(FLA_Matrix_type matrix_type, int variant, fla_blocksize_t *blocksize, fla_tpose_t *sub_trans, fla_swap_t *sub_swap)
Definition: FLA_Cntl_blas1.c:157

References FLA_Cntl_swap_obj_create(), FLA_Cntl_tpose_obj_create(), FLA_Query_blocksizes(), fla_swap_cntl_blas, fla_swap_cntl_panel, fla_tpose_bsize, fla_tpose_cntl, fla_tpose_cntl_unb, and fla_tpose_swap_bsize.

Referenced by FLA_Cntl_init_flamec().

◆ FLA_Tridiag_UT_cntl_finalize()

void FLA_Tridiag_UT_cntl_finalize ( void  )
42 {
46 
48 }
fla_tridiagut_t * fla_tridiagut_cntl_plain
Definition: FLA_Tridiag_UT_cntl_init.c:15
fla_blocksize_t * fla_tridiagut_bsize_leaf
Definition: FLA_Tridiag_UT_cntl_init.c:17
fla_tridiagut_t * fla_tridiagut_cntl_nofus
Definition: FLA_Tridiag_UT_cntl_init.c:14
fla_tridiagut_t * fla_tridiagut_cntl_fused
Definition: FLA_Tridiag_UT_cntl_init.c:13

References FLA_Blocksize_free(), FLA_Cntl_obj_free(), fla_tridiagut_bsize_leaf, fla_tridiagut_cntl_fused, fla_tridiagut_cntl_nofus, and fla_tridiagut_cntl_plain.

Referenced by FLA_Cntl_finalize_flamec().

◆ FLA_Tridiag_UT_cntl_init()

void FLA_Tridiag_UT_cntl_init ( void  )
20 {
21  // Set blocksizes with default values for conventional storage.
22  fla_tridiagut_bsize_leaf = FLA_Query_blocksizes( FLA_DIMENSION_MIN );
23  FLA_Blocksize_scale( fla_tridiagut_bsize_leaf, FLA_TRIDIAG_INNER_TO_OUTER_B_RATIO );
24 
25  // Create a control tree that uses fused subproblems.
27  FLA_BLK_FUS_VARIANT3,
29 
30  // Create a control tree that does not used any fusing.
32  FLA_BLOCKED_VARIANT3,
34 
35  // Create a control tree that does not used any re-arrangement in house.
37  FLA_BLOCKED_VARIANT1,
39 }
fla_tridiagut_t * FLA_Cntl_tridiagut_obj_create(FLA_Matrix_type matrix_type, int variant, fla_blocksize_t *blocksize)
Definition: FLA_Cntl_lapack.c:247

References FLA_Blocksize_scale(), FLA_Cntl_tridiagut_obj_create(), FLA_Query_blocksizes(), fla_tridiagut_bsize_leaf, fla_tridiagut_cntl_fused, fla_tridiagut_cntl_nofus, and fla_tridiagut_cntl_plain.

Referenced by FLA_Cntl_init_flamec().

◆ FLA_Trinv_cntl_finalize()

void FLA_Trinv_cntl_finalize ( void  )
53 {
56 
58 }
fla_blocksize_t * fla_trinv_var3_bsize
Definition: FLA_Trinv_cntl_init.c:19
fla_trinv_t * fla_trinv_cntl_leaf
Definition: FLA_Trinv_cntl_init.c:17
fla_trinv_t * fla_trinv_cntl
Definition: FLA_Trinv_cntl_init.c:18

References FLA_Blocksize_free(), FLA_Cntl_obj_free(), fla_trinv_cntl, fla_trinv_cntl_leaf, and fla_trinv_var3_bsize.

Referenced by FLA_Cntl_finalize_flamec().

◆ FLA_Trinv_cntl_init()

void FLA_Trinv_cntl_init ( void  )
22 {
23  // Set blocksize with default value for conventional storage.
24  fla_trinv_var3_bsize = FLA_Query_blocksizes( FLA_DIMENSION_MIN );
25  //fla_trinv_var3_bsize = FLA_Blocksize_create( 192, 192, 192, 192 );
26 
27  // Create a control tree to invoke LAPACK.
29 #ifdef FLA_ENABLE_EXTERNAL_LAPACK_FOR_SUBPROBLEMS
30  FLA_BLOCKED_EXTERN,
31 #else
32  FLA_UNB_OPT_VARIANT3,
33 #endif
34  NULL,
35  NULL,
36  NULL,
37  NULL,
38  NULL,
39  NULL );
40 
41  // Create a control tree to invoke variant 3.
43  FLA_BLOCKED_VARIANT3,
50 }
fla_trinv_t * FLA_Cntl_trinv_obj_create(FLA_Matrix_type matrix_type, int variant, fla_blocksize_t *blocksize, fla_trinv_t *sub_trinv, fla_trmm_t *sub_trmm, fla_trsm_t *sub_trsm1, fla_trsm_t *sub_trsm2, fla_gemm_t *sub_gemm)
Definition: FLA_Cntl_lapack.c:277
fla_gemm_t * fla_gemm_cntl_blas
Definition: FLA_Gemm_cntl_init.c:15
fla_trsm_t * fla_trsm_cntl_blas
Definition: FLA_Trsm_cntl_init.c:16
fla_trmm_t * fla_trmm_cntl_blas
Definition: FLA_Trmm_cntl_init.c:16

References FLA_Cntl_trinv_obj_create(), fla_gemm_cntl_blas, FLA_Query_blocksizes(), fla_trinv_cntl, fla_trinv_cntl_leaf, fla_trinv_var3_bsize, fla_trmm_cntl_blas, and fla_trsm_cntl_blas.

Referenced by FLA_Cntl_init_flamec().

◆ FLA_Trmm_cntl_finalize()

void FLA_Trmm_cntl_finalize ( void  )
63 {
65 
69 
72 }
fla_trmm_t * fla_trmm_cntl_mm
Definition: FLA_Trmm_cntl_init.c:19
fla_trmm_t * fla_trmm_cntl_bp
Definition: FLA_Trmm_cntl_init.c:17
fla_trmm_t * fla_trmm_cntl_blas
Definition: FLA_Trmm_cntl_init.c:16
fla_blocksize_t * fla_trmm_var1_bsize
Definition: FLA_Trmm_cntl_init.c:20
fla_blocksize_t * fla_trmm_var3_bsize
Definition: FLA_Trmm_cntl_init.c:21
fla_trmm_t * fla_trmm_cntl_mp
Definition: FLA_Trmm_cntl_init.c:18

References FLA_Blocksize_free(), FLA_Cntl_obj_free(), fla_trmm_cntl_blas, fla_trmm_cntl_bp, fla_trmm_cntl_mm, fla_trmm_cntl_mp, fla_trmm_var1_bsize, and fla_trmm_var3_bsize.

Referenced by FLA_Cntl_finalize_flamec().

◆ FLA_Trmm_cntl_init()

void FLA_Trmm_cntl_init ( void  )
24 {
25  // Set blocksizes with default values for conventional storage.
26  fla_trmm_var1_bsize = FLA_Query_blocksizes( FLA_DIMENSION_MIN );
27  fla_trmm_var3_bsize = FLA_Query_blocksizes( FLA_DIMENSION_MIN );
28 
29  // Create a control tree that assumes A and B are b x b blocks.
31  FLA_SUBPROBLEM,
32  NULL,
33  NULL,
34  NULL,
35  NULL );
36 
37  // Create a control tree that assumes A is a block and B is a panel.
39  FLA_BLOCKED_VARIANT3,
43  NULL );
44 
45  // Create a control tree that assumes A is large and B is a panel.
47  FLA_BLOCKED_VARIANT1,
52 
53  // Create a control tree that assumes A and B are both large.
55  FLA_BLOCKED_VARIANT3,
59  NULL );
60 }
fla_trmm_t * FLA_Cntl_trmm_obj_create(FLA_Matrix_type matrix_type, int variant, fla_blocksize_t *blocksize, fla_scal_t *sub_scal, fla_trmm_t *sub_trmm, fla_gemm_t *sub_gemm)
Definition: FLA_Cntl_blas3.c:170
fla_scal_t * fla_scal_cntl_blas
Definition: FLA_Scal_cntl_init.c:13
fla_gemm_t * fla_gemm_cntl_blas
Definition: FLA_Gemm_cntl_init.c:15

References FLA_Cntl_trmm_obj_create(), fla_gemm_cntl_blas, FLA_Query_blocksizes(), fla_scal_cntl_blas, fla_trmm_cntl_blas, fla_trmm_cntl_bp, fla_trmm_cntl_mm, fla_trmm_cntl_mp, fla_trmm_var1_bsize, and fla_trmm_var3_bsize.

Referenced by FLA_Cntl_init_flamec().

◆ FLA_Trsm_cntl_finalize()

void FLA_Trsm_cntl_finalize ( void  )
63 {
65 
69 
72 }
fla_blocksize_t * fla_trsm_var3_bsize
Definition: FLA_Trsm_cntl_init.c:21
fla_trsm_t * fla_trsm_cntl_bp
Definition: FLA_Trsm_cntl_init.c:17
fla_trsm_t * fla_trsm_cntl_mm
Definition: FLA_Trsm_cntl_init.c:19
fla_trsm_t * fla_trsm_cntl_blas
Definition: FLA_Trsm_cntl_init.c:16
fla_blocksize_t * fla_trsm_var2_bsize
Definition: FLA_Trsm_cntl_init.c:20
fla_trsm_t * fla_trsm_cntl_mp
Definition: FLA_Trsm_cntl_init.c:18

References FLA_Blocksize_free(), FLA_Cntl_obj_free(), fla_trsm_cntl_blas, fla_trsm_cntl_bp, fla_trsm_cntl_mm, fla_trsm_cntl_mp, fla_trsm_var2_bsize, and fla_trsm_var3_bsize.

Referenced by FLA_Cntl_finalize_flamec().

◆ FLA_Trsm_cntl_init()

void FLA_Trsm_cntl_init ( void  )
24 {
25  // Set blocksizes with default values for conventional storage.
26  fla_trsm_var2_bsize = FLA_Query_blocksizes( FLA_DIMENSION_MIN );
27  fla_trsm_var3_bsize = FLA_Query_blocksizes( FLA_DIMENSION_MIN );
28 
29  // Create a control tree that assumes A and B are b x b blocks.
31  FLA_SUBPROBLEM,
32  NULL,
33  NULL,
34  NULL,
35  NULL );
36 
37  // Create a control tree that assumes A is a block and B is a panel.
39  FLA_BLOCKED_VARIANT3,
43  NULL );
44 
45  // Create a control tree that assumes A is large and B is a panel.
47  FLA_BLOCKED_VARIANT2,
52 
53  // Create a control tree that assumes A and B are both large.
55  FLA_BLOCKED_VARIANT3,
59  NULL );
60 }
fla_trsm_t * FLA_Cntl_trsm_obj_create(FLA_Matrix_type matrix_type, int variant, fla_blocksize_t *blocksize, fla_scal_t *sub_scal, fla_trsm_t *sub_trsm, fla_gemm_t *sub_gemm)
Definition: FLA_Cntl_blas3.c:191
fla_scal_t * fla_scal_cntl_blas
Definition: FLA_Scal_cntl_init.c:13
fla_gemm_t * fla_gemm_cntl_blas
Definition: FLA_Gemm_cntl_init.c:15

References FLA_Cntl_trsm_obj_create(), fla_gemm_cntl_blas, FLA_Query_blocksizes(), fla_scal_cntl_blas, fla_trsm_cntl_blas, fla_trsm_cntl_bp, fla_trsm_cntl_mm, fla_trsm_cntl_mp, fla_trsm_var2_bsize, and fla_trsm_var3_bsize.

Referenced by FLA_Cntl_init_flamec().

◆ FLA_Trsv_cntl_finalize()

void FLA_Trsv_cntl_finalize ( void  )
26 {
28 }
fla_trsv_t * fla_trsv_cntl_blas
Definition: FLA_Trsv_cntl_init.c:13

References FLA_Cntl_obj_free(), and fla_trsv_cntl_blas.

Referenced by FLA_Cntl_finalize_flamec().

◆ FLA_Trsv_cntl_init()

void FLA_Trsv_cntl_init ( void  )
16 {
17  // Create a control tree that assumes A is small.
19  FLA_SUBPROBLEM,
20  NULL,
21  NULL,
22  NULL );
23 }
fla_trsv_t * FLA_Cntl_trsv_obj_create(FLA_Matrix_type matrix_type, int variant, fla_blocksize_t *blocksize, fla_trsv_t *sub_trsv, fla_gemv_t *sub_gemv)
Definition: FLA_Cntl_blas2.c:36

References FLA_Cntl_trsv_obj_create(), and fla_trsv_cntl_blas.

Referenced by FLA_Cntl_init_flamec().

◆ FLA_Ttmm_cntl_finalize()

void FLA_Ttmm_cntl_finalize ( void  )
50 {
53 
55 }
fla_blocksize_t * fla_ttmm_var1_bsize
Definition: FLA_Ttmm_cntl_init.c:19
fla_ttmm_t * fla_ttmm_cntl
Definition: FLA_Ttmm_cntl_init.c:18
fla_ttmm_t * fla_ttmm_cntl_leaf
Definition: FLA_Ttmm_cntl_init.c:17

References FLA_Blocksize_free(), FLA_Cntl_obj_free(), fla_ttmm_cntl, fla_ttmm_cntl_leaf, and fla_ttmm_var1_bsize.

Referenced by FLA_Cntl_finalize_flamec().

◆ FLA_Ttmm_cntl_init()

void FLA_Ttmm_cntl_init ( void  )
22 {
23  // Set blocksize with default value for conventional storage.
24  fla_ttmm_var1_bsize = FLA_Query_blocksizes( FLA_DIMENSION_MIN );
25 
26  // Create a control tree to invoke LAPACK.
28 #ifdef FLA_ENABLE_EXTERNAL_LAPACK_FOR_SUBPROBLEMS
29  FLA_BLOCKED_EXTERN,
30 #else
31  FLA_UNB_OPT_VARIANT2,
32 #endif
33  NULL,
34  NULL,
35  NULL,
36  NULL,
37  NULL );
38 
39  // Create a control tree to invoke variant 1.
41  FLA_BLOCKED_VARIANT1,
47 }
fla_ttmm_t * FLA_Cntl_ttmm_obj_create(FLA_Matrix_type matrix_type, int variant, fla_blocksize_t *blocksize, fla_ttmm_t *sub_ttmm, fla_herk_t *sub_herk, fla_trmm_t *sub_trmm, fla_gemm_t *sub_gemm)
Definition: FLA_Cntl_lapack.c:302
fla_gemm_t * fla_gemm_cntl_blas
Definition: FLA_Gemm_cntl_init.c:15
fla_trmm_t * fla_trmm_cntl_blas
Definition: FLA_Trmm_cntl_init.c:16
fla_herk_t * fla_herk_cntl_blas
Definition: FLA_Herk_cntl_init.c:16

References FLA_Cntl_ttmm_obj_create(), fla_gemm_cntl_blas, fla_herk_cntl_blas, FLA_Query_blocksizes(), fla_trmm_cntl_blas, fla_ttmm_cntl, fla_ttmm_cntl_leaf, and fla_ttmm_var1_bsize.

Referenced by FLA_Cntl_init_flamec().

◆ FLA_UDdate_UT_cntl_finalize()

void FLA_UDdate_UT_cntl_finalize ( void  )
44 {
47 
49 }
fla_uddateut_t * fla_uddateut_cntl_unb
Definition: FLA_UDdate_UT_cntl_init.c:15
fla_uddateut_t * fla_uddateut_cntl_leaf
Definition: FLA_UDdate_UT_cntl_init.c:16
fla_blocksize_t * fla_uddateut_var1_bsize
Definition: FLA_UDdate_UT_cntl_init.c:17

References FLA_Blocksize_free(), FLA_Cntl_obj_free(), fla_uddateut_cntl_leaf, fla_uddateut_cntl_unb, and fla_uddateut_var1_bsize.

Referenced by FLA_Cntl_finalize_flamec().

◆ FLA_UDdate_UT_cntl_init()

void FLA_UDdate_UT_cntl_init ( void  )
20 {
21  // Set the blocksize to the default value for conventional storage,
22  // but scaled down.
23  fla_uddateut_var1_bsize = FLA_Query_blocksizes( FLA_DIMENSION_MIN );
24  FLA_Blocksize_scale( fla_uddateut_var1_bsize, FLA_UDDATE_INNER_TO_OUTER_B_RATIO );
25 
26  // Create a control tree to invoke unblocked variant 1.
28  FLA_UNB_OPT_VARIANT1,
29  NULL,
30  NULL,
31  NULL );
32 
33  // Create a control tree for small-to-medium sequential problems and
34  // as the means to compute on FLASH blocks.
36  FLA_BLOCKED_VARIANT1,
40 
41 }
fla_uddateut_t * FLA_Cntl_uddateut_obj_create(FLA_Matrix_type matrix_type, int variant, fla_blocksize_t *blocksize, fla_uddateut_t *sub_uddateut, fla_apqudut_t *sub_apqudut)
Definition: FLA_Cntl_lapack.c:325
fla_apqudut_t * fla_apqudut_cntl_leaf
Definition: FLA_Apply_QUD_UT_cntl_init.c:18

References fla_apqudut_cntl_leaf, FLA_Blocksize_scale(), FLA_Cntl_uddateut_obj_create(), FLA_Query_blocksizes(), fla_uddateut_cntl_leaf, fla_uddateut_cntl_unb, and fla_uddateut_var1_bsize.

Referenced by FLA_Cntl_init_flamec().