Functions | |
void | FLASH_Trsm_cntl_init () |
void | FLASH_Trsm_cntl_finalize () |
Variables | |
fla_gemm_t * | flash_gemm_cntl_op_bp |
fla_trsm_t * | flash_trsm_cntl_blas |
fla_trsm_t * | flash_trsm_cntl_bp |
fla_trsm_t * | flash_trsm_cntl_mp |
fla_trsm_t * | flash_trsm_cntl_mm |
fla_blocksize_t * | flash_trsm_bsize |
void FLASH_Trsm_cntl_finalize | ( | void | ) |
References FLA_Blocksize_free(), and FLA_Cntl_obj_free().
Referenced by FLA_Cntl_finalize_flash().
00078 { 00079 FLA_Cntl_obj_free( flash_trsm_cntl_blas ); 00080 00081 FLA_Cntl_obj_free( flash_trsm_cntl_bp ); 00082 FLA_Cntl_obj_free( flash_trsm_cntl_mp ); 00083 FLA_Cntl_obj_free( flash_trsm_cntl_mm ); 00084 00085 FLA_Blocksize_free( flash_trsm_bsize ); 00086 }
void FLASH_Trsm_cntl_init | ( | void | ) |
References FLA_Blocksize_create(), and FLA_Cntl_trsm_obj_create().
Referenced by FLA_Cntl_init_flash().
00044 { 00045 // Set trsm blocksize for hierarchical storage. 00046 flash_trsm_bsize = FLA_Blocksize_create( 1, 1, 1, 1 ); 00047 00048 // Create a control tree that assumes A and B are b x b blocks. 00049 flash_trsm_cntl_blas = FLA_Cntl_trsm_obj_create( FLA_HIER, 00050 FLA_SUBPROBLEM, 00051 NULL, 00052 NULL, 00053 NULL ); 00054 00055 // Create a control tree that assumes A is a block and B is a panel. 00056 flash_trsm_cntl_bp = FLA_Cntl_trsm_obj_create( FLA_HIER, 00057 FLA_BLOCKED_VARIANT3, 00058 flash_trsm_bsize, 00059 flash_trsm_cntl_blas, 00060 NULL ); 00061 00062 // Create a control tree that assumes A is large and B is a panel. 00063 flash_trsm_cntl_mp = FLA_Cntl_trsm_obj_create( FLA_HIER, 00064 FLA_BLOCKED_VARIANT2, 00065 flash_trsm_bsize, 00066 flash_trsm_cntl_blas, 00067 flash_gemm_cntl_op_bp ); 00068 00069 // Create a control tree that assumes A and B are both large. 00070 flash_trsm_cntl_mm = FLA_Cntl_trsm_obj_create( FLA_HIER, 00071 FLA_BLOCKED_VARIANT3, 00072 flash_trsm_bsize, 00073 flash_trsm_cntl_mp, 00074 NULL ); 00075 }