libflame  12600
Functions | Variables
FLASH_Her2k_cntl_init.c File Reference

(r12600)

Functions

void FLASH_Her2k_cntl_init ()
void FLASH_Her2k_cntl_finalize ()

Variables

fla_scalr_tflash_scalr_cntl
fla_gemm_tflash_gemm_cntl_pb_bb
fla_her2k_tflash_her2k_cntl_blas
fla_her2k_tflash_her2k_cntl_ip
fla_her2k_tflash_her2k_cntl_op
fla_her2k_tflash_her2k_cntl_mm
fla_blocksize_tflash_her2k_bsize

Function Documentation

void FLASH_Her2k_cntl_finalize ( void  )
void FLASH_Her2k_cntl_init ( void  )

References FLA_Blocksize_create(), and FLA_Cntl_her2k_obj_create().

Referenced by FLA_Cntl_init_flash().

{
    // Set her2k blocksize for hierarchical storage.
    flash_her2k_bsize      = FLA_Blocksize_create( 1, 1, 1, 1 );

    // Create a control tree that assumes A and B are b x b blocks.
    flash_her2k_cntl_blas  = FLA_Cntl_her2k_obj_create( FLA_HIER,
                                                        FLA_SUBPROBLEM,
                                                        NULL,
                                                        NULL,
                                                        NULL,
                                                        NULL,
                                                        NULL );
 
    // Create a control tree that assumes A and B form an inner panel product.
    flash_her2k_cntl_ip    = FLA_Cntl_her2k_obj_create( FLA_HIER,
                                                        FLA_BLOCKED_VARIANT9,
                                                        flash_her2k_bsize,
                                                        flash_scalr_cntl,
                                                        flash_her2k_cntl_blas,
                                                        NULL,
                                                        NULL );

    // Create a control tree that assumes A and B form an outer panel product.
    flash_her2k_cntl_op    = FLA_Cntl_her2k_obj_create( FLA_HIER,
                                                        FLA_BLOCKED_VARIANT4,
                                                        flash_her2k_bsize,
                                                        flash_scalr_cntl,
                                                        flash_her2k_cntl_blas,
                                                        flash_gemm_cntl_pb_bb,
                                                        flash_gemm_cntl_pb_bb );

    // Create a control tree that assumes A and B are both large.
    flash_her2k_cntl_mm    = FLA_Cntl_her2k_obj_create( FLA_HIER,
                                                        FLA_BLOCKED_VARIANT9,
                                                        flash_her2k_bsize,
                                                        flash_scalr_cntl,
                                                        flash_her2k_cntl_op,
                                                        NULL,
                                                        NULL );
}

Variable Documentation

Referenced by FLA_Her2k_internal().