Functions | |
void | FLASH_Her2k_cntl_init () |
void | FLASH_Her2k_cntl_finalize () |
Variables | |
fla_gemm_t * | flash_gemm_cntl_pb_bb |
fla_her2k_t * | flash_her2k_cntl_blas |
fla_her2k_t * | flash_her2k_cntl_ip |
fla_her2k_t * | flash_her2k_cntl_op |
fla_her2k_t * | flash_her2k_cntl_sq |
fla_blocksize_t * | flash_her2k_bsize |
void FLASH_Her2k_cntl_finalize | ( | void | ) |
References FLA_Blocksize_free(), and FLA_Cntl_obj_free().
Referenced by FLA_Cntl_finalize_flash().
00082 { 00083 FLA_Cntl_obj_free( flash_her2k_cntl_blas ); 00084 00085 FLA_Cntl_obj_free( flash_her2k_cntl_ip ); 00086 FLA_Cntl_obj_free( flash_her2k_cntl_op ); 00087 FLA_Cntl_obj_free( flash_her2k_cntl_sq ); 00088 00089 FLA_Blocksize_free( flash_her2k_bsize ); 00090 }
void FLASH_Her2k_cntl_init | ( | void | ) |
References FLA_Blocksize_create(), and FLA_Cntl_her2k_obj_create().
Referenced by FLA_Cntl_init_flash().
00044 { 00045 // Set her2k blocksize for hierarchical storage. 00046 flash_her2k_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_her2k_cntl_blas = FLA_Cntl_her2k_obj_create( FLA_HIER, 00050 FLA_SUBPROBLEM, 00051 NULL, 00052 NULL, 00053 NULL, 00054 NULL ); 00055 00056 // Create a control tree that assumes A and B form an inner panel product. 00057 flash_her2k_cntl_ip = FLA_Cntl_her2k_obj_create( FLA_HIER, 00058 FLA_BLOCKED_VARIANT9, 00059 flash_her2k_bsize, 00060 flash_her2k_cntl_blas, 00061 NULL, 00062 NULL ); 00063 00064 // Create a control tree that assumes A and B form an outer panel product. 00065 flash_her2k_cntl_op = FLA_Cntl_her2k_obj_create( FLA_HIER, 00066 FLA_BLOCKED_VARIANT4, 00067 flash_her2k_bsize, 00068 flash_her2k_cntl_blas, 00069 flash_gemm_cntl_pb_bb, 00070 flash_gemm_cntl_pb_bb ); 00071 00072 // Create a control tree that assumes A and B are both large. 00073 flash_her2k_cntl_sq = FLA_Cntl_her2k_obj_create( FLA_HIER, 00074 FLA_BLOCKED_VARIANT9, 00075 flash_her2k_bsize, 00076 flash_her2k_cntl_op, 00077 NULL, 00078 NULL ); 00079 }