libflame  revision_anchor
Functions
FLA_Cntl_init_flash.h File Reference

(r)

Go to the source code of this file.

Functions

void FLA_Cntl_init_flash (void)
 
void FLA_Cntl_finalize_flash (void)
 
void FLASH_Transpose_cntl_init (void)
 
void FLASH_Transpose_cntl_finalize (void)
 
void FLASH_Axpy_cntl_init (void)
 
void FLASH_Axpyt_cntl_init (void)
 
void FLASH_Copy_cntl_init (void)
 
void FLASH_Copyt_cntl_init (void)
 
void FLASH_Copyr_cntl_init (void)
 
void FLASH_Scal_cntl_init (void)
 
void FLASH_Scalr_cntl_init (void)
 
void FLASH_Axpy_cntl_finalize (void)
 
void FLASH_Axpyt_cntl_finalize (void)
 
void FLASH_Copy_cntl_finalize (void)
 
void FLASH_Copyt_cntl_finalize (void)
 
void FLASH_Copyr_cntl_finalize (void)
 
void FLASH_Scal_cntl_finalize (void)
 
void FLASH_Scalr_cntl_finalize (void)
 
void FLASH_Gemv_cntl_init (void)
 
void FLASH_Trsv_cntl_init (void)
 
void FLASH_Gemv_cntl_finalize (void)
 
void FLASH_Trsv_cntl_finalize (void)
 
void FLASH_Gemm_cntl_init (void)
 
void FLASH_Hemm_cntl_init (void)
 
void FLASH_Herk_cntl_init (void)
 
void FLASH_Her2k_cntl_init (void)
 
void FLASH_Symm_cntl_init (void)
 
void FLASH_Syrk_cntl_init (void)
 
void FLASH_Syr2k_cntl_init (void)
 
void FLASH_Trmm_cntl_init (void)
 
void FLASH_Trsm_cntl_init (void)
 
void FLASH_Gemm_cntl_finalize (void)
 
void FLASH_Hemm_cntl_finalize (void)
 
void FLASH_Herk_cntl_finalize (void)
 
void FLASH_Her2k_cntl_finalize (void)
 
void FLASH_Symm_cntl_finalize (void)
 
void FLASH_Syrk_cntl_finalize (void)
 
void FLASH_Syr2k_cntl_finalize (void)
 
void FLASH_Trmm_cntl_finalize (void)
 
void FLASH_Trsm_cntl_finalize (void)
 
void FLASH_Apply_pivots_cntl_init (void)
 
void FLASH_Chol_cntl_init (void)
 
void FLASH_LU_nopiv_cntl_init (void)
 
void FLASH_LU_piv_cntl_init (void)
 
void FLASH_LU_incpiv_cntl_init (void)
 
void FLASH_Trinv_cntl_init (void)
 
void FLASH_Ttmm_cntl_init (void)
 
void FLASH_SPDinv_cntl_init (void)
 
void FLASH_Sylv_cntl_init (void)
 
void FLASH_Lyap_cntl_init (void)
 
void FLASH_QR_UT_cntl_init (void)
 
void FLASH_QR2_UT_cntl_init (void)
 
void FLASH_LQ_UT_cntl_init (void)
 
void FLASH_CAQR2_UT_cntl_init (void)
 
void FLASH_UDdate_UT_cntl_init (void)
 
void FLASH_QR_UT_inc_cntl_init (void)
 
void FLASH_CAQR_UT_inc_cntl_init (void)
 
void FLASH_UDdate_UT_inc_cntl_init (void)
 
void FLASH_Apply_Q_UT_cntl_init (void)
 
void FLASH_Apply_Q2_UT_cntl_init (void)
 
void FLASH_Apply_CAQ2_UT_cntl_init (void)
 
void FLASH_Apply_QUD_UT_cntl_init (void)
 
void FLASH_Apply_Q_UT_inc_cntl_init (void)
 
void FLASH_Apply_CAQ_UT_inc_cntl_init (void)
 
void FLASH_Apply_QUD_UT_inc_cntl_init (void)
 
void FLASH_Eig_gest_cntl_init (void)
 
void FLASH_Apply_pivots_cntl_finalize (void)
 
void FLASH_Chol_cntl_finalize (void)
 
void FLASH_LU_nopiv_cntl_finalize (void)
 
void FLASH_LU_piv_cntl_finalize (void)
 
void FLASH_LU_incpiv_cntl_finalize (void)
 
void FLASH_Trinv_cntl_finalize (void)
 
void FLASH_Ttmm_cntl_finalize (void)
 
void FLASH_SPDinv_cntl_finalize (void)
 
void FLASH_Sylv_cntl_finalize (void)
 
void FLASH_Lyap_cntl_finalize (void)
 
void FLASH_QR_UT_cntl_finalize (void)
 
void FLASH_QR2_UT_cntl_finalize (void)
 
void FLASH_LQ_UT_cntl_finalize (void)
 
void FLASH_CAQR2_UT_cntl_finalize (void)
 
void FLASH_UDdate_UT_cntl_finalize (void)
 
void FLASH_QR_UT_inc_cntl_finalize (void)
 
void FLASH_CAQR_UT_inc_cntl_finalize (void)
 
void FLASH_UDdate_UT_inc_cntl_finalize (void)
 
void FLASH_Apply_Q_UT_cntl_finalize (void)
 
void FLASH_Apply_Q2_UT_cntl_finalize (void)
 
void FLASH_Apply_CAQ2_UT_cntl_finalize (void)
 
void FLASH_Apply_QUD_UT_cntl_finalize (void)
 
void FLASH_Apply_Q_UT_inc_cntl_finalize (void)
 
void FLASH_Apply_CAQ_UT_inc_cntl_finalize (void)
 
void FLASH_Apply_QUD_UT_inc_cntl_finalize (void)
 
void FLASH_Eig_gest_cntl_finalize (void)
 

Function Documentation

◆ FLA_Cntl_finalize_flash()

void FLA_Cntl_finalize_flash ( void  )

References FLASH_Apply_CAQ2_UT_cntl_finalize(), FLASH_Apply_CAQ_UT_inc_cntl_finalize(), FLASH_Apply_pivots_cntl_finalize(), FLASH_Apply_Q2_UT_cntl_finalize(), FLASH_Apply_Q_UT_cntl_finalize(), FLASH_Apply_Q_UT_inc_cntl_finalize(), FLASH_Apply_QUD_UT_cntl_finalize(), FLASH_Apply_QUD_UT_inc_cntl_finalize(), FLASH_Axpy_cntl_finalize(), FLASH_Axpyt_cntl_finalize(), FLASH_CAQR2_UT_cntl_finalize(), FLASH_CAQR_UT_inc_cntl_finalize(), FLASH_Chol_cntl_finalize(), FLASH_Copy_cntl_finalize(), FLASH_Copyr_cntl_finalize(), FLASH_Copyt_cntl_finalize(), FLASH_Eig_gest_cntl_finalize(), FLASH_Gemm_cntl_finalize(), FLASH_Gemv_cntl_finalize(), FLASH_Hemm_cntl_finalize(), FLASH_Her2k_cntl_finalize(), FLASH_Herk_cntl_finalize(), FLASH_LQ_UT_cntl_finalize(), FLASH_LU_incpiv_cntl_finalize(), FLASH_LU_nopiv_cntl_finalize(), FLASH_LU_piv_cntl_finalize(), FLASH_Lyap_cntl_finalize(), FLASH_QR2_UT_cntl_finalize(), FLASH_QR_UT_cntl_finalize(), FLASH_QR_UT_inc_cntl_finalize(), FLASH_Scal_cntl_finalize(), FLASH_Scalr_cntl_finalize(), FLASH_SPDinv_cntl_finalize(), FLASH_Sylv_cntl_finalize(), FLASH_Symm_cntl_finalize(), FLASH_Syr2k_cntl_finalize(), FLASH_Syrk_cntl_finalize(), FLASH_Trinv_cntl_finalize(), FLASH_Trmm_cntl_finalize(), FLASH_Trsm_cntl_finalize(), FLASH_Trsv_cntl_finalize(), FLASH_Ttmm_cntl_finalize(), FLASH_UDdate_UT_cntl_finalize(), and FLASH_UDdate_UT_inc_cntl_finalize().

Referenced by FLA_Cntl_finalize().

74 {
75  // Level-1 BLAS
83 
84  // Level-2 BLAS
87 
88  // Level-3 BLAS
98 
99  // LAPACK-level
115 
116  // Compound LAPACK operations
128 }
void FLASH_CAQR_UT_inc_cntl_finalize(void)
Definition: FLASH_CAQR_UT_inc_cntl_init.c:32
void FLASH_LU_piv_cntl_finalize(void)
Definition: FLASH_LU_piv_cntl_init.c:53
void FLASH_UDdate_UT_cntl_finalize(void)
Definition: FLASH_UDdate_UT_cntl_init.c:37
void FLASH_Apply_pivots_cntl_finalize(void)
Definition: FLASH_Apply_pivots_cntl_init.c:42
void FLASH_Syr2k_cntl_finalize()
Definition: FLASH_Syr2k_cntl_init.c:64
void FLASH_QR_UT_inc_cntl_finalize(void)
Definition: FLASH_QR_UT_inc_cntl_init.c:36
void FLASH_Hemm_cntl_finalize()
Definition: FLASH_Hemm_cntl_init.c:66
void FLASH_Chol_cntl_finalize(void)
Definition: FLASH_Chol_cntl_init.c:44
void FLASH_Copy_cntl_finalize()
Definition: FLASH_Copy_cntl_init.c:43
void FLASH_LU_nopiv_cntl_finalize(void)
Definition: FLASH_LU_nopiv_cntl_init.c:52
void FLASH_Syrk_cntl_finalize()
Definition: FLASH_Syrk_cntl_init.c:60
void FLASH_Trsv_cntl_finalize()
Definition: FLASH_Trsv_cntl_init.c:39
void FLASH_Trsm_cntl_finalize()
Definition: FLASH_Trsm_cntl_init.c:60
void FLASH_Eig_gest_cntl_finalize(void)
Definition: FLASH_Eig_gest_cntl_init.c:64
void FLASH_Trinv_cntl_finalize(void)
Definition: FLASH_Trinv_cntl_init.c:46
void FLASH_UDdate_UT_inc_cntl_finalize(void)
Definition: FLASH_UDdate_UT_inc_cntl_init.c:32
void FLASH_Symm_cntl_finalize()
Definition: FLASH_Symm_cntl_init.c:66
void FLASH_Her2k_cntl_finalize()
Definition: FLASH_Her2k_cntl_init.c:64
void FLASH_Apply_QUD_UT_inc_cntl_finalize(void)
Definition: FLASH_Apply_QUD_UT_inc_cntl_init.c:30
void FLASH_LQ_UT_cntl_finalize(void)
Definition: FLASH_LQ_UT_cntl_init.c:40
void FLASH_Gemm_cntl_finalize()
Definition: FLASH_Gemm_cntl_init.c:130
void FLASH_Scal_cntl_finalize()
Definition: FLASH_Scal_cntl_init.c:50
void FLASH_Ttmm_cntl_finalize(void)
Definition: FLASH_Ttmm_cntl_init.c:44
void FLASH_Apply_Q_UT_inc_cntl_finalize(void)
Definition: FLASH_Apply_Q_UT_inc_cntl_init.c:32
void FLASH_Trmm_cntl_finalize()
Definition: FLASH_Trmm_cntl_init.c:60
void FLASH_Scalr_cntl_finalize()
Definition: FLASH_Scalr_cntl_init.c:40
void FLASH_Axpy_cntl_finalize()
Definition: FLASH_Axpy_cntl_init.c:43
void FLASH_SPDinv_cntl_finalize(void)
Definition: FLASH_SPDinv_cntl_init.c:37
void FLASH_Apply_Q2_UT_cntl_finalize(void)
Definition: FLASH_Apply_Q2_UT_cntl_init.c:59
void FLASH_LU_incpiv_cntl_finalize(void)
Definition: FLASH_LU_incpiv_cntl_init.c:53
void FLASH_Apply_CAQ_UT_inc_cntl_finalize(void)
Definition: FLASH_Apply_CAQ_UT_inc_cntl_init.c:30
void FLASH_Apply_Q_UT_cntl_finalize(void)
Definition: FLASH_Apply_Q_UT_cntl_init.c:75
void FLASH_Copyr_cntl_finalize()
Definition: FLASH_Copyr_cntl_init.c:39
void FLASH_Apply_QUD_UT_cntl_finalize(void)
Definition: FLASH_Apply_QUD_UT_cntl_init.c:65
void FLASH_Lyap_cntl_finalize(void)
Definition: FLASH_Lyap_cntl_init.c:54
void FLASH_Herk_cntl_finalize()
Definition: FLASH_Herk_cntl_init.c:60
void FLASH_Copyt_cntl_finalize()
Definition: FLASH_Copyt_cntl_init.c:50
void FLASH_Axpyt_cntl_finalize()
Definition: FLASH_Axpyt_cntl_init.c:50
void FLASH_Gemv_cntl_finalize()
Definition: FLASH_Gemv_cntl_init.c:59
void FLASH_QR2_UT_cntl_finalize(void)
Definition: FLASH_QR2_UT_cntl_init.c:45
void FLASH_CAQR2_UT_cntl_finalize(void)
Definition: FLASH_CAQR2_UT_cntl_init.c:53
void FLASH_QR_UT_cntl_finalize(void)
Definition: FLASH_QR_UT_cntl_init.c:40
void FLASH_Sylv_cntl_finalize(void)
Definition: FLASH_Sylv_cntl_init.c:75
void FLASH_Apply_CAQ2_UT_cntl_finalize(void)
Definition: FLASH_Apply_CAQ2_UT_cntl_init.c:71

◆ FLA_Cntl_init_flash()

void FLA_Cntl_init_flash ( void  )

References FLASH_Apply_CAQ2_UT_cntl_init(), FLASH_Apply_CAQ_UT_inc_cntl_init(), FLASH_Apply_pivots_cntl_init(), FLASH_Apply_Q2_UT_cntl_init(), FLASH_Apply_Q_UT_cntl_init(), FLASH_Apply_Q_UT_inc_cntl_init(), FLASH_Apply_QUD_UT_cntl_init(), FLASH_Apply_QUD_UT_inc_cntl_init(), FLASH_Axpy_cntl_init(), FLASH_Axpyt_cntl_init(), FLASH_CAQR2_UT_cntl_init(), FLASH_CAQR_UT_inc_cntl_init(), FLASH_Chol_cntl_init(), FLASH_Copy_cntl_init(), FLASH_Copyr_cntl_init(), FLASH_Copyt_cntl_init(), FLASH_Eig_gest_cntl_init(), FLASH_Gemm_cntl_init(), FLASH_Gemv_cntl_init(), FLASH_Hemm_cntl_init(), FLASH_Her2k_cntl_init(), FLASH_Herk_cntl_init(), FLASH_LQ_UT_cntl_init(), FLASH_LU_incpiv_cntl_init(), FLASH_LU_nopiv_cntl_init(), FLASH_LU_piv_cntl_init(), FLASH_Lyap_cntl_init(), FLASH_QR2_UT_cntl_init(), FLASH_QR_UT_cntl_init(), FLASH_QR_UT_inc_cntl_init(), FLASH_Scal_cntl_init(), FLASH_Scalr_cntl_init(), FLASH_SPDinv_cntl_init(), FLASH_Sylv_cntl_init(), FLASH_Symm_cntl_init(), FLASH_Syr2k_cntl_init(), FLASH_Syrk_cntl_init(), FLASH_Trinv_cntl_init(), FLASH_Trmm_cntl_init(), FLASH_Trsm_cntl_init(), FLASH_Trsv_cntl_init(), FLASH_Ttmm_cntl_init(), FLASH_UDdate_UT_cntl_init(), and FLASH_UDdate_UT_inc_cntl_init().

Referenced by FLA_Cntl_init().

14 {
15  // Level-1 BLAS
23 
24  // Level-2 BLAS
27 
28  // Level-3 BLAS
29  // Note gemm must be first since it is used by all other level-3 BLAS.
39 
40  // LAPACK-level
41  // These require level-3 BLAS operations to be initialized.
57 
58  // Compound LAPACK operations
59  // These require previous LAPACK operations to already be initialized.
71 }
void FLASH_Lyap_cntl_init(void)
Definition: FLASH_Lyap_cntl_init.c:24
void FLASH_Apply_CAQ_UT_inc_cntl_init(void)
Definition: FLASH_Apply_CAQ_UT_inc_cntl_init.c:18
void FLASH_LU_incpiv_cntl_init(void)
Definition: FLASH_LU_incpiv_cntl_init.c:21
void FLASH_Herk_cntl_init()
Definition: FLASH_Herk_cntl_init.c:22
void FLASH_Copyt_cntl_init()
Definition: FLASH_Copyt_cntl_init.c:19
void FLASH_Axpyt_cntl_init()
Definition: FLASH_Axpyt_cntl_init.c:19
void FLASH_Eig_gest_cntl_init(void)
Definition: FLASH_Eig_gest_cntl_init.c:24
void FLASH_Her2k_cntl_init()
Definition: FLASH_Her2k_cntl_init.c:22
void FLASH_Trsv_cntl_init()
Definition: FLASH_Trsv_cntl_init.c:19
void FLASH_Sylv_cntl_init(void)
Definition: FLASH_Sylv_cntl_init.c:21
void FLASH_LU_nopiv_cntl_init(void)
Definition: FLASH_LU_nopiv_cntl_init.c:20
void FLASH_Chol_cntl_init(void)
Definition: FLASH_Chol_cntl_init.c:20
void FLASH_Syrk_cntl_init()
Definition: FLASH_Syrk_cntl_init.c:22
void FLASH_Gemv_cntl_init()
Definition: FLASH_Gemv_cntl_init.c:22
void FLASH_Hemm_cntl_init()
Definition: FLASH_Hemm_cntl_init.c:24
void FLASH_Apply_Q2_UT_cntl_init(void)
Definition: FLASH_Apply_Q2_UT_cntl_init.c:19
void FLASH_CAQR_UT_inc_cntl_init(void)
Definition: FLASH_CAQR_UT_inc_cntl_init.c:19
void FLASH_UDdate_UT_cntl_init(void)
Definition: FLASH_UDdate_UT_cntl_init.c:17
void FLASH_Axpy_cntl_init()
Definition: FLASH_Axpy_cntl_init.c:18
void FLASH_Scal_cntl_init()
Definition: FLASH_Scal_cntl_init.c:19
void FLASH_Trmm_cntl_init()
Definition: FLASH_Trmm_cntl_init.c:22
void FLASH_Apply_CAQ2_UT_cntl_init(void)
Definition: FLASH_Apply_CAQ2_UT_cntl_init.c:19
void FLASH_Scalr_cntl_init()
Definition: FLASH_Scalr_cntl_init.c:19
void FLASH_Apply_QUD_UT_inc_cntl_init(void)
Definition: FLASH_Apply_QUD_UT_inc_cntl_init.c:18
void FLASH_Apply_Q_UT_cntl_init(void)
Definition: FLASH_Apply_Q_UT_cntl_init.c:27
void FLASH_Gemm_cntl_init()
Definition: FLASH_Gemm_cntl_init.c:39
void FLASH_Copyr_cntl_init()
Definition: FLASH_Copyr_cntl_init.c:19
void FLASH_SPDinv_cntl_init(void)
Definition: FLASH_SPDinv_cntl_init.c:20
void FLASH_UDdate_UT_inc_cntl_init(void)
Definition: FLASH_UDdate_UT_inc_cntl_init.c:19
void FLASH_Syr2k_cntl_init()
Definition: FLASH_Syr2k_cntl_init.c:22
void FLASH_Trsm_cntl_init()
Definition: FLASH_Trsm_cntl_init.c:22
void FLASH_QR_UT_inc_cntl_init(void)
Definition: FLASH_QR_UT_inc_cntl_init.c:21
void FLASH_Apply_pivots_cntl_init(void)
Definition: FLASH_Apply_pivots_cntl_init.c:18
void FLASH_Ttmm_cntl_init(void)
Definition: FLASH_Ttmm_cntl_init.c:20
void FLASH_Trinv_cntl_init(void)
Definition: FLASH_Trinv_cntl_init.c:20
void FLASH_Copy_cntl_init()
Definition: FLASH_Copy_cntl_init.c:18
void FLASH_Apply_QUD_UT_cntl_init(void)
Definition: FLASH_Apply_QUD_UT_cntl_init.c:19
void FLASH_LU_piv_cntl_init(void)
Definition: FLASH_LU_piv_cntl_init.c:21
void FLASH_Symm_cntl_init()
Definition: FLASH_Symm_cntl_init.c:24
void FLASH_LQ_UT_cntl_init(void)
Definition: FLASH_LQ_UT_cntl_init.c:20
void FLASH_QR_UT_cntl_init(void)
Definition: FLASH_QR_UT_cntl_init.c:20
void FLASH_CAQR2_UT_cntl_init(void)
Definition: FLASH_CAQR2_UT_cntl_init.c:17
void FLASH_Apply_Q_UT_inc_cntl_init(void)
Definition: FLASH_Apply_Q_UT_inc_cntl_init.c:19
void FLASH_QR2_UT_cntl_init(void)
Definition: FLASH_QR2_UT_cntl_init.c:17

◆ FLASH_Apply_CAQ2_UT_cntl_finalize()

void FLASH_Apply_CAQ2_UT_cntl_finalize ( void  )

References FLA_Blocksize_free(), and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flash().

72 {
76 
79 }
fla_apcaq2ut_t * flash_apcaq2ut_cntl_leaf
Definition: FLASH_Apply_CAQ2_UT_cntl_init.c:13
void FLA_Blocksize_free(fla_blocksize_t *bp)
Definition: FLA_Blocksize.c:110
void FLA_Cntl_obj_free(void *cntl)
Definition: FLA_Cntl.c:13
fla_apcaq2ut_t * flash_apcaq2ut_cntl_mid
Definition: FLASH_Apply_CAQ2_UT_cntl_init.c:14
fla_blocksize_t * flash_apcaq2ut_var3_bsize
Definition: FLASH_Apply_CAQ2_UT_cntl_init.c:17
fla_blocksize_t * flash_apcaq2ut_var2_bsize
Definition: FLASH_Apply_CAQ2_UT_cntl_init.c:16
fla_apcaq2ut_t * flash_apcaq2ut_cntl
Definition: FLASH_Apply_CAQ2_UT_cntl_init.c:15

◆ FLASH_Apply_CAQ2_UT_cntl_init()

void FLASH_Apply_CAQ2_UT_cntl_init ( void  )

References FLA_Blocksize_create(), and FLA_Cntl_apcaq2ut_obj_create().

Referenced by FLA_Cntl_init_flash().

20 {
21  // Set blocksizes for hierarchical storage.
24 
25  // Create a control tree to invoke variant 1.
27  FLA_SUBPROBLEM,
28  NULL,
29  NULL,
30  NULL,
31  NULL,
32  NULL,
33  NULL,
34  NULL,
35  NULL,
36  NULL,
37  NULL,
38  NULL );
39 
40  // Create a control tree to invoke variant 2.
42  FLA_BLOCKED_VARIANT2,
45  NULL,
46  NULL,
47  NULL,
48  NULL,
49  NULL,
50  NULL,
51  NULL,
52  NULL,
53  NULL );
54 
55  // Create a control tree to invoke variant 3.
57  FLA_BLOCKED_VARIANT3,
60  NULL,
61  NULL,
62  NULL,
63  NULL,
64  NULL,
65  NULL,
66  NULL,
67  NULL,
68  NULL );
69 }
fla_blocksize_t * FLA_Blocksize_create(dim_t b_s, dim_t b_d, dim_t b_c, dim_t b_z)
Definition: FLA_Blocksize.c:36
fla_apcaq2ut_t * flash_apcaq2ut_cntl_leaf
Definition: FLASH_Apply_CAQ2_UT_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_apcaq2ut_t * flash_apcaq2ut_cntl_mid
Definition: FLASH_Apply_CAQ2_UT_cntl_init.c:14
fla_blocksize_t * flash_apcaq2ut_var3_bsize
Definition: FLASH_Apply_CAQ2_UT_cntl_init.c:17
fla_blocksize_t * flash_apcaq2ut_var2_bsize
Definition: FLASH_Apply_CAQ2_UT_cntl_init.c:16
fla_apcaq2ut_t * flash_apcaq2ut_cntl
Definition: FLASH_Apply_CAQ2_UT_cntl_init.c:15

◆ FLASH_Apply_CAQ_UT_inc_cntl_finalize()

void FLASH_Apply_CAQ_UT_inc_cntl_finalize ( void  )

References FLA_Blocksize_free(), and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flash().

31 {
33 
35 }
fla_blocksize_t * flash_apcaqutinc_var1_bsize
Definition: FLASH_Apply_CAQ_UT_inc_cntl_init.c:16
void FLA_Blocksize_free(fla_blocksize_t *bp)
Definition: FLA_Blocksize.c:110
fla_apcaqutinc_t * flash_apcaqutinc_cntl
Definition: FLASH_Apply_CAQ_UT_inc_cntl_init.c:15
void FLA_Cntl_obj_free(void *cntl)
Definition: FLA_Cntl.c:13

◆ FLASH_Apply_CAQ_UT_inc_cntl_init()

void FLASH_Apply_CAQ_UT_inc_cntl_init ( void  )

References FLA_Blocksize_create(), and FLA_Cntl_apcaqutinc_obj_create().

Referenced by FLA_Cntl_init_flash().

19 {
20  // Set blocksizes for hierarchical storage.
22 
23  // Create a control tree to invoke variant 1.
25  FLA_BLOCKED_VARIANT1,
28 }
fla_blocksize_t * FLA_Blocksize_create(dim_t b_s, dim_t b_d, dim_t b_c, dim_t b_z)
Definition: FLA_Blocksize.c:36
fla_blocksize_t * flash_apcaqutinc_var1_bsize
Definition: FLASH_Apply_CAQ_UT_inc_cntl_init.c:16
fla_apcaqutinc_t * flash_apcaqutinc_cntl
Definition: FLASH_Apply_CAQ_UT_inc_cntl_init.c:15
fla_apcaqutinc_t * FLA_Cntl_apcaqutinc_obj_create(FLA_Matrix_type matrix_type, int variant, fla_blocksize_t *blocksize, fla_apcaq2ut_t *sub_apcaq2ut)
Definition: FLA_Cntl_lapack.c:580
fla_apcaq2ut_t * flash_apcaq2ut_cntl
Definition: FLASH_Apply_CAQ2_UT_cntl_init.c:15

◆ FLASH_Apply_pivots_cntl_finalize()

void FLASH_Apply_pivots_cntl_finalize ( void  )

References FLA_Blocksize_free(), and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flash().

43 {
47 
49 }
fla_appiv_t * flash_appiv_cntl_bp
Definition: FLASH_Apply_pivots_cntl_init.c:14
fla_appiv_t * flash_appiv_cntl
Definition: FLASH_Apply_pivots_cntl_init.c:15
fla_blocksize_t * flash_appiv_bsize
Definition: FLASH_Apply_pivots_cntl_init.c:16
fla_appiv_t * flash_appiv_cntl_leaf
Definition: FLASH_Apply_pivots_cntl_init.c:13
void FLA_Blocksize_free(fla_blocksize_t *bp)
Definition: FLA_Blocksize.c:110
void FLA_Cntl_obj_free(void *cntl)
Definition: FLA_Cntl.c:13

◆ FLASH_Apply_pivots_cntl_init()

void FLASH_Apply_pivots_cntl_init ( void  )

References FLA_Blocksize_create(), and FLA_Cntl_appiv_obj_create().

Referenced by FLA_Cntl_init_flash().

19 {
20  // Set blocksize for hierarchical storage.
22 
23  // Create a control tree that assumes A is a b x b block.
25  FLA_SUBPROBLEM,
26  NULL,
27  NULL );
28 
29  // Create a control tree that assumes A is large.
31  FLA_BLOCKED_VARIANT1,
34 
35  // Create a control tree that assumes A and p are large.
37  FLA_BLOCKED_VARIANT2,
40 }
fla_blocksize_t * FLA_Blocksize_create(dim_t b_s, dim_t b_d, dim_t b_c, dim_t b_z)
Definition: FLA_Blocksize.c:36
fla_appiv_t * flash_appiv_cntl_bp
Definition: FLASH_Apply_pivots_cntl_init.c:14
fla_appiv_t * flash_appiv_cntl
Definition: FLASH_Apply_pivots_cntl_init.c:15
fla_blocksize_t * flash_appiv_bsize
Definition: FLASH_Apply_pivots_cntl_init.c:16
fla_appiv_t * flash_appiv_cntl_leaf
Definition: FLASH_Apply_pivots_cntl_init.c:13
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

◆ FLASH_Apply_Q2_UT_cntl_finalize()

void FLASH_Apply_Q2_UT_cntl_finalize ( void  )

References FLA_Blocksize_free(), and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flash().

60 {
64 
67 }
fla_blocksize_t * flash_apq2ut_var3_bsize
Definition: FLASH_Apply_Q2_UT_cntl_init.c:17
void FLA_Blocksize_free(fla_blocksize_t *bp)
Definition: FLA_Blocksize.c:110
void FLA_Cntl_obj_free(void *cntl)
Definition: FLA_Cntl.c:13
fla_apq2ut_t * flash_apq2ut_cntl_mid
Definition: FLASH_Apply_Q2_UT_cntl_init.c:14
fla_apq2ut_t * flash_apq2ut_cntl_leaf
Definition: FLASH_Apply_Q2_UT_cntl_init.c:13
fla_apq2ut_t * flash_apq2ut_cntl
Definition: FLASH_Apply_Q2_UT_cntl_init.c:15
fla_blocksize_t * flash_apq2ut_var2_bsize
Definition: FLASH_Apply_Q2_UT_cntl_init.c:16

◆ FLASH_Apply_Q2_UT_cntl_init()

void FLASH_Apply_Q2_UT_cntl_init ( void  )

References FLA_Blocksize_create(), and FLA_Cntl_apq2ut_obj_create().

Referenced by FLA_Cntl_init_flash().

20 {
21  // Set blocksizes for hierarchical storage.
24 
25  // Create a control tree to invoke variant 1.
27  FLA_SUBPROBLEM,
28  NULL,
29  NULL,
30  NULL,
31  NULL,
32  NULL,
33  NULL,
34  NULL );
35 
36  // Create a control tree to invoke variant 2.
38  FLA_BLOCKED_VARIANT2,
41  NULL,
42  NULL,
43  NULL,
44  NULL,
45  NULL );
46 
47  // Create a control tree to invoke variant 3.
49  FLA_BLOCKED_VARIANT3,
52  NULL,
53  NULL,
54  NULL,
55  NULL,
56  NULL );
57 }
fla_blocksize_t * flash_apq2ut_var3_bsize
Definition: FLASH_Apply_Q2_UT_cntl_init.c:17
fla_blocksize_t * FLA_Blocksize_create(dim_t b_s, dim_t b_d, dim_t b_c, dim_t b_z)
Definition: FLA_Blocksize.c:36
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
fla_apq2ut_t * flash_apq2ut_cntl_mid
Definition: FLASH_Apply_Q2_UT_cntl_init.c:14
fla_apq2ut_t * flash_apq2ut_cntl_leaf
Definition: FLASH_Apply_Q2_UT_cntl_init.c:13
fla_apq2ut_t * flash_apq2ut_cntl
Definition: FLASH_Apply_Q2_UT_cntl_init.c:15
fla_blocksize_t * flash_apq2ut_var2_bsize
Definition: FLASH_Apply_Q2_UT_cntl_init.c:16

◆ FLASH_Apply_Q_UT_cntl_finalize()

void FLASH_Apply_Q_UT_cntl_finalize ( void  )

References FLA_Blocksize_free(), and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flash().

76 {
80 
83 }
fla_apqut_t * flash_apqut_cntl_blas
Definition: FLASH_Apply_Q_UT_cntl_init.c:23
fla_blocksize_t * flash_apqut_var1_bsize
Definition: FLASH_Apply_Q_UT_cntl_init.c:24
fla_apqut_t * flash_apqut_cntl_leaf
Definition: FLASH_Apply_Q_UT_cntl_init.c:21
void FLA_Blocksize_free(fla_blocksize_t *bp)
Definition: FLA_Blocksize.c:110
fla_blocksize_t * flash_apqut_var2_bsize
Definition: FLASH_Apply_Q_UT_cntl_init.c:25
void FLA_Cntl_obj_free(void *cntl)
Definition: FLA_Cntl.c:13
fla_apqut_t * flash_apqut_cntl
Definition: FLASH_Apply_Q_UT_cntl_init.c:22

◆ FLASH_Apply_Q_UT_cntl_init()

void FLASH_Apply_Q_UT_cntl_init ( void  )

References FLA_Blocksize_create(), and FLA_Cntl_apqut_obj_create().

Referenced by FLA_Cntl_init_flash().

28 {
29  // Set blocksize for hierarchical storage.
32 
33  // Create a control tree to dereference block operands and perform
34  // flat subproblem.
36  FLA_SUBPROBLEM,
37  NULL,
38  NULL,
39  NULL,
40  NULL,
41  NULL,
42  NULL,
43  NULL,
44  NULL,
45  NULL );
46 
47  // Create a control tree to invoke variant 2 to further partition blocks.
49  FLA_BLOCKED_VARIANT2,
52  NULL,
53  NULL,
54  NULL,
55  NULL,
56  NULL,
57  NULL,
58  NULL );
59 
60  // Create a control tree to invoke variant 3, using hierarchical level-3
61  // BLAS control trees.
63  FLA_BLOCKED_VARIANT3,
65  NULL,
73 }
fla_blocksize_t * FLA_Blocksize_create(dim_t b_s, dim_t b_d, dim_t b_c, dim_t b_z)
Definition: FLA_Blocksize.c:36
fla_apqut_t * flash_apqut_cntl_blas
Definition: FLASH_Apply_Q_UT_cntl_init.c:23
fla_blocksize_t * flash_apqut_var1_bsize
Definition: FLASH_Apply_Q_UT_cntl_init.c:24
fla_apqut_t * flash_apqut_cntl_leaf
Definition: FLASH_Apply_Q_UT_cntl_init.c:21
fla_axpyt_t * flash_axpyt_cntl
Definition: FLASH_Axpyt_cntl_init.c:16
fla_copyt_t * flash_copyt_cntl
Definition: FLASH_Copyt_cntl_init.c:16
fla_trmm_t * flash_trmm_cntl_bp
Definition: FLASH_Apply_Q_UT_cntl_init.c:14
fla_blocksize_t * flash_apqut_var2_bsize
Definition: FLASH_Apply_Q_UT_cntl_init.c:25
fla_gemm_t * flash_gemm_cntl_pm
Definition: FLASH_Gemm_cntl_init.c:31
fla_trsm_t * flash_trsm_cntl_bp
Definition: FLASH_Trsm_cntl_init.c:17
fla_apqut_t * flash_apqut_cntl
Definition: FLASH_Apply_Q_UT_cntl_init.c:22
fla_gemm_t * flash_gemm_cntl_op
Definition: FLASH_Gemm_cntl_init.c:32
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

◆ FLASH_Apply_Q_UT_inc_cntl_finalize()

void FLASH_Apply_Q_UT_inc_cntl_finalize ( void  )

References FLA_Blocksize_free(), and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flash().

33 {
35 
37 }
fla_apqutinc_t * flash_apqutinc_cntl
Definition: FLASH_Apply_Q_UT_inc_cntl_init.c:16
fla_blocksize_t * flash_apqutinc_var1_bsize
Definition: FLASH_Apply_Q_UT_inc_cntl_init.c:17
void FLA_Blocksize_free(fla_blocksize_t *bp)
Definition: FLA_Blocksize.c:110
void FLA_Cntl_obj_free(void *cntl)
Definition: FLA_Cntl.c:13

◆ FLASH_Apply_Q_UT_inc_cntl_init()

void FLASH_Apply_Q_UT_inc_cntl_init ( void  )

References FLA_Blocksize_create(), and FLA_Cntl_apqutinc_obj_create().

Referenced by FLA_Cntl_init_flash().

20 {
21  // Set blocksizes for hierarchical storage.
23 
24  // Create a control tree to invoke variant 1.
26  FLA_BLOCKED_VARIANT1,
30 }
fla_blocksize_t * FLA_Blocksize_create(dim_t b_s, dim_t b_d, dim_t b_c, dim_t b_z)
Definition: FLA_Blocksize.c:36
fla_apqut_t * flash_apqut_cntl
Definition: FLASH_Apply_Q_UT_cntl_init.c:22
fla_apqutinc_t * FLA_Cntl_apqutinc_obj_create(FLA_Matrix_type matrix_type, int variant, fla_blocksize_t *blocksize, fla_apqut_t *sub_apqut, fla_apq2ut_t *sub_apq2ut)
Definition: FLA_Cntl_lapack.c:561
fla_apqutinc_t * flash_apqutinc_cntl
Definition: FLASH_Apply_Q_UT_inc_cntl_init.c:16
fla_blocksize_t * flash_apqutinc_var1_bsize
Definition: FLASH_Apply_Q_UT_inc_cntl_init.c:17
fla_apq2ut_t * flash_apq2ut_cntl
Definition: FLASH_Apply_Q2_UT_cntl_init.c:15

◆ FLASH_Apply_QUD_UT_cntl_finalize()

void FLASH_Apply_QUD_UT_cntl_finalize ( void  )

References FLA_Blocksize_free(), and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flash().

66 {
70 
73 }
fla_apqudut_t * flash_apqudut_cntl
Definition: FLASH_Apply_QUD_UT_cntl_init.c:15
fla_blocksize_t * flash_apqudut_var3_bsize
Definition: FLASH_Apply_QUD_UT_cntl_init.c:17
void FLA_Blocksize_free(fla_blocksize_t *bp)
Definition: FLA_Blocksize.c:110
fla_apqudut_t * flash_apqudut_cntl_mid
Definition: FLASH_Apply_QUD_UT_cntl_init.c:14
fla_blocksize_t * flash_apqudut_var2_bsize
Definition: FLASH_Apply_QUD_UT_cntl_init.c:16
void FLA_Cntl_obj_free(void *cntl)
Definition: FLA_Cntl.c:13
fla_apqudut_t * flash_apqudut_cntl_leaf
Definition: FLASH_Apply_QUD_UT_cntl_init.c:13

◆ FLASH_Apply_QUD_UT_cntl_init()

void FLASH_Apply_QUD_UT_cntl_init ( void  )

References FLA_Blocksize_create(), and FLA_Cntl_apqudut_obj_create().

Referenced by FLA_Cntl_init_flash().

20 {
21  // Set blocksizes for hierarchical storage.
24 
25  // Create a control tree to invoke variant 1.
27  FLA_SUBPROBLEM,
28  NULL,
29  NULL,
30  NULL,
31  NULL,
32  NULL,
33  NULL,
34  NULL,
35  NULL,
36  NULL );
37 
38  // Create a control tree to invoke variant 2.
40  FLA_BLOCKED_VARIANT2,
43  NULL,
44  NULL,
45  NULL,
46  NULL,
47  NULL,
48  NULL,
49  NULL );
50 
51  // Create a control tree to invoke variant 3.
53  FLA_BLOCKED_VARIANT3,
56  NULL,
57  NULL,
58  NULL,
59  NULL,
60  NULL,
61  NULL,
62  NULL );
63 }
fla_apqudut_t * flash_apqudut_cntl
Definition: FLASH_Apply_QUD_UT_cntl_init.c:15
fla_blocksize_t * FLA_Blocksize_create(dim_t b_s, dim_t b_d, dim_t b_c, dim_t b_z)
Definition: FLA_Blocksize.c:36
fla_blocksize_t * flash_apqudut_var3_bsize
Definition: FLASH_Apply_QUD_UT_cntl_init.c:17
fla_apqudut_t * flash_apqudut_cntl_mid
Definition: FLASH_Apply_QUD_UT_cntl_init.c:14
fla_blocksize_t * flash_apqudut_var2_bsize
Definition: FLASH_Apply_QUD_UT_cntl_init.c:16
fla_apqudut_t * flash_apqudut_cntl_leaf
Definition: FLASH_Apply_QUD_UT_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

◆ FLASH_Apply_QUD_UT_inc_cntl_finalize()

void FLASH_Apply_QUD_UT_inc_cntl_finalize ( void  )

References FLA_Blocksize_free(), and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flash().

31 {
33 
35 }
fla_apqudutinc_t * flash_apqudutinc_cntl
Definition: FLASH_Apply_QUD_UT_inc_cntl_init.c:15
void FLA_Blocksize_free(fla_blocksize_t *bp)
Definition: FLA_Blocksize.c:110
fla_blocksize_t * flash_apqudutinc_var1_bsize
Definition: FLASH_Apply_QUD_UT_inc_cntl_init.c:16
void FLA_Cntl_obj_free(void *cntl)
Definition: FLA_Cntl.c:13

◆ FLASH_Apply_QUD_UT_inc_cntl_init()

void FLASH_Apply_QUD_UT_inc_cntl_init ( void  )

References FLA_Blocksize_create(), and FLA_Cntl_apqudutinc_obj_create().

Referenced by FLA_Cntl_init_flash().

19 {
20  // Set blocksizes for hierarchical storage.
22 
23  // Create a control tree to invoke variant 1.
25  FLA_BLOCKED_VARIANT1,
28 }
fla_blocksize_t * FLA_Blocksize_create(dim_t b_s, dim_t b_d, dim_t b_c, dim_t b_z)
Definition: FLA_Blocksize.c:36
fla_apqudutinc_t * flash_apqudutinc_cntl
Definition: FLASH_Apply_QUD_UT_inc_cntl_init.c:15
fla_blocksize_t * flash_apqudutinc_var1_bsize
Definition: FLASH_Apply_QUD_UT_inc_cntl_init.c:16
fla_apqudut_t * flash_apqudut_cntl
Definition: FLASH_Apply_QUD_UT_cntl_init.c:15
fla_apqudutinc_t * FLA_Cntl_apqudutinc_obj_create(FLA_Matrix_type matrix_type, int variant, fla_blocksize_t *blocksize, fla_apqudut_t *sub_apqudut)
Definition: FLA_Cntl_lapack.c:363

◆ FLASH_Axpy_cntl_finalize()

void FLASH_Axpy_cntl_finalize ( void  )

References FLA_Blocksize_free(), and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flash().

44 {
46 
49 
51 }
fla_blocksize_t * flash_axpy_bsize
Definition: FLASH_Axpy_cntl_init.c:16
fla_axpy_t * flash_axpy_cntl_blas
Definition: FLASH_Axpy_cntl_init.c:13
fla_axpy_t * flash_axpy_cntl_tb
Definition: FLASH_Axpy_cntl_init.c:14
void FLA_Blocksize_free(fla_blocksize_t *bp)
Definition: FLA_Blocksize.c:110
fla_axpy_t * flash_axpy_cntl
Definition: FLASH_Axpy_cntl_init.c:15
void FLA_Cntl_obj_free(void *cntl)
Definition: FLA_Cntl.c:13

◆ FLASH_Axpy_cntl_init()

void FLASH_Axpy_cntl_init ( void  )

References FLA_Blocksize_create(), and FLA_Cntl_axpy_obj_create().

Referenced by FLA_Cntl_init_flash().

19 {
20  // Set blocksize for hierarchical storage.
21  flash_axpy_bsize = FLA_Blocksize_create( 1, 1, 1, 1 );
22 
23  // Create a control tree that assumes A and B are small.
25  FLA_SUBPROBLEM,
26  NULL,
27  NULL );
28 
29  // Create a control tree that marches through A and B vertically.
31  FLA_BLOCKED_VARIANT1,
34 
35  // Create a control tree that marches through A and B horizontally, then
36  // vertically.
38  FLA_BLOCKED_VARIANT3,
41 }
fla_blocksize_t * flash_axpy_bsize
Definition: FLASH_Axpy_cntl_init.c:16
fla_blocksize_t * FLA_Blocksize_create(dim_t b_s, dim_t b_d, dim_t b_c, dim_t b_z)
Definition: FLA_Blocksize.c:36
fla_axpy_t * flash_axpy_cntl_blas
Definition: FLASH_Axpy_cntl_init.c:13
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
fla_axpy_t * flash_axpy_cntl_tb
Definition: FLASH_Axpy_cntl_init.c:14
fla_axpy_t * flash_axpy_cntl
Definition: FLASH_Axpy_cntl_init.c:15

◆ FLASH_Axpyt_cntl_finalize()

void FLASH_Axpyt_cntl_finalize ( void  )

References FLA_Blocksize_free(), and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flash().

51 {
53 
57 
59 }
fla_axpyt_t * flash_axpyt_cntl_tb
Definition: FLASH_Axpyt_cntl_init.c:14
fla_axpyt_t * flash_axpyt_cntl
Definition: FLASH_Axpyt_cntl_init.c:16
fla_axpyt_t * flash_axpyt_cntl_blas
Definition: FLASH_Axpyt_cntl_init.c:13
fla_blocksize_t * flash_axpyt_bsize
Definition: FLASH_Axpyt_cntl_init.c:17
void FLA_Blocksize_free(fla_blocksize_t *bp)
Definition: FLA_Blocksize.c:110
fla_axpyt_t * flash_axpyt_cntl_lr
Definition: FLASH_Axpyt_cntl_init.c:15
void FLA_Cntl_obj_free(void *cntl)
Definition: FLA_Cntl.c:13

◆ FLASH_Axpyt_cntl_init()

void FLASH_Axpyt_cntl_init ( void  )

References FLA_Blocksize_create(), and FLA_Cntl_axpyt_obj_create().

Referenced by FLA_Cntl_init_flash().

20 {
21  // Set blocksize for hierarchical storage.
23 
24  // Create a control tree that assumes A and B are small.
26  FLA_SUBPROBLEM,
27  NULL,
28  NULL );
29 
30  // Create a control tree that marches through A and B vertically.
32  FLA_BLOCKED_VARIANT1,
35 
36  // Create a control tree that marches through A and B horizontally.
38  FLA_BLOCKED_VARIANT3,
41 
42  // Create a control tree that marches through A and B horizontally, then
43  // vertically.
45  FLA_BLOCKED_VARIANT3,
48 }
fla_axpyt_t * flash_axpyt_cntl_tb
Definition: FLASH_Axpyt_cntl_init.c:14
fla_blocksize_t * FLA_Blocksize_create(dim_t b_s, dim_t b_d, dim_t b_c, dim_t b_z)
Definition: FLA_Blocksize.c:36
fla_axpyt_t * flash_axpyt_cntl
Definition: FLASH_Axpyt_cntl_init.c:16
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
fla_axpyt_t * flash_axpyt_cntl_blas
Definition: FLASH_Axpyt_cntl_init.c:13
fla_blocksize_t * flash_axpyt_bsize
Definition: FLASH_Axpyt_cntl_init.c:17
fla_axpyt_t * flash_axpyt_cntl_lr
Definition: FLASH_Axpyt_cntl_init.c:15

◆ FLASH_CAQR2_UT_cntl_finalize()

void FLASH_CAQR2_UT_cntl_finalize ( void  )

References FLA_Blocksize_free(), and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flash().

54 {
57 
59 }
fla_blocksize_t * flash_caqr2ut_var2_bsize
Definition: FLASH_CAQR2_UT_cntl_init.c:15
void FLA_Blocksize_free(fla_blocksize_t *bp)
Definition: FLA_Blocksize.c:110
fla_caqr2ut_t * flash_caqr2ut_cntl
Definition: FLASH_CAQR2_UT_cntl_init.c:14
fla_caqr2ut_t * flash_caqr2ut_cntl_leaf
Definition: FLASH_CAQR2_UT_cntl_init.c:13
void FLA_Cntl_obj_free(void *cntl)
Definition: FLA_Cntl.c:13

◆ FLASH_CAQR2_UT_cntl_init()

void FLASH_CAQR2_UT_cntl_init ( void  )

References FLA_Blocksize_create(), and FLA_Cntl_caqr2ut_obj_create().

Referenced by FLA_Cntl_init_flash().

18 {
19  // Set blocksize for hierarchical storage.
21 
22  // Create a control tree to invoke variant 1.
24  FLA_SUBPROBLEM,
25  NULL,
26  NULL,
27  NULL,
28  NULL,
29  NULL,
30  NULL,
31  NULL,
32  NULL,
33  NULL,
34  NULL,
35  NULL );
36 
37  // Create a control tree to invoke variant 2.
39  FLA_BLOCKED_VARIANT2,
42  NULL,
43  NULL,
44  NULL,
45  NULL,
46  NULL,
47  NULL,
48  NULL,
49  NULL,
50  NULL );
51 }
fla_blocksize_t * flash_caqr2ut_var2_bsize
Definition: FLASH_CAQR2_UT_cntl_init.c:15
fla_blocksize_t * FLA_Blocksize_create(dim_t b_s, dim_t b_d, dim_t b_c, dim_t b_z)
Definition: FLA_Blocksize.c:36
fla_caqr2ut_t * flash_caqr2ut_cntl
Definition: FLASH_CAQR2_UT_cntl_init.c:14
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
fla_caqr2ut_t * flash_caqr2ut_cntl_leaf
Definition: FLASH_CAQR2_UT_cntl_init.c:13

◆ FLASH_CAQR_UT_inc_cntl_finalize()

void FLASH_CAQR_UT_inc_cntl_finalize ( void  )

References FLA_Blocksize_free(), and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flash().

33 {
35 
37 }
fla_caqrutinc_t * flash_caqrutinc_cntl
Definition: FLASH_CAQR_UT_inc_cntl_init.c:16
void FLA_Blocksize_free(fla_blocksize_t *bp)
Definition: FLA_Blocksize.c:110
fla_blocksize_t * flash_caqrutinc_var1_bsize
Definition: FLASH_CAQR_UT_inc_cntl_init.c:17
void FLA_Cntl_obj_free(void *cntl)
Definition: FLA_Cntl.c:13

◆ FLASH_CAQR_UT_inc_cntl_init()

void FLASH_CAQR_UT_inc_cntl_init ( void  )

References FLA_Blocksize_create(), and FLA_Cntl_caqrutinc_obj_create().

Referenced by FLA_Cntl_init_flash().

20 {
21  // Set blocksizes for hierarchical storage.
23 
24  // Create a control tree to invoke variant 1.
26  FLA_BLOCKED_VARIANT1,
30 }
fla_blocksize_t * FLA_Blocksize_create(dim_t b_s, dim_t b_d, dim_t b_c, dim_t b_z)
Definition: FLA_Blocksize.c:36
fla_caqr2ut_t * flash_caqr2ut_cntl
Definition: FLASH_CAQR2_UT_cntl_init.c:14
fla_caqrutinc_t * flash_caqrutinc_cntl
Definition: FLASH_CAQR_UT_inc_cntl_init.c:16
fla_blocksize_t * flash_caqrutinc_var1_bsize
Definition: FLASH_CAQR_UT_inc_cntl_init.c:17
fla_caqrutinc_t * FLA_Cntl_caqrutinc_obj_create(FLA_Matrix_type matrix_type, int variant, fla_blocksize_t *blocksize, fla_caqr2ut_t *sub_caqr2ut, fla_apcaq2ut_t *sub_apcaq2ut)
Definition: FLA_Cntl_lapack.c:159
fla_apcaq2ut_t * flash_apcaq2ut_cntl
Definition: FLASH_Apply_CAQ2_UT_cntl_init.c:15

◆ FLASH_Chol_cntl_finalize()

void FLASH_Chol_cntl_finalize ( void  )

References FLA_Blocksize_free(), and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flash().

45 {
48 
50 }
fla_chol_t * flash_chol_cntl
Definition: FLASH_Chol_cntl_init.c:17
fla_chol_t * flash_chol_cntl_leaf
Definition: FLASH_Chol_cntl_init.c:16
void FLA_Blocksize_free(fla_blocksize_t *bp)
Definition: FLA_Blocksize.c:110
void FLA_Cntl_obj_free(void *cntl)
Definition: FLA_Cntl.c:13
fla_blocksize_t * flash_chol_bsize
Definition: FLASH_Chol_cntl_init.c:18

◆ FLASH_Chol_cntl_init()

void FLASH_Chol_cntl_init ( void  )

References FLA_Blocksize_create(), and FLA_Cntl_chol_obj_create().

Referenced by FLA_Cntl_init_flash().

21 {
22  // Set blocksize for hierarchical storage.
23  flash_chol_bsize = FLA_Blocksize_create( 1, 1, 1, 1 );
24 
25  // Create a control tree that assumes A is a b x b block.
27  FLA_SUBPROBLEM,
28  NULL,
29  NULL,
30  NULL,
31  NULL,
32  NULL );
33 
34  // Create a control tree that assumes A is large.
36  FLA_BLOCKED_VARIANT3,
41  NULL );
42 }
fla_chol_t * flash_chol_cntl
Definition: FLASH_Chol_cntl_init.c:17
fla_blocksize_t * FLA_Blocksize_create(dim_t b_s, dim_t b_d, dim_t b_c, dim_t b_z)
Definition: FLA_Blocksize.c:36
fla_chol_t * flash_chol_cntl_leaf
Definition: FLASH_Chol_cntl_init.c:16
fla_herk_t * flash_herk_cntl_op
Definition: FLASH_Herk_cntl_init.c:18
fla_trsm_t * flash_trsm_cntl_bp
Definition: FLASH_Trsm_cntl_init.c:17
fla_blocksize_t * flash_chol_bsize
Definition: FLASH_Chol_cntl_init.c:18
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

◆ FLASH_Copy_cntl_finalize()

void FLASH_Copy_cntl_finalize ( void  )

References FLA_Blocksize_free(), and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flash().

44 {
46 
49 
51 }
fla_copy_t * flash_copy_cntl
Definition: FLASH_Copy_cntl_init.c:15
fla_copy_t * flash_copy_cntl_blas
Definition: FLASH_Copy_cntl_init.c:13
void FLA_Blocksize_free(fla_blocksize_t *bp)
Definition: FLA_Blocksize.c:110
void FLA_Cntl_obj_free(void *cntl)
Definition: FLA_Cntl.c:13
fla_copy_t * flash_copy_cntl_tb
Definition: FLASH_Copy_cntl_init.c:14
fla_blocksize_t * flash_copy_bsize
Definition: FLASH_Copy_cntl_init.c:16

◆ FLASH_Copy_cntl_init()

void FLASH_Copy_cntl_init ( void  )

References FLA_Blocksize_create(), and FLA_Cntl_copy_obj_create().

Referenced by FLA_Cntl_init_flash().

19 {
20  // Set blocksize for hierarchical storage.
21  flash_copy_bsize = FLA_Blocksize_create( 1, 1, 1, 1 );
22 
23  // Create a control tree that assumes A and B are small.
25  FLA_SUBPROBLEM,
26  NULL,
27  NULL );
28 
29  // Create a control tree that marches through A and B vertically.
31  FLA_BLOCKED_VARIANT1,
34 
35  // Create a control tree that marches through A and B horizontally, then
36  // vertically.
38  FLA_BLOCKED_VARIANT3,
41 }
fla_copy_t * flash_copy_cntl
Definition: FLASH_Copy_cntl_init.c:15
fla_blocksize_t * FLA_Blocksize_create(dim_t b_s, dim_t b_d, dim_t b_c, dim_t b_z)
Definition: FLA_Blocksize.c:36
fla_copy_t * flash_copy_cntl_blas
Definition: FLASH_Copy_cntl_init.c:13
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
fla_copy_t * flash_copy_cntl_tb
Definition: FLASH_Copy_cntl_init.c:14
fla_blocksize_t * flash_copy_bsize
Definition: FLASH_Copy_cntl_init.c:16

◆ FLASH_Copyr_cntl_finalize()

void FLASH_Copyr_cntl_finalize ( void  )

References FLA_Blocksize_free(), and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flash().

40 {
42 
44 
46 }
fla_copyr_t * flash_copyr_cntl
Definition: FLASH_Copyr_cntl_init.c:16
fla_blocksize_t * flash_copyr_bsize
Definition: FLASH_Copyr_cntl_init.c:17
void FLA_Blocksize_free(fla_blocksize_t *bp)
Definition: FLA_Blocksize.c:110
fla_copyr_t * flash_copyr_cntl_blas
Definition: FLASH_Copyr_cntl_init.c:15
void FLA_Cntl_obj_free(void *cntl)
Definition: FLA_Cntl.c:13

◆ FLASH_Copyr_cntl_init()

void FLASH_Copyr_cntl_init ( void  )

References FLA_Blocksize_create(), and FLA_Cntl_copyr_obj_create().

Referenced by FLA_Cntl_init_flash().

20 {
21  // Set blocksize for hierarchical storage.
23 
24  // Create a control tree that assumes A and B are small.
26  FLA_SUBPROBLEM,
27  NULL,
28  NULL,
29  NULL );
30 
31  // Create a control tree that marches through A and B from TL to BR.
33  FLA_BLOCKED_VARIANT3,
37 }
fla_blocksize_t * FLA_Blocksize_create(dim_t b_s, dim_t b_d, dim_t b_c, dim_t b_z)
Definition: FLA_Blocksize.c:36
fla_copyr_t * flash_copyr_cntl
Definition: FLASH_Copyr_cntl_init.c:16
fla_blocksize_t * flash_copyr_bsize
Definition: FLASH_Copyr_cntl_init.c:17
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
fla_copy_t * flash_copy_cntl_tb
Definition: FLASH_Copy_cntl_init.c:14
fla_copyr_t * flash_copyr_cntl_blas
Definition: FLASH_Copyr_cntl_init.c:15

◆ FLASH_Copyt_cntl_finalize()

void FLASH_Copyt_cntl_finalize ( void  )

References FLA_Blocksize_free(), and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flash().

51 {
53 
57 
59 }
fla_copyt_t * flash_copyt_cntl_lr
Definition: FLASH_Copyt_cntl_init.c:15
fla_blocksize_t * flash_copyt_bsize
Definition: FLASH_Copyt_cntl_init.c:17
void FLA_Blocksize_free(fla_blocksize_t *bp)
Definition: FLA_Blocksize.c:110
fla_copyt_t * flash_copyt_cntl_tb
Definition: FLASH_Copyt_cntl_init.c:14
fla_copyt_t * flash_copyt_cntl
Definition: FLASH_Copyt_cntl_init.c:16
void FLA_Cntl_obj_free(void *cntl)
Definition: FLA_Cntl.c:13
fla_copyt_t * flash_copyt_cntl_blas
Definition: FLASH_Copyt_cntl_init.c:13

◆ FLASH_Copyt_cntl_init()

void FLASH_Copyt_cntl_init ( void  )

References FLA_Blocksize_create(), and FLA_Cntl_copyt_obj_create().

Referenced by FLA_Cntl_init_flash().

20 {
21  // Set blocksize for hierarchical storage.
23 
24  // Create a control tree that assumes A and B are small.
26  FLA_SUBPROBLEM,
27  NULL,
28  NULL );
29 
30  // Create a control tree that marches through A and B vertically.
32  FLA_BLOCKED_VARIANT1,
35 
36  // Create a control tree that marches through A and B horizontally.
38  FLA_BLOCKED_VARIANT3,
41 
42  // Create a control tree that marches through A and B horizontally, then
43  // vertically.
45  FLA_BLOCKED_VARIANT3,
48 }
fla_blocksize_t * FLA_Blocksize_create(dim_t b_s, dim_t b_d, dim_t b_c, dim_t b_z)
Definition: FLA_Blocksize.c:36
fla_copyt_t * flash_copyt_cntl_lr
Definition: FLASH_Copyt_cntl_init.c:15
fla_blocksize_t * flash_copyt_bsize
Definition: FLASH_Copyt_cntl_init.c:17
fla_copyt_t * flash_copyt_cntl_tb
Definition: FLASH_Copyt_cntl_init.c:14
fla_copyt_t * flash_copyt_cntl
Definition: FLASH_Copyt_cntl_init.c:16
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
fla_copyt_t * flash_copyt_cntl_blas
Definition: FLASH_Copyt_cntl_init.c:13

◆ FLASH_Eig_gest_cntl_finalize()

void FLASH_Eig_gest_cntl_finalize ( void  )

References FLA_Blocksize_free(), and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flash().

65 {
68 
70 }
fla_blocksize_t * flash_eig_gest_bsize
Definition: FLASH_Eig_gest_cntl_init.c:22
void FLA_Blocksize_free(fla_blocksize_t *bp)
Definition: FLA_Blocksize.c:110
fla_eig_gest_t * flash_eig_gest_cntl
Definition: FLASH_Eig_gest_cntl_init.c:21
void FLA_Cntl_obj_free(void *cntl)
Definition: FLA_Cntl.c:13
fla_eig_gest_t * flash_eig_gest_cntl_leaf
Definition: FLASH_Eig_gest_cntl_init.c:20

◆ FLASH_Eig_gest_cntl_init()

void FLASH_Eig_gest_cntl_init ( void  )

References FLA_Blocksize_create(), and FLA_Cntl_eig_gest_obj_create().

Referenced by FLA_Cntl_init_flash().

25 {
26  // Set blocksize for hierarchical storage.
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  NULL,
37  NULL,
38  NULL,
39  NULL,
40  NULL,
41  NULL,
42  NULL,
43  NULL,
44  NULL );
45 
46  // Create a control tree that assumes A is large.
48  FLA_BLOCKED_VARIANT1,
53  NULL,
54  NULL,
55  NULL,
62 }
fla_blocksize_t * FLA_Blocksize_create(dim_t b_s, dim_t b_d, dim_t b_c, dim_t b_z)
Definition: FLA_Blocksize.c:36
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_blocksize_t * flash_eig_gest_bsize
Definition: FLASH_Eig_gest_cntl_init.c:22
fla_her2k_t * flash_her2k_cntl_mm
Definition: FLASH_Her2k_cntl_init.c:19
fla_hemm_t * flash_hemm_cntl_mm
Definition: FLASH_Hemm_cntl_init.c:21
fla_eig_gest_t * flash_eig_gest_cntl
Definition: FLASH_Eig_gest_cntl_init.c:21
fla_trsm_t * flash_trsm_cntl_mm
Definition: FLASH_Trsm_cntl_init.c:19
fla_axpy_t * flash_axpy_cntl
Definition: FLASH_Axpy_cntl_init.c:15
fla_eig_gest_t * flash_eig_gest_cntl_leaf
Definition: FLASH_Eig_gest_cntl_init.c:20
fla_trmm_t * flash_trmm_cntl_mm
Definition: FLASH_Trmm_cntl_init.c:19

◆ FLASH_Gemm_cntl_finalize()

void FLASH_Gemm_cntl_finalize ( void  )

References FLA_Blocksize_free(), and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flash().

131 {
133 
137 
144 
148 
150 }
fla_gemm_t * flash_gemm_cntl_pm_bp
Definition: FLASH_Gemm_cntl_init.c:21
fla_gemm_t * flash_gemm_cntl_ip_bb
Definition: FLASH_Gemm_cntl_init.c:27
fla_gemm_t * flash_gemm_cntl_mm_mp
Definition: FLASH_Gemm_cntl_init.c:16
fla_gemm_t * flash_gemm_cntl_mp_pb
Definition: FLASH_Gemm_cntl_init.c:19
fla_gemm_t * flash_gemm_cntl_pm_ip
Definition: FLASH_Gemm_cntl_init.c:22
fla_gemm_t * flash_gemm_cntl_pb_bb
Definition: FLASH_Gemm_cntl_init.c:25
fla_blocksize_t * flash_gemm_bsize
Definition: FLASH_Gemm_cntl_init.c:37
fla_gemm_t * flash_gemm_cntl_mm_op
Definition: FLASH_Gemm_cntl_init.c:18
fla_gemm_t * flash_gemm_cntl_op_pb
Definition: FLASH_Gemm_cntl_init.c:24
fla_gemm_t * flash_gemm_cntl_bp_bb
Definition: FLASH_Gemm_cntl_init.c:26
void FLA_Blocksize_free(fla_blocksize_t *bp)
Definition: FLA_Blocksize.c:110
fla_gemm_t * flash_gemm_cntl_mm_pm
Definition: FLASH_Gemm_cntl_init.c:17
fla_gemm_t * flash_gemm_cntl_mp_ip
Definition: FLASH_Gemm_cntl_init.c:20
fla_gemm_t * flash_gemm_cntl_op_bp
Definition: FLASH_Gemm_cntl_init.c:23
fla_gemm_t * flash_gemm_cntl_blas
Definition: FLASH_Gemm_cntl_init.c:15
void FLA_Cntl_obj_free(void *cntl)
Definition: FLA_Cntl.c:13

◆ FLASH_Gemm_cntl_init()

void FLASH_Gemm_cntl_init ( void  )

References FLA_Blocksize_create(), FLA_Cntl_gemm_obj_create(), flash_gemm_cntl_bp_bb, flash_gemm_cntl_ip_bb, flash_gemm_cntl_mm_op, flash_gemm_cntl_mp_pb, flash_gemm_cntl_op_pb, flash_gemm_cntl_pb_bb, and flash_gemm_cntl_pm_bp.

Referenced by FLA_Cntl_init_flash().

40 {
41  // Set gemm blocksize for hierarchical storage.
42  flash_gemm_bsize = FLA_Blocksize_create( 1, 1, 1, 1 );
43 
44  // Create a control tree node that executes a gemm subproblem.
46  FLA_SUBPROBLEM,
47  NULL,
48  NULL,
49  NULL );
50 
51  // Create control trees for situations where one dimension is large.
53  FLA_BLOCKED_VARIANT1,
58  FLA_BLOCKED_VARIANT3,
63  FLA_BLOCKED_VARIANT5,
67 
68  // Create control trees for situations where two dimensions are large.
70  FLA_BLOCKED_VARIANT1,
75  FLA_BLOCKED_VARIANT1,
80  FLA_BLOCKED_VARIANT3,
85  FLA_BLOCKED_VARIANT3,
90  FLA_BLOCKED_VARIANT5,
95  FLA_BLOCKED_VARIANT5,
99 
100  // Create control trees for situations where all dimensions are large.
102  FLA_BLOCKED_VARIANT1,
107  FLA_BLOCKED_VARIANT3,
112  FLA_BLOCKED_VARIANT5,
116 
117  // Alias select control trees for convenience, when the caller doesn't
118  // care (as he usually doesn't when partitioning hierarchical matricies)
119  // which order the matrix is partitioned into blocks
127 
128 }
fla_gemm_t * flash_gemm_cntl_pm_bp
Definition: FLASH_Gemm_cntl_init.c:21
fla_scal_t * flash_scal_cntl
Definition: FLASH_Scal_cntl_init.c:16
fla_blocksize_t * FLA_Blocksize_create(dim_t b_s, dim_t b_d, dim_t b_c, dim_t b_z)
Definition: FLA_Blocksize.c:36
fla_gemm_t * flash_gemm_cntl_ip_bb
Definition: FLASH_Gemm_cntl_init.c:27
fla_gemm_t * flash_gemm_cntl_mm_mp
Definition: FLASH_Gemm_cntl_init.c:16
fla_gemm_t * flash_gemm_cntl_bp
Definition: FLASH_Gemm_cntl_init.c:34
fla_gemm_t * flash_gemm_cntl_mp_pb
Definition: FLASH_Gemm_cntl_init.c:19
fla_gemm_t * flash_gemm_cntl_pm_ip
Definition: FLASH_Gemm_cntl_init.c:22
fla_gemm_t * flash_gemm_cntl_pb_bb
Definition: FLASH_Gemm_cntl_init.c:25
fla_blocksize_t * flash_gemm_bsize
Definition: FLASH_Gemm_cntl_init.c:37
fla_gemm_t * flash_gemm_cntl_mm_op
Definition: FLASH_Gemm_cntl_init.c:18
fla_gemm_t * flash_gemm_cntl_op_pb
Definition: FLASH_Gemm_cntl_init.c:24
fla_gemm_t * flash_gemm_cntl_mp
Definition: FLASH_Gemm_cntl_init.c:30
fla_gemm_t * flash_gemm_cntl_bp_bb
Definition: FLASH_Gemm_cntl_init.c:26
fla_gemm_t * flash_gemm_cntl_pb
Definition: FLASH_Gemm_cntl_init.c:33
fla_gemm_t * flash_gemm_cntl_mm_pm
Definition: FLASH_Gemm_cntl_init.c:17
fla_gemm_t * flash_gemm_cntl_mp_ip
Definition: FLASH_Gemm_cntl_init.c:20
fla_gemm_t * flash_gemm_cntl_pm
Definition: FLASH_Gemm_cntl_init.c:31
fla_gemm_t * flash_gemm_cntl_op_bp
Definition: FLASH_Gemm_cntl_init.c:23
fla_gemm_t * flash_gemm_cntl_blas
Definition: FLASH_Gemm_cntl_init.c:15
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_gemm_t * flash_gemm_cntl_op
Definition: FLASH_Gemm_cntl_init.c:32
fla_gemm_t * flash_gemm_cntl_ip
Definition: FLASH_Gemm_cntl_init.c:35
fla_gemm_t * flash_gemm_cntl_mm
Definition: FLASH_Gemm_cntl_init.c:29

◆ FLASH_Gemv_cntl_finalize()

void FLASH_Gemv_cntl_finalize ( void  )

References FLA_Blocksize_free(), and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flash().

60 {
62 
65 
68 
70 }
fla_gemv_t * flash_gemv_cntl_cp_bv
Definition: FLASH_Gemv_cntl_init.c:19
fla_gemv_t * flash_gemv_cntl_fm_cp
Definition: FLASH_Gemv_cntl_init.c:17
fla_gemv_t * flash_gemv_cntl_rp_bv
Definition: FLASH_Gemv_cntl_init.c:18
fla_gemv_t * flash_gemv_cntl_blas
Definition: FLASH_Gemv_cntl_init.c:15
void FLA_Blocksize_free(fla_blocksize_t *bp)
Definition: FLA_Blocksize.c:110
fla_gemv_t * flash_gemv_cntl_fm_rp
Definition: FLASH_Gemv_cntl_init.c:16
void FLA_Cntl_obj_free(void *cntl)
Definition: FLA_Cntl.c:13
fla_blocksize_t * flash_gemv_bsize
Definition: FLASH_Gemv_cntl_init.c:20

◆ FLASH_Gemv_cntl_init()

void FLASH_Gemv_cntl_init ( void  )

References FLA_Blocksize_create(), and FLA_Cntl_gemv_obj_create().

Referenced by FLA_Cntl_init_flash().

23 {
24  // Set gemv blocksize for hierarchical storage.
25  flash_gemv_bsize = FLA_Blocksize_create( 1, 1, 1, 1 );
26 
27  // Create a control tree node that executes a gemv subproblem.
29  FLA_SUBPROBLEM,
30  NULL,
31  NULL,
32  NULL );
33 
34  // Create control trees for situations where one dimension is large.
36  FLA_BLOCKED_VARIANT1,
41  FLA_BLOCKED_VARIANT5,
45 
46  // Create control trees for situations where both dimensions are large.
48  FLA_BLOCKED_VARIANT1,
53  FLA_BLOCKED_VARIANT5,
57 }
fla_blocksize_t * FLA_Blocksize_create(dim_t b_s, dim_t b_d, dim_t b_c, dim_t b_z)
Definition: FLA_Blocksize.c:36
fla_gemv_t * flash_gemv_cntl_cp_bv
Definition: FLASH_Gemv_cntl_init.c:19
fla_gemv_t * flash_gemv_cntl_fm_cp
Definition: FLASH_Gemv_cntl_init.c:17
fla_gemv_t * flash_gemv_cntl_rp_bv
Definition: FLASH_Gemv_cntl_init.c:18
fla_gemv_t * flash_gemv_cntl_blas
Definition: FLASH_Gemv_cntl_init.c:15
fla_gemv_t * flash_gemv_cntl_fm_rp
Definition: FLASH_Gemv_cntl_init.c:16
fla_scal_t * flash_scal_cntl
Definition: FLASH_Scal_cntl_init.c:16
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
fla_blocksize_t * flash_gemv_bsize
Definition: FLASH_Gemv_cntl_init.c:20

◆ FLASH_Hemm_cntl_finalize()

void FLASH_Hemm_cntl_finalize ( void  )

References FLA_Blocksize_free(), and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flash().

67 {
69 
73 
75 }
fla_hemm_t * flash_hemm_cntl_blas
Definition: FLASH_Hemm_cntl_init.c:18
fla_blocksize_t * flash_hemm_bsize
Definition: FLASH_Hemm_cntl_init.c:22
fla_hemm_t * flash_hemm_cntl_mp
Definition: FLASH_Hemm_cntl_init.c:20
void FLA_Blocksize_free(fla_blocksize_t *bp)
Definition: FLA_Blocksize.c:110
fla_hemm_t * flash_hemm_cntl_bp
Definition: FLASH_Hemm_cntl_init.c:19
void FLA_Cntl_obj_free(void *cntl)
Definition: FLA_Cntl.c:13
fla_hemm_t * flash_hemm_cntl_mm
Definition: FLASH_Hemm_cntl_init.c:21

◆ FLASH_Hemm_cntl_init()

void FLASH_Hemm_cntl_init ( void  )

References FLA_Blocksize_create(), and FLA_Cntl_hemm_obj_create().

Referenced by FLA_Cntl_init_flash().

25 {
26  // Set hemm blocksize for hierarchical storage.
27  flash_hemm_bsize = FLA_Blocksize_create( 1, 1, 1, 1 );
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 }
fla_blocksize_t * FLA_Blocksize_create(dim_t b_s, dim_t b_d, dim_t b_c, dim_t b_z)
Definition: FLA_Blocksize.c:36
fla_scal_t * flash_scal_cntl
Definition: FLASH_Scal_cntl_init.c:16
fla_hemm_t * flash_hemm_cntl_blas
Definition: FLASH_Hemm_cntl_init.c:18
fla_gemm_t * flash_gemm_cntl_mm_mp
Definition: FLASH_Gemm_cntl_init.c:16
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_blocksize_t * flash_hemm_bsize
Definition: FLASH_Hemm_cntl_init.c:22
fla_hemm_t * flash_hemm_cntl_mp
Definition: FLASH_Hemm_cntl_init.c:20
fla_hemm_t * flash_hemm_cntl_bp
Definition: FLASH_Hemm_cntl_init.c:19
fla_hemm_t * flash_hemm_cntl_mm
Definition: FLASH_Hemm_cntl_init.c:21
fla_gemm_t * flash_gemm_cntl_op_bp
Definition: FLASH_Gemm_cntl_init.c:23

◆ FLASH_Her2k_cntl_finalize()

void FLASH_Her2k_cntl_finalize ( void  )

References FLA_Blocksize_free(), and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flash().

65 {
67 
71 
73 }
fla_her2k_t * flash_her2k_cntl_op
Definition: FLASH_Her2k_cntl_init.c:18
fla_blocksize_t * flash_her2k_bsize
Definition: FLASH_Her2k_cntl_init.c:20
fla_her2k_t * flash_her2k_cntl_mm
Definition: FLASH_Her2k_cntl_init.c:19
void FLA_Blocksize_free(fla_blocksize_t *bp)
Definition: FLA_Blocksize.c:110
fla_her2k_t * flash_her2k_cntl_ip
Definition: FLASH_Her2k_cntl_init.c:17
void FLA_Cntl_obj_free(void *cntl)
Definition: FLA_Cntl.c:13
fla_her2k_t * flash_her2k_cntl_blas
Definition: FLASH_Her2k_cntl_init.c:16

◆ FLASH_Her2k_cntl_init()

void FLASH_Her2k_cntl_init ( void  )

References FLA_Blocksize_create(), and FLA_Cntl_her2k_obj_create().

Referenced by FLA_Cntl_init_flash().

23 {
24  // Set her2k blocksize for hierarchical storage.
26 
27  // Create a control tree that assumes A and B are b x b blocks.
29  FLA_SUBPROBLEM,
30  NULL,
31  NULL,
32  NULL,
33  NULL,
34  NULL );
35 
36  // Create a control tree that assumes A and B form an inner panel product.
38  FLA_BLOCKED_VARIANT9,
42  NULL,
43  NULL );
44 
45  // Create a control tree that assumes A and B form an outer panel product.
47  FLA_BLOCKED_VARIANT4,
53 
54  // Create a control tree that assumes A and B are both large.
56  FLA_BLOCKED_VARIANT9,
60  NULL,
61  NULL );
62 }
fla_blocksize_t * FLA_Blocksize_create(dim_t b_s, dim_t b_d, dim_t b_c, dim_t b_z)
Definition: FLA_Blocksize.c:36
fla_her2k_t * flash_her2k_cntl_op
Definition: FLASH_Her2k_cntl_init.c:18
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_blocksize_t * flash_her2k_bsize
Definition: FLASH_Her2k_cntl_init.c:20
fla_scalr_t * flash_scalr_cntl
Definition: FLASH_Scalr_cntl_init.c:16
fla_gemm_t * flash_gemm_cntl_pb_bb
Definition: FLASH_Gemm_cntl_init.c:25
fla_her2k_t * flash_her2k_cntl_mm
Definition: FLASH_Her2k_cntl_init.c:19
fla_her2k_t * flash_her2k_cntl_ip
Definition: FLASH_Her2k_cntl_init.c:17
fla_her2k_t * flash_her2k_cntl_blas
Definition: FLASH_Her2k_cntl_init.c:16

◆ FLASH_Herk_cntl_finalize()

void FLASH_Herk_cntl_finalize ( void  )

References FLA_Blocksize_free(), and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flash().

61 {
63 
67 
69 }
fla_herk_t * flash_herk_cntl_op
Definition: FLASH_Herk_cntl_init.c:18
fla_blocksize_t * flash_herk_bsize
Definition: FLASH_Herk_cntl_init.c:20
fla_herk_t * flash_herk_cntl_blas
Definition: FLASH_Herk_cntl_init.c:16
fla_herk_t * flash_herk_cntl_ip
Definition: FLASH_Herk_cntl_init.c:17
fla_herk_t * flash_herk_cntl_mm
Definition: FLASH_Herk_cntl_init.c:19
void FLA_Blocksize_free(fla_blocksize_t *bp)
Definition: FLA_Blocksize.c:110
void FLA_Cntl_obj_free(void *cntl)
Definition: FLA_Cntl.c:13

◆ FLASH_Herk_cntl_init()

void FLASH_Herk_cntl_init ( void  )

References FLA_Blocksize_create(), and FLA_Cntl_herk_obj_create().

Referenced by FLA_Cntl_init_flash().

23 {
24  // Set herk blocksize for hierarchical storage.
25  flash_herk_bsize = FLA_Blocksize_create( 1, 1, 1, 1 );
26 
27  // Create a control tree that assumes A is a b x b block.
29  FLA_SUBPROBLEM,
30  NULL,
31  NULL,
32  NULL,
33  NULL );
34 
35  // Create a control tree that assumes A * A' forms an inner panel product.
37  FLA_BLOCKED_VARIANT5,
41  NULL );
42 
43  // Create a control tree that assumes A * A' forms an outer panel product.
45  FLA_BLOCKED_VARIANT2,
50 
51  // Create a control tree that assumes A is large.
53  FLA_BLOCKED_VARIANT5,
57  NULL );
58 }
fla_blocksize_t * FLA_Blocksize_create(dim_t b_s, dim_t b_d, dim_t b_c, dim_t b_z)
Definition: FLA_Blocksize.c:36
fla_herk_t * flash_herk_cntl_op
Definition: FLASH_Herk_cntl_init.c:18
fla_blocksize_t * flash_herk_bsize
Definition: FLASH_Herk_cntl_init.c:20
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_herk_t * flash_herk_cntl_blas
Definition: FLASH_Herk_cntl_init.c:16
fla_herk_t * flash_herk_cntl_ip
Definition: FLASH_Herk_cntl_init.c:17
fla_scalr_t * flash_scalr_cntl
Definition: FLASH_Scalr_cntl_init.c:16
fla_herk_t * flash_herk_cntl_mm
Definition: FLASH_Herk_cntl_init.c:19
fla_gemm_t * flash_gemm_cntl_pb_bb
Definition: FLASH_Gemm_cntl_init.c:25

◆ FLASH_LQ_UT_cntl_finalize()

void FLASH_LQ_UT_cntl_finalize ( void  )

References FLA_Blocksize_free(), and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flash().

41 {
44 
46 }
void FLA_Blocksize_free(fla_blocksize_t *bp)
Definition: FLA_Blocksize.c:110
fla_lqut_t * flash_lqut_cntl
Definition: FLASH_LQ_UT_cntl_init.c:16
void FLA_Cntl_obj_free(void *cntl)
Definition: FLA_Cntl.c:13
fla_blocksize_t * flash_lqut_var3_bsize
Definition: FLASH_LQ_UT_cntl_init.c:18
fla_lqut_t * flash_lqut_cntl_leaf
Definition: FLASH_LQ_UT_cntl_init.c:15

◆ FLASH_LQ_UT_cntl_init()

void FLASH_LQ_UT_cntl_init ( void  )

References FLA_Blocksize_create(), and FLA_Cntl_lqut_obj_create().

Referenced by FLA_Cntl_init_flash().

21 {
22  // Set blocksizes for hierarchical storage.
24 
25  // Create a control tree to compute the subproblem.
27  FLA_SUBPROBLEM,
28  NULL,
29  NULL,
30  NULL );
31 
32  // Create a control tree to invoke variant 2.
34  FLA_BLOCKED_VARIANT3,
38 }
fla_blocksize_t * FLA_Blocksize_create(dim_t b_s, dim_t b_d, dim_t b_c, dim_t b_z)
Definition: FLA_Blocksize.c:36
fla_lqut_t * flash_lqut_cntl
Definition: FLASH_LQ_UT_cntl_init.c:16
fla_apqut_t * flash_apqut_cntl_blas
Definition: FLASH_Apply_Q_UT_cntl_init.c:23
fla_blocksize_t * flash_lqut_var3_bsize
Definition: FLASH_LQ_UT_cntl_init.c:18
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_lqut_t * flash_lqut_cntl_leaf
Definition: FLASH_LQ_UT_cntl_init.c:15

◆ FLASH_LU_incpiv_cntl_finalize()

void FLASH_LU_incpiv_cntl_finalize ( void  )

References FLA_Blocksize_free(), and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flash().

54 {
57 
59 }
fla_blocksize_t * flash_lu_incpiv_bsize
Definition: FLASH_LU_incpiv_cntl_init.c:19
fla_lu_t * flash_lu_incpiv_cntl_leaf
Definition: FLASH_LU_incpiv_cntl_init.c:17
void FLA_Blocksize_free(fla_blocksize_t *bp)
Definition: FLA_Blocksize.c:110
void FLA_Cntl_obj_free(void *cntl)
Definition: FLA_Cntl.c:13
fla_lu_t * flash_lu_incpiv_cntl
Definition: FLASH_LU_incpiv_cntl_init.c:18

◆ FLASH_LU_incpiv_cntl_init()

void FLASH_LU_incpiv_cntl_init ( void  )

References FLA_Blocksize_create(), and FLA_Cntl_lu_obj_create().

Referenced by FLA_Cntl_init_flash().

22 {
23  // Set blocksize for hierarchical storage.
25 
26  // Create a control tree that assumes A is a b x b block.
28  FLA_SUBPROBLEM,
29  NULL,
30  NULL,
31  NULL,
32  NULL,
33  NULL,
34  NULL,
35  NULL,
36  NULL,
37  NULL );
38 
39  // Create a control tree that assumes A is large.
41  FLA_BLOCKED_VARIANT1,
45  NULL,
46  NULL,
50  NULL );
51 }
fla_blocksize_t * FLA_Blocksize_create(dim_t b_s, dim_t b_d, dim_t b_c, dim_t b_z)
Definition: FLA_Blocksize.c:36
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 * flash_gemm_cntl_bp_bb
Definition: FLASH_Gemm_cntl_init.c:26
fla_trsm_t * flash_trsm_cntl_bp
Definition: FLASH_Trsm_cntl_init.c:17
fla_blocksize_t * flash_lu_incpiv_bsize
Definition: FLASH_LU_incpiv_cntl_init.c:19
fla_lu_t * flash_lu_incpiv_cntl_leaf
Definition: FLASH_LU_incpiv_cntl_init.c:17
fla_appiv_t * flash_appiv_cntl_bp
Definition: FLASH_Apply_pivots_cntl_init.c:14
fla_lu_t * flash_lu_incpiv_cntl
Definition: FLASH_LU_incpiv_cntl_init.c:18

◆ FLASH_LU_nopiv_cntl_finalize()

void FLASH_LU_nopiv_cntl_finalize ( void  )

References FLA_Blocksize_free(), and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flash().

53 {
56 
58 }
fla_lu_t * flash_lu_nopiv_cntl
Definition: FLASH_LU_nopiv_cntl_init.c:17
fla_blocksize_t * flash_lu_nopiv_bsize
Definition: FLASH_LU_nopiv_cntl_init.c:18
void FLA_Blocksize_free(fla_blocksize_t *bp)
Definition: FLA_Blocksize.c:110
fla_lu_t * flash_lu_nopiv_cntl_leaf
Definition: FLASH_LU_nopiv_cntl_init.c:16
void FLA_Cntl_obj_free(void *cntl)
Definition: FLA_Cntl.c:13

◆ FLASH_LU_nopiv_cntl_init()

void FLASH_LU_nopiv_cntl_init ( void  )

References FLA_Blocksize_create(), and FLA_Cntl_lu_obj_create().

Referenced by FLA_Cntl_init_flash().

21 {
22  // Set blocksize for hierarchical storage.
24 
25  // Create a control tree that assumes A is a b x b block.
27  FLA_SUBPROBLEM,
28  NULL,
29  NULL,
30  NULL,
31  NULL,
32  NULL,
33  NULL,
34  NULL,
35  NULL,
36  NULL );
37 
38  // Create a control tree that assumes A is large.
40  FLA_BLOCKED_VARIANT5,
44  NULL,
45  NULL,
48  NULL,
49  NULL );
50 }
fla_blocksize_t * FLA_Blocksize_create(dim_t b_s, dim_t b_d, dim_t b_c, dim_t b_z)
Definition: FLA_Blocksize.c:36
fla_lu_t * flash_lu_nopiv_cntl
Definition: FLASH_LU_nopiv_cntl_init.c:17
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_trsm_t * flash_trsm_cntl_bp
Definition: FLASH_Trsm_cntl_init.c:17
fla_blocksize_t * flash_lu_nopiv_bsize
Definition: FLASH_LU_nopiv_cntl_init.c:18
fla_lu_t * flash_lu_nopiv_cntl_leaf
Definition: FLASH_LU_nopiv_cntl_init.c:16
fla_gemm_t * flash_gemm_cntl_op_bp
Definition: FLASH_Gemm_cntl_init.c:23

◆ FLASH_LU_piv_cntl_finalize()

void FLASH_LU_piv_cntl_finalize ( void  )

References FLA_Blocksize_free(), and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flash().

54 {
57 
59 }
fla_blocksize_t * flash_lu_piv_bsize
Definition: FLASH_LU_piv_cntl_init.c:19
fla_lu_t * flash_lu_piv_cntl_leaf
Definition: FLASH_LU_piv_cntl_init.c:17
fla_lu_t * flash_lu_piv_cntl
Definition: FLASH_LU_piv_cntl_init.c:18
void FLA_Blocksize_free(fla_blocksize_t *bp)
Definition: FLA_Blocksize.c:110
void FLA_Cntl_obj_free(void *cntl)
Definition: FLA_Cntl.c:13

◆ FLASH_LU_piv_cntl_init()

void FLASH_LU_piv_cntl_init ( void  )

References FLA_Blocksize_create(), and FLA_Cntl_lu_obj_create().

Referenced by FLA_Cntl_init_flash().

22 {
23  // Set blocksize for hierarchical storage.
25 
26  // Create a control tree that assumes A is a b x b block.
28  FLA_SUBPROBLEM,
29  NULL,
30  NULL,
31  NULL,
32  NULL,
33  NULL,
34  NULL,
35  NULL,
36  NULL,
37  NULL );
38 
39  // Create a control tree that assumes A is large.
41  FLA_BLOCKED_VARIANT5,
45  NULL,
46  NULL,
50  NULL );
51 }
fla_gemm_t * flash_gemm_cntl_op_bp
Definition: FLASH_Gemm_cntl_init.c:23
fla_blocksize_t * FLA_Blocksize_create(dim_t b_s, dim_t b_d, dim_t b_c, dim_t b_z)
Definition: FLA_Blocksize.c:36
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_blocksize_t * flash_lu_piv_bsize
Definition: FLASH_LU_piv_cntl_init.c:19
fla_lu_t * flash_lu_piv_cntl_leaf
Definition: FLASH_LU_piv_cntl_init.c:17
fla_lu_t * flash_lu_piv_cntl
Definition: FLASH_LU_piv_cntl_init.c:18
fla_trsm_t * flash_trsm_cntl_bp
Definition: FLASH_Trsm_cntl_init.c:17
fla_appiv_t * flash_appiv_cntl_bp
Definition: FLASH_Apply_pivots_cntl_init.c:14

◆ FLASH_Lyap_cntl_finalize()

void FLASH_Lyap_cntl_finalize ( void  )

References FLA_Blocksize_free(), and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flash().

55 {
58 
60 }
fla_lyap_t * flash_lyap_cntl
Definition: FLASH_Lyap_cntl_init.c:21
fla_blocksize_t * flash_lyap_bsize
Definition: FLASH_Lyap_cntl_init.c:22
fla_lyap_t * flash_lyap_cntl_leaf
Definition: FLASH_Lyap_cntl_init.c:20
void FLA_Blocksize_free(fla_blocksize_t *bp)
Definition: FLA_Blocksize.c:110
void FLA_Cntl_obj_free(void *cntl)
Definition: FLA_Cntl.c:13

◆ FLASH_Lyap_cntl_init()

void FLASH_Lyap_cntl_init ( void  )

References FLA_Blocksize_create(), and FLA_Cntl_lyap_obj_create().

Referenced by FLA_Cntl_init_flash().

25 {
26  // Set blocksize for hierarchical storage.
27  flash_lyap_bsize = FLA_Blocksize_create( 1, 1, 1, 1 );
28 
29  // Create a control tree that assumes A and C are b x b blocks.
31  FLA_SUBPROBLEM,
32  NULL,
33  NULL,
34  NULL,
35  NULL,
36  NULL,
37  NULL,
38  NULL,
39  NULL );
40 
41  // Create a control tree that assumes A is a matrix and C is a matrix.
43  FLA_BLOCKED_VARIANT1,
48  NULL, //flash_gemm_cntl_pm,
49  NULL, //flash_gemm_cntl_pm,
52 }
fla_lyap_t * flash_lyap_cntl
Definition: FLASH_Lyap_cntl_init.c:21
fla_blocksize_t * FLA_Blocksize_create(dim_t b_s, dim_t b_d, dim_t b_c, dim_t b_z)
Definition: FLA_Blocksize.c:36
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_her2k_t * flash_her2k_cntl_ip
Definition: FLASH_Her2k_cntl_init.c:17
fla_scal_t * flash_scal_cntl
Definition: FLASH_Scal_cntl_init.c:16
fla_blocksize_t * flash_lyap_bsize
Definition: FLASH_Lyap_cntl_init.c:22
fla_sylv_t * flash_sylv_cntl
Definition: FLASH_Sylv_cntl_init.c:18
fla_lyap_t * flash_lyap_cntl_leaf
Definition: FLASH_Lyap_cntl_init.c:20
fla_hemm_t * flash_hemm_cntl_mp
Definition: FLASH_Hemm_cntl_init.c:20

◆ FLASH_QR2_UT_cntl_finalize()

void FLASH_QR2_UT_cntl_finalize ( void  )

References FLA_Blocksize_free(), and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flash().

46 {
49 
51 }
fla_qr2ut_t * flash_qr2ut_cntl_leaf
Definition: FLASH_QR2_UT_cntl_init.c:13
fla_blocksize_t * flash_qr2ut_var2_bsize
Definition: FLASH_QR2_UT_cntl_init.c:15
void FLA_Blocksize_free(fla_blocksize_t *bp)
Definition: FLA_Blocksize.c:110
fla_qr2ut_t * flash_qr2ut_cntl
Definition: FLASH_QR2_UT_cntl_init.c:14
void FLA_Cntl_obj_free(void *cntl)
Definition: FLA_Cntl.c:13

◆ FLASH_QR2_UT_cntl_init()

void FLASH_QR2_UT_cntl_init ( void  )

References FLA_Blocksize_create(), and FLA_Cntl_qr2ut_obj_create().

Referenced by FLA_Cntl_init_flash().

18 {
19  // Set blocksize for hierarchical storage.
21 
22  // Create a control tree to invoke variant 1.
24  FLA_SUBPROBLEM,
25  NULL,
26  NULL,
27  NULL,
28  NULL,
29  NULL,
30  NULL,
31  NULL );
32 
33  // Create a control tree to invoke variant 2.
35  FLA_BLOCKED_VARIANT2,
38  NULL,
39  NULL,
40  NULL,
41  NULL,
42  NULL );
43 }
fla_blocksize_t * FLA_Blocksize_create(dim_t b_s, dim_t b_d, dim_t b_c, dim_t b_z)
Definition: FLA_Blocksize.c:36
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_qr2ut_t * flash_qr2ut_cntl_leaf
Definition: FLASH_QR2_UT_cntl_init.c:13
fla_blocksize_t * flash_qr2ut_var2_bsize
Definition: FLASH_QR2_UT_cntl_init.c:15
fla_qr2ut_t * flash_qr2ut_cntl
Definition: FLASH_QR2_UT_cntl_init.c:14

◆ FLASH_QR_UT_cntl_finalize()

void FLASH_QR_UT_cntl_finalize ( void  )

References FLA_Blocksize_free(), and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flash().

41 {
44 
46 }
fla_qrut_t * flash_qrut_cntl
Definition: FLASH_QR_UT_cntl_init.c:16
fla_qrut_t * flash_qrut_cntl_leaf
Definition: FLASH_QR_UT_cntl_init.c:15
void FLA_Blocksize_free(fla_blocksize_t *bp)
Definition: FLA_Blocksize.c:110
fla_blocksize_t * flash_qrut_var3_bsize
Definition: FLASH_QR_UT_cntl_init.c:18
void FLA_Cntl_obj_free(void *cntl)
Definition: FLA_Cntl.c:13

◆ FLASH_QR_UT_cntl_init()

void FLASH_QR_UT_cntl_init ( void  )

References FLA_Blocksize_create(), and FLA_Cntl_qrut_obj_create().

Referenced by FLA_Cntl_init_flash().

21 {
22  // Set blocksizes for hierarchical storage.
24 
25  // Create a control tree to compute the subproblem.
27  FLA_SUBPROBLEM,
28  NULL,
29  NULL,
30  NULL );
31 
32  // Create a control tree to invoke variant 3.
34  FLA_BLOCKED_VARIANT3,
38 }
fla_apqut_t * flash_apqut_cntl_blas
Definition: FLASH_Apply_Q_UT_cntl_init.c:23
fla_blocksize_t * FLA_Blocksize_create(dim_t b_s, dim_t b_d, dim_t b_c, dim_t b_z)
Definition: FLA_Blocksize.c:36
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_qrut_t * flash_qrut_cntl
Definition: FLASH_QR_UT_cntl_init.c:16
fla_qrut_t * flash_qrut_cntl_leaf
Definition: FLASH_QR_UT_cntl_init.c:15
fla_blocksize_t * flash_qrut_var3_bsize
Definition: FLASH_QR_UT_cntl_init.c:18

◆ FLASH_QR_UT_inc_cntl_finalize()

void FLASH_QR_UT_inc_cntl_finalize ( void  )

References FLA_Blocksize_free(), and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flash().

37 {
39 
41 }
fla_blocksize_t * flash_qrutinc_var1_bsize
Definition: FLASH_QR_UT_inc_cntl_init.c:19
fla_qrutinc_t * flash_qrutinc_cntl
Definition: FLASH_QR_UT_inc_cntl_init.c:18
void FLA_Blocksize_free(fla_blocksize_t *bp)
Definition: FLA_Blocksize.c:110
void FLA_Cntl_obj_free(void *cntl)
Definition: FLA_Cntl.c:13

◆ FLASH_QR_UT_inc_cntl_init()

void FLASH_QR_UT_inc_cntl_init ( void  )

References FLA_Blocksize_create(), and FLA_Cntl_qrutinc_obj_create().

Referenced by FLA_Cntl_init_flash().

22 {
23  // Set blocksizes for hierarchical storage.
25 
26  // Create a control tree to invoke variant 1.
28  FLA_BLOCKED_VARIANT1,
34 }
fla_blocksize_t * FLA_Blocksize_create(dim_t b_s, dim_t b_d, dim_t b_c, dim_t b_z)
Definition: FLA_Blocksize.c:36
fla_qr2ut_t * flash_qr2ut_cntl
Definition: FLASH_QR2_UT_cntl_init.c:14
fla_qrut_t * flash_qrut_cntl_leaf
Definition: FLASH_QR_UT_cntl_init.c:15
fla_blocksize_t * flash_qrutinc_var1_bsize
Definition: FLASH_QR_UT_inc_cntl_init.c:19
fla_apq2ut_t * flash_apq2ut_cntl
Definition: FLASH_Apply_Q2_UT_cntl_init.c:15
fla_qrutinc_t * flash_qrutinc_cntl
Definition: FLASH_QR_UT_inc_cntl_init.c:18
fla_apqut_t * flash_apqut_cntl
Definition: FLASH_Apply_Q_UT_cntl_init.c:22
fla_qrutinc_t * FLA_Cntl_qrutinc_obj_create(FLA_Matrix_type matrix_type, int variant, fla_blocksize_t *blocksize, fla_qrut_t *sub_qrut, fla_apqut_t *sub_apqut, fla_qr2ut_t *sub_qr2ut, fla_apq2ut_t *sub_apq2ut)
Definition: FLA_Cntl_lapack.c:136

◆ FLASH_Scal_cntl_finalize()

void FLASH_Scal_cntl_finalize ( void  )

References FLA_Blocksize_free(), and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flash().

51 {
53 
57 
59 }
fla_scal_t * flash_scal_cntl_tb
Definition: FLASH_Scal_cntl_init.c:14
fla_scal_t * flash_scal_cntl
Definition: FLASH_Scal_cntl_init.c:16
fla_scal_t * flash_scal_cntl_lr
Definition: FLASH_Scal_cntl_init.c:15
void FLA_Blocksize_free(fla_blocksize_t *bp)
Definition: FLA_Blocksize.c:110
fla_blocksize_t * flash_scal_bsize
Definition: FLASH_Scal_cntl_init.c:17
fla_scal_t * flash_scal_cntl_blas
Definition: FLASH_Scal_cntl_init.c:13
void FLA_Cntl_obj_free(void *cntl)
Definition: FLA_Cntl.c:13

◆ FLASH_Scal_cntl_init()

void FLASH_Scal_cntl_init ( void  )

References FLA_Blocksize_create(), and FLA_Cntl_scal_obj_create().

Referenced by FLA_Cntl_init_flash().

20 {
21  // Set blocksize for hierarchical storage.
22  flash_scal_bsize = FLA_Blocksize_create( 1, 1, 1, 1 );
23 
24  // Create a control tree that assumes A is small.
26  FLA_SUBPROBLEM,
27  NULL,
28  NULL );
29 
30  // Create a control tree that marches through A vertically.
32  FLA_BLOCKED_VARIANT1,
35 
36  // Create a control tree that marches through A horizontally.
38  FLA_BLOCKED_VARIANT3,
41 
42  // Create a control tree that marches through A horizontally, then
43  // vertically.
45  FLA_BLOCKED_VARIANT3,
48 }
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
fla_blocksize_t * FLA_Blocksize_create(dim_t b_s, dim_t b_d, dim_t b_c, dim_t b_z)
Definition: FLA_Blocksize.c:36
fla_scal_t * flash_scal_cntl_tb
Definition: FLASH_Scal_cntl_init.c:14
fla_scal_t * flash_scal_cntl
Definition: FLASH_Scal_cntl_init.c:16
fla_scal_t * flash_scal_cntl_lr
Definition: FLASH_Scal_cntl_init.c:15
fla_blocksize_t * flash_scal_bsize
Definition: FLASH_Scal_cntl_init.c:17
fla_scal_t * flash_scal_cntl_blas
Definition: FLASH_Scal_cntl_init.c:13

◆ FLASH_Scalr_cntl_finalize()

void FLASH_Scalr_cntl_finalize ( void  )

References FLA_Blocksize_free(), and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flash().

41 {
43 
45 
47 }
fla_scalr_t * flash_scalr_cntl
Definition: FLASH_Scalr_cntl_init.c:16
void FLA_Blocksize_free(fla_blocksize_t *bp)
Definition: FLA_Blocksize.c:110
fla_scalr_t * flash_scalr_cntl_blas
Definition: FLASH_Scalr_cntl_init.c:15
fla_blocksize_t * flash_scalr_bsize
Definition: FLASH_Scalr_cntl_init.c:17
void FLA_Cntl_obj_free(void *cntl)
Definition: FLA_Cntl.c:13

◆ FLASH_Scalr_cntl_init()

void FLASH_Scalr_cntl_init ( void  )

References FLA_Blocksize_create(), and FLA_Cntl_scalr_obj_create().

Referenced by FLA_Cntl_init_flash().

20 {
21  // Set blocksize for hierarchical storage.
23 
24  // Create a control tree that assumes A is small.
26  FLA_SUBPROBLEM,
27  NULL,
28  NULL,
29  NULL );
30 
31  // Create a control tree that computes column panels, top-left to
32  // bottom-right.
34  FLA_BLOCKED_VARIANT3,
38 }
fla_blocksize_t * FLA_Blocksize_create(dim_t b_s, dim_t b_d, dim_t b_c, dim_t b_z)
Definition: FLA_Blocksize.c:36
fla_scalr_t * flash_scalr_cntl
Definition: FLASH_Scalr_cntl_init.c:16
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
fla_scalr_t * flash_scalr_cntl_blas
Definition: FLASH_Scalr_cntl_init.c:15
fla_blocksize_t * flash_scalr_bsize
Definition: FLASH_Scalr_cntl_init.c:17
fla_scal_t * flash_scal_cntl_tb
Definition: FLASH_Scal_cntl_init.c:14

◆ FLASH_SPDinv_cntl_finalize()

void FLASH_SPDinv_cntl_finalize ( void  )

References FLA_Blocksize_free(), and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flash().

38 {
40 
42 }
fla_spdinv_t * flash_spdinv_cntl
Definition: FLASH_SPDinv_cntl_init.c:17
fla_blocksize_t * flash_spdinv_size_cutoff
Definition: FLASH_SPDinv_cntl_init.c:18
void FLA_Blocksize_free(fla_blocksize_t *bp)
Definition: FLA_Blocksize.c:110
void FLA_Cntl_obj_free(void *cntl)
Definition: FLA_Cntl.c:13

◆ FLASH_SPDinv_cntl_init()

void FLASH_SPDinv_cntl_init ( void  )

References FLA_Cntl_spdinv_obj_create(), and FLA_Query_blocksizes().

Referenced by FLA_Cntl_init_flash().

21 {
22  // Rather than embed a blocksize, we store the cutoff matrix size for
23  // switching from external routines to internal FLAME variants.
24  flash_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,
35 }
fla_chol_t * flash_chol_cntl
Definition: FLASH_Chol_cntl_init.c:17
fla_spdinv_t * flash_spdinv_cntl
Definition: FLASH_SPDinv_cntl_init.c:17
fla_trinv_t * flash_trinv_cntl
Definition: FLASH_Trinv_cntl_init.c:17
fla_blocksize_t * flash_spdinv_size_cutoff
Definition: FLASH_SPDinv_cntl_init.c:18
fla_blocksize_t * FLA_Query_blocksizes(FLA_Dimension dim)
Definition: FLA_Blocksize.c:142
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_ttmm_t * flash_ttmm_cntl
Definition: FLASH_Ttmm_cntl_init.c:17

◆ FLASH_Sylv_cntl_finalize()

void FLASH_Sylv_cntl_finalize ( void  )

References FLA_Blocksize_free(), and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flash().

76 {
80 
82 }
fla_sylv_t * flash_sylv_cntl_leaf
Definition: FLASH_Sylv_cntl_init.c:16
fla_sylv_t * flash_sylv_cntl
Definition: FLASH_Sylv_cntl_init.c:18
void FLA_Blocksize_free(fla_blocksize_t *bp)
Definition: FLA_Blocksize.c:110
fla_sylv_t * flash_sylv_cntl_mb
Definition: FLASH_Sylv_cntl_init.c:17
void FLA_Cntl_obj_free(void *cntl)
Definition: FLA_Cntl.c:13
fla_blocksize_t * flash_sylv_bsize
Definition: FLASH_Sylv_cntl_init.c:19

◆ FLASH_Sylv_cntl_init()

void FLASH_Sylv_cntl_init ( void  )

References FLA_Blocksize_create(), and FLA_Cntl_sylv_obj_create().

Referenced by FLA_Cntl_init_flash().

22 {
23  // Set blocksize for hierarchical storage.
24  flash_sylv_bsize = FLA_Blocksize_create( 1, 1, 1, 1 );
25 
26  // Create a control tree that assumes A and B are b x b blocks.
28  FLA_SUBPROBLEM,
29  NULL,
30  NULL,
31  NULL,
32  NULL,
33  NULL,
34  NULL,
35  NULL,
36  NULL,
37  NULL,
38  NULL,
39  NULL,
40  NULL );
41 
42  // Create a control tree that assumes A is a matrix and B is a block.
44  FLA_BLOCKED_VARIANT17,
47  NULL,
48  NULL,
50  NULL,
51  NULL,
52  NULL,
53  NULL,
54  NULL,
55  NULL,
56  NULL );
57 
58  // Create a control tree that assumes A is a matrix and B is a matrix.
60  FLA_BLOCKED_VARIANT15,
63  NULL,
64  NULL,
66  NULL,
67  NULL,
68  NULL,
69  NULL,
70  NULL,
71  NULL,
72  NULL );
73 }
fla_blocksize_t * FLA_Blocksize_create(dim_t b_s, dim_t b_d, dim_t b_c, dim_t b_z)
Definition: FLA_Blocksize.c:36
fla_sylv_t * flash_sylv_cntl_leaf
Definition: FLASH_Sylv_cntl_init.c:16
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_sylv_t * flash_sylv_cntl
Definition: FLASH_Sylv_cntl_init.c:18
fla_gemm_t * flash_gemm_cntl_pm_bp
Definition: FLASH_Gemm_cntl_init.c:21
fla_sylv_t * flash_sylv_cntl_mb
Definition: FLASH_Sylv_cntl_init.c:17
fla_gemm_t * flash_gemm_cntl_ip_bb
Definition: FLASH_Gemm_cntl_init.c:27
fla_blocksize_t * flash_sylv_bsize
Definition: FLASH_Sylv_cntl_init.c:19

◆ FLASH_Symm_cntl_finalize()

void FLASH_Symm_cntl_finalize ( void  )

References FLA_Blocksize_free(), and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flash().

67 {
69 
73 
75 }
fla_symm_t * flash_symm_cntl_blas
Definition: FLASH_Symm_cntl_init.c:18
fla_blocksize_t * flash_symm_bsize
Definition: FLASH_Symm_cntl_init.c:22
fla_symm_t * flash_symm_cntl_bp
Definition: FLASH_Symm_cntl_init.c:19
fla_symm_t * flash_symm_cntl_mm
Definition: FLASH_Symm_cntl_init.c:21
void FLA_Blocksize_free(fla_blocksize_t *bp)
Definition: FLA_Blocksize.c:110
void FLA_Cntl_obj_free(void *cntl)
Definition: FLA_Cntl.c:13
fla_symm_t * flash_symm_cntl_mp
Definition: FLASH_Symm_cntl_init.c:20

◆ FLASH_Symm_cntl_init()

void FLASH_Symm_cntl_init ( void  )

References FLA_Blocksize_create(), and FLA_Cntl_symm_obj_create().

Referenced by FLA_Cntl_init_flash().

25 {
26  // Set symm blocksize for hierarchical storage.
27  flash_symm_bsize = FLA_Blocksize_create( 1, 1, 1, 1 );
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 }
fla_blocksize_t * FLA_Blocksize_create(dim_t b_s, dim_t b_d, dim_t b_c, dim_t b_z)
Definition: FLA_Blocksize.c:36
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_gemm_t * flash_gemm_cntl_mm_mp
Definition: FLASH_Gemm_cntl_init.c:16
fla_symm_t * flash_symm_cntl_blas
Definition: FLASH_Symm_cntl_init.c:18
fla_blocksize_t * flash_symm_bsize
Definition: FLASH_Symm_cntl_init.c:22
fla_symm_t * flash_symm_cntl_bp
Definition: FLASH_Symm_cntl_init.c:19
fla_scal_t * flash_scal_cntl
Definition: FLASH_Scal_cntl_init.c:16
fla_symm_t * flash_symm_cntl_mm
Definition: FLASH_Symm_cntl_init.c:21
fla_gemm_t * flash_gemm_cntl_op_bp
Definition: FLASH_Gemm_cntl_init.c:23
fla_symm_t * flash_symm_cntl_mp
Definition: FLASH_Symm_cntl_init.c:20

◆ FLASH_Syr2k_cntl_finalize()

void FLASH_Syr2k_cntl_finalize ( void  )

References FLA_Blocksize_free(), and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flash().

65 {
67 
71 
73 }
fla_syr2k_t * flash_syr2k_cntl_blas
Definition: FLASH_Syr2k_cntl_init.c:16
fla_syr2k_t * flash_syr2k_cntl_op
Definition: FLASH_Syr2k_cntl_init.c:18
fla_syr2k_t * flash_syr2k_cntl_ip
Definition: FLASH_Syr2k_cntl_init.c:17
fla_blocksize_t * flash_syr2k_bsize
Definition: FLASH_Syr2k_cntl_init.c:20
void FLA_Blocksize_free(fla_blocksize_t *bp)
Definition: FLA_Blocksize.c:110
fla_syr2k_t * flash_syr2k_cntl_mm
Definition: FLASH_Syr2k_cntl_init.c:19
void FLA_Cntl_obj_free(void *cntl)
Definition: FLA_Cntl.c:13

◆ FLASH_Syr2k_cntl_init()

void FLASH_Syr2k_cntl_init ( void  )

References FLA_Blocksize_create(), and FLA_Cntl_syr2k_obj_create().

Referenced by FLA_Cntl_init_flash().

23 {
24  // Set syr2k blocksize for hierarchical storage.
26 
27  // Create a control tree that assumes A and B are b x b blocks.
29  FLA_SUBPROBLEM,
30  NULL,
31  NULL,
32  NULL,
33  NULL,
34  NULL );
35 
36  // Create a control tree that assumes A and B form an inner panel product.
38  FLA_BLOCKED_VARIANT9,
42  NULL,
43  NULL );
44 
45  // Create a control tree that assumes A and B form an outer panel product.
47  FLA_BLOCKED_VARIANT4,
53 
54  // Create a control tree that assumes A and B are both large.
56  FLA_BLOCKED_VARIANT9,
60  NULL,
61  NULL );
62 }
fla_blocksize_t * FLA_Blocksize_create(dim_t b_s, dim_t b_d, dim_t b_c, dim_t b_z)
Definition: FLA_Blocksize.c:36
fla_scalr_t * flash_scalr_cntl
Definition: FLASH_Scalr_cntl_init.c:16
fla_gemm_t * flash_gemm_cntl_pb_bb
Definition: FLASH_Gemm_cntl_init.c:25
fla_syr2k_t * flash_syr2k_cntl_blas
Definition: FLASH_Syr2k_cntl_init.c:16
fla_syr2k_t * flash_syr2k_cntl_op
Definition: FLASH_Syr2k_cntl_init.c:18
fla_syr2k_t * flash_syr2k_cntl_ip
Definition: FLASH_Syr2k_cntl_init.c:17
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_blocksize_t * flash_syr2k_bsize
Definition: FLASH_Syr2k_cntl_init.c:20
fla_syr2k_t * flash_syr2k_cntl_mm
Definition: FLASH_Syr2k_cntl_init.c:19

◆ FLASH_Syrk_cntl_finalize()

void FLASH_Syrk_cntl_finalize ( void  )

References FLA_Blocksize_free(), and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flash().

61 {
63 
67 
69 }
fla_syrk_t * flash_syrk_cntl_blas
Definition: FLASH_Syrk_cntl_init.c:16
fla_syrk_t * flash_syrk_cntl_op
Definition: FLASH_Syrk_cntl_init.c:18
fla_syrk_t * flash_syrk_cntl_mm
Definition: FLASH_Syrk_cntl_init.c:19
fla_syrk_t * flash_syrk_cntl_ip
Definition: FLASH_Syrk_cntl_init.c:17
void FLA_Blocksize_free(fla_blocksize_t *bp)
Definition: FLA_Blocksize.c:110
void FLA_Cntl_obj_free(void *cntl)
Definition: FLA_Cntl.c:13
fla_blocksize_t * flash_syrk_bsize
Definition: FLASH_Syrk_cntl_init.c:20

◆ FLASH_Syrk_cntl_init()

void FLASH_Syrk_cntl_init ( void  )

References FLA_Blocksize_create(), and FLA_Cntl_syrk_obj_create().

Referenced by FLA_Cntl_init_flash().

23 {
24  // Set syrk blocksize for hierarchical storage.
25  flash_syrk_bsize = FLA_Blocksize_create( 1, 1, 1, 1 );
26 
27  // Create a control tree that assumes A is a b x b block.
29  FLA_SUBPROBLEM,
30  NULL,
31  NULL,
32  NULL,
33  NULL );
34 
35  // Create a control tree that assumes A * A' forms an inner panel product.
37  FLA_BLOCKED_VARIANT5,
41  NULL );
42 
43  // Create a control tree that assumes A * A' forms an outer panel product.
45  FLA_BLOCKED_VARIANT2,
50 
51  // Create a control tree that assumes A is large.
53  FLA_BLOCKED_VARIANT5,
57  NULL );
58 }
fla_blocksize_t * FLA_Blocksize_create(dim_t b_s, dim_t b_d, dim_t b_c, dim_t b_z)
Definition: FLA_Blocksize.c:36
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_syrk_t * flash_syrk_cntl_blas
Definition: FLASH_Syrk_cntl_init.c:16
fla_syrk_t * flash_syrk_cntl_op
Definition: FLASH_Syrk_cntl_init.c:18
fla_scalr_t * flash_scalr_cntl
Definition: FLASH_Scalr_cntl_init.c:16
fla_syrk_t * flash_syrk_cntl_mm
Definition: FLASH_Syrk_cntl_init.c:19
fla_syrk_t * flash_syrk_cntl_ip
Definition: FLASH_Syrk_cntl_init.c:17
fla_gemm_t * flash_gemm_cntl_pb_bb
Definition: FLASH_Gemm_cntl_init.c:25
fla_blocksize_t * flash_syrk_bsize
Definition: FLASH_Syrk_cntl_init.c:20

◆ FLASH_Transpose_cntl_finalize()

void FLASH_Transpose_cntl_finalize ( void  )

◆ FLASH_Transpose_cntl_init()

void FLASH_Transpose_cntl_init ( void  )

◆ FLASH_Trinv_cntl_finalize()

void FLASH_Trinv_cntl_finalize ( void  )

References FLA_Blocksize_free(), and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flash().

47 {
50 
52 }
void FLA_Blocksize_free(fla_blocksize_t *bp)
Definition: FLA_Blocksize.c:110
fla_blocksize_t * flash_trinv_bsize
Definition: FLASH_Trinv_cntl_init.c:18
void FLA_Cntl_obj_free(void *cntl)
Definition: FLA_Cntl.c:13
fla_trinv_t * flash_trinv_cntl_leaf
Definition: FLASH_Trinv_cntl_init.c:16
fla_trinv_t * flash_trinv_cntl
Definition: FLASH_Trinv_cntl_init.c:17

◆ FLASH_Trinv_cntl_init()

void FLASH_Trinv_cntl_init ( void  )

References FLA_Blocksize_create(), and FLA_Cntl_trinv_obj_create().

Referenced by FLA_Cntl_init_flash().

21 {
22  // Set blocksize for hierarchical storage.
24 
25  // Create a control tree that assumes A is a b x b block.
27  FLA_SUBPROBLEM,
28  NULL,
29  NULL,
30  NULL,
31  NULL,
32  NULL,
33  NULL );
34 
35  // Create a control tree that assumes A is large.
37  FLA_BLOCKED_VARIANT3,
40  NULL,
44 }
fla_gemm_t * flash_gemm_cntl_op_bp
Definition: FLASH_Gemm_cntl_init.c:23
fla_blocksize_t * FLA_Blocksize_create(dim_t b_s, dim_t b_d, dim_t b_c, dim_t b_z)
Definition: FLA_Blocksize.c:36
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_trsm_t * flash_trsm_cntl_bp
Definition: FLASH_Trsm_cntl_init.c:17
fla_blocksize_t * flash_trinv_bsize
Definition: FLASH_Trinv_cntl_init.c:18
fla_trinv_t * flash_trinv_cntl_leaf
Definition: FLASH_Trinv_cntl_init.c:16
fla_trinv_t * flash_trinv_cntl
Definition: FLASH_Trinv_cntl_init.c:17

◆ FLASH_Trmm_cntl_finalize()

void FLASH_Trmm_cntl_finalize ( void  )

References FLA_Blocksize_free(), and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flash().

61 {
63 
67 
69 }
fla_blocksize_t * flash_trmm_bsize
Definition: FLASH_Trmm_cntl_init.c:20
fla_trmm_t * flash_trmm_cntl_mm
Definition: FLASH_Trmm_cntl_init.c:19
fla_trmm_t * flash_trmm_cntl_bp
Definition: FLASH_Trmm_cntl_init.c:17
void FLA_Blocksize_free(fla_blocksize_t *bp)
Definition: FLA_Blocksize.c:110
fla_trmm_t * flash_trmm_cntl_mp
Definition: FLASH_Trmm_cntl_init.c:18
void FLA_Cntl_obj_free(void *cntl)
Definition: FLA_Cntl.c:13
fla_trmm_t * flash_trmm_cntl_blas
Definition: FLASH_Trmm_cntl_init.c:16

◆ FLASH_Trmm_cntl_init()

void FLASH_Trmm_cntl_init ( void  )

References FLA_Blocksize_create(), and FLA_Cntl_trmm_obj_create().

Referenced by FLA_Cntl_init_flash().

23 {
24  // Set trmm blocksize for hierarchical storage.
25  flash_trmm_bsize = FLA_Blocksize_create( 1, 1, 1, 1 );
26 
27  // Create a control tree that assumes A and B are b x b blocks.
29  FLA_SUBPROBLEM,
30  NULL,
31  NULL,
32  NULL,
33  NULL );
34 
35  // Create a control tree that assumes A is a block and B is a panel.
37  FLA_BLOCKED_VARIANT3,
41  NULL );
42 
43  // Create a control tree that assumes A is large and B is a panel.
45  FLA_BLOCKED_VARIANT2,
50 
51  // Create a control tree that assumes A and B are both large.
53  FLA_BLOCKED_VARIANT3,
57  NULL );
58 }
fla_blocksize_t * FLA_Blocksize_create(dim_t b_s, dim_t b_d, dim_t b_c, dim_t b_z)
Definition: FLA_Blocksize.c:36
fla_blocksize_t * flash_trmm_bsize
Definition: FLASH_Trmm_cntl_init.c:20
fla_trmm_t * flash_trmm_cntl_mm
Definition: FLASH_Trmm_cntl_init.c:19
fla_trmm_t * flash_trmm_cntl_bp
Definition: FLASH_Trmm_cntl_init.c:17
fla_gemm_t * flash_gemm_cntl_op_bp
Definition: FLASH_Gemm_cntl_init.c:23
fla_scal_t * flash_scal_cntl
Definition: FLASH_Scal_cntl_init.c:16
fla_trmm_t * flash_trmm_cntl_mp
Definition: FLASH_Trmm_cntl_init.c:18
fla_trmm_t * flash_trmm_cntl_blas
Definition: FLASH_Trmm_cntl_init.c:16
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

◆ FLASH_Trsm_cntl_finalize()

void FLASH_Trsm_cntl_finalize ( void  )

References FLA_Blocksize_free(), and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flash().

61 {
63 
67 
69 }
fla_trsm_t * flash_trsm_cntl_mm
Definition: FLASH_Trsm_cntl_init.c:19
fla_blocksize_t * flash_trsm_bsize
Definition: FLASH_Trsm_cntl_init.c:20
fla_trsm_t * flash_trsm_cntl_blas
Definition: FLASH_Trsm_cntl_init.c:16
fla_trsm_t * flash_trsm_cntl_bp
Definition: FLASH_Trsm_cntl_init.c:17
void FLA_Blocksize_free(fla_blocksize_t *bp)
Definition: FLA_Blocksize.c:110
void FLA_Cntl_obj_free(void *cntl)
Definition: FLA_Cntl.c:13
fla_trsm_t * flash_trsm_cntl_mp
Definition: FLASH_Trsm_cntl_init.c:18

◆ FLASH_Trsm_cntl_init()

void FLASH_Trsm_cntl_init ( void  )

References FLA_Blocksize_create(), and FLA_Cntl_trsm_obj_create().

Referenced by FLA_Cntl_init_flash().

23 {
24  // Set trsm blocksize for hierarchical storage.
25  flash_trsm_bsize = FLA_Blocksize_create( 1, 1, 1, 1 );
26 
27  // Create a control tree that assumes A and B are b x b blocks.
29  FLA_SUBPROBLEM,
30  NULL,
31  NULL,
32  NULL,
33  NULL );
34 
35  // Create a control tree that assumes A is a block and B is a panel.
37  FLA_BLOCKED_VARIANT3,
41  NULL );
42 
43  // Create a control tree that assumes A is large and B is a panel.
45  FLA_BLOCKED_VARIANT2,
50 
51  // Create a control tree that assumes A and B are both large.
53  FLA_BLOCKED_VARIANT3,
57  NULL );
58 }
fla_scal_t * flash_scal_cntl
Definition: FLASH_Scal_cntl_init.c:16
fla_blocksize_t * FLA_Blocksize_create(dim_t b_s, dim_t b_d, dim_t b_c, dim_t b_z)
Definition: FLA_Blocksize.c:36
fla_trsm_t * flash_trsm_cntl_mm
Definition: FLASH_Trsm_cntl_init.c:19
fla_blocksize_t * flash_trsm_bsize
Definition: FLASH_Trsm_cntl_init.c:20
fla_trsm_t * flash_trsm_cntl_blas
Definition: FLASH_Trsm_cntl_init.c:16
fla_trsm_t * flash_trsm_cntl_bp
Definition: FLASH_Trsm_cntl_init.c:17
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_gemm_t * flash_gemm_cntl_op_bp
Definition: FLASH_Gemm_cntl_init.c:23
fla_trsm_t * flash_trsm_cntl_mp
Definition: FLASH_Trsm_cntl_init.c:18

◆ FLASH_Trsv_cntl_finalize()

void FLASH_Trsv_cntl_finalize ( void  )

References FLA_Blocksize_free(), and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flash().

40 {
42 
44 
46 }
fla_trsv_t * flash_trsv_cntl
Definition: FLASH_Trsv_cntl_init.c:16
fla_blocksize_t * flash_trsv_bsize
Definition: FLASH_Trsv_cntl_init.c:17
fla_trsv_t * flash_trsv_cntl_blas
Definition: FLASH_Trsv_cntl_init.c:15
void FLA_Blocksize_free(fla_blocksize_t *bp)
Definition: FLA_Blocksize.c:110
void FLA_Cntl_obj_free(void *cntl)
Definition: FLA_Cntl.c:13

◆ FLASH_Trsv_cntl_init()

void FLASH_Trsv_cntl_init ( void  )

References FLA_Blocksize_create(), and FLA_Cntl_trsv_obj_create().

Referenced by FLA_Cntl_init_flash().

20 {
21  // Set trsv blocksize for hierarchical storage.
22  flash_trsv_bsize = FLA_Blocksize_create( 1, 1, 1, 1 );
23 
24  // Create a control tree that assumes A is a b x b block.
26  FLA_SUBPROBLEM,
27  NULL,
28  NULL,
29  NULL );
30 
31  // Create a control tree that assumes A is large.
33  FLA_BLOCKED_VARIANT2,
37 }
fla_blocksize_t * FLA_Blocksize_create(dim_t b_s, dim_t b_d, dim_t b_c, dim_t b_z)
Definition: FLA_Blocksize.c:36
fla_trsv_t * flash_trsv_cntl
Definition: FLASH_Trsv_cntl_init.c:16
fla_blocksize_t * flash_trsv_bsize
Definition: FLASH_Trsv_cntl_init.c:17
fla_trsv_t * flash_trsv_cntl_blas
Definition: FLASH_Trsv_cntl_init.c:15
fla_gemv_t * flash_gemv_cntl_cp_bv
Definition: FLASH_Gemv_cntl_init.c:19
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

◆ FLASH_Ttmm_cntl_finalize()

void FLASH_Ttmm_cntl_finalize ( void  )

References FLA_Blocksize_free(), and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flash().

45 {
48 
50 }
fla_ttmm_t * flash_ttmm_cntl_leaf
Definition: FLASH_Ttmm_cntl_init.c:16
fla_ttmm_t * flash_ttmm_cntl
Definition: FLASH_Ttmm_cntl_init.c:17
void FLA_Blocksize_free(fla_blocksize_t *bp)
Definition: FLA_Blocksize.c:110
void FLA_Cntl_obj_free(void *cntl)
Definition: FLA_Cntl.c:13
fla_blocksize_t * flash_ttmm_bsize
Definition: FLASH_Ttmm_cntl_init.c:18

◆ FLASH_Ttmm_cntl_init()

void FLASH_Ttmm_cntl_init ( void  )

References FLA_Blocksize_create(), and FLA_Cntl_ttmm_obj_create().

Referenced by FLA_Cntl_init_flash().

21 {
22  // Set blocksize for hierarchical storage.
23  flash_ttmm_bsize = FLA_Blocksize_create( 1, 1, 1, 1 );
24 
25  // Create a control tree that assumes A is a b x b block.
27  FLA_SUBPROBLEM,
28  NULL,
29  NULL,
30  NULL,
31  NULL,
32  NULL );
33 
34  // Create a control tree that assumes A is large.
36  FLA_BLOCKED_VARIANT1,
41  NULL );
42 }
fla_blocksize_t * FLA_Blocksize_create(dim_t b_s, dim_t b_d, dim_t b_c, dim_t b_z)
Definition: FLA_Blocksize.c:36
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_ttmm_t * flash_ttmm_cntl_leaf
Definition: FLASH_Ttmm_cntl_init.c:16
fla_ttmm_t * flash_ttmm_cntl
Definition: FLASH_Ttmm_cntl_init.c:17
fla_herk_t * flash_herk_cntl_op
Definition: FLASH_Herk_cntl_init.c:18
fla_blocksize_t * flash_ttmm_bsize
Definition: FLASH_Ttmm_cntl_init.c:18
fla_trmm_t * flash_trmm_cntl_bp
Definition: FLASH_Trmm_cntl_init.c:17

◆ FLASH_UDdate_UT_cntl_finalize()

void FLASH_UDdate_UT_cntl_finalize ( void  )

References FLA_Blocksize_free(), and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flash().

38 {
41 
43 }
fla_blocksize_t * flash_uddateut_var2_bsize
Definition: FLASH_UDdate_UT_cntl_init.c:15
fla_uddateut_t * flash_uddateut_cntl
Definition: FLASH_UDdate_UT_cntl_init.c:14
fla_uddateut_t * flash_uddateut_cntl_leaf
Definition: FLASH_UDdate_UT_cntl_init.c:13
void FLA_Blocksize_free(fla_blocksize_t *bp)
Definition: FLA_Blocksize.c:110
void FLA_Cntl_obj_free(void *cntl)
Definition: FLA_Cntl.c:13

◆ FLASH_UDdate_UT_cntl_init()

void FLASH_UDdate_UT_cntl_init ( void  )

References FLA_Blocksize_create(), and FLA_Cntl_uddateut_obj_create().

Referenced by FLA_Cntl_init_flash().

18 {
19  // Set blocksize for hierarchical storage.
21 
22  // Create a control tree to invoke variant 1.
24  FLA_SUBPROBLEM,
25  NULL,
26  NULL,
27  NULL );
28 
29  // Create a control tree to invoke variant 2.
31  FLA_BLOCKED_VARIANT2,
34  NULL );
35 }
fla_blocksize_t * FLA_Blocksize_create(dim_t b_s, dim_t b_d, dim_t b_c, dim_t b_z)
Definition: FLA_Blocksize.c:36
fla_blocksize_t * flash_uddateut_var2_bsize
Definition: FLASH_UDdate_UT_cntl_init.c:15
fla_uddateut_t * flash_uddateut_cntl
Definition: FLASH_UDdate_UT_cntl_init.c:14
fla_uddateut_t * flash_uddateut_cntl_leaf
Definition: FLASH_UDdate_UT_cntl_init.c:13
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

◆ FLASH_UDdate_UT_inc_cntl_finalize()

void FLASH_UDdate_UT_inc_cntl_finalize ( void  )

References FLA_Blocksize_free(), and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flash().

33 {
35 
37 }
fla_blocksize_t * flash_uddateutinc_var1_bsize
Definition: FLASH_UDdate_UT_inc_cntl_init.c:17
void FLA_Blocksize_free(fla_blocksize_t *bp)
Definition: FLA_Blocksize.c:110
void FLA_Cntl_obj_free(void *cntl)
Definition: FLA_Cntl.c:13
fla_uddateutinc_t * flash_uddateutinc_cntl
Definition: FLASH_UDdate_UT_inc_cntl_init.c:16

◆ FLASH_UDdate_UT_inc_cntl_init()

void FLASH_UDdate_UT_inc_cntl_init ( void  )

References FLA_Blocksize_create(), and FLA_Cntl_uddateutinc_obj_create().

Referenced by FLA_Cntl_init_flash().

20 {
21  // Set blocksizes for hierarchical storage.
23 
24  // Create a control tree to invoke variant 1.
26  FLA_BLOCKED_VARIANT1,
30 }
fla_blocksize_t * FLA_Blocksize_create(dim_t b_s, dim_t b_d, dim_t b_c, dim_t b_z)
Definition: FLA_Blocksize.c:36
fla_apqudut_t * flash_apqudut_cntl
Definition: FLASH_Apply_QUD_UT_cntl_init.c:15
fla_blocksize_t * flash_uddateutinc_var1_bsize
Definition: FLASH_UDdate_UT_inc_cntl_init.c:17
fla_uddateutinc_t * FLA_Cntl_uddateutinc_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:344
fla_uddateut_t * flash_uddateut_cntl
Definition: FLASH_UDdate_UT_cntl_init.c:14
fla_uddateutinc_t * flash_uddateutinc_cntl
Definition: FLASH_UDdate_UT_inc_cntl_init.c:16