FLA_Gemm_cntl_init.c File Reference

(r)


Functions

void FLA_Gemm_cntl_init ()
void FLA_Gemm_cntl_finalize ()

Variables

fla_gemm_tfla_gemm_cntl_blas
fla_gemm_tfla_gemm_cntl_pb_bb
fla_gemm_tfla_gemm_cntl_bp_bb
fla_gemm_tfla_gemm_cntl_ip_bb
fla_gemm_tfla_gemm_cntl_mp_ip
fla_gemm_tfla_gemm_cntl_mp_ip_bb
fla_gemm_tfla_gemm_cntl_op_bp
fla_gemm_tfla_gemm_cntl_op_bp_bb
fla_gemm_tfla_gemm_cntl_pm_ip
fla_gemm_tfla_gemm_cntl_pm_ip_bb
fla_gemm_tfla_gemm_cntl_op_pb
fla_gemm_tfla_gemm_cntl_op_pb_bb
fla_gemm_tfla_gemm_cntl_mp_pb
fla_gemm_tfla_gemm_cntl_mp_pb_bb
fla_gemm_tfla_gemm_cntl_pm_bp
fla_gemm_tfla_gemm_cntl_pm_bp_bb
fla_gemm_tfla_gemm_cntl_mm_pm
fla_gemm_tfla_gemm_cntl_mm_pm_ip
fla_gemm_tfla_gemm_cntl_mm_pm_ip_bb
fla_gemm_tfla_gemm_cntl_mm_mp
fla_gemm_tfla_gemm_cntl_mm_mp_ip
fla_gemm_tfla_gemm_cntl_mm_mp_ip_bb
fla_gemm_tfla_gemm_cntl_mm_op
fla_gemm_tfla_gemm_cntl_mm_op_bp
fla_gemm_tfla_gemm_cntl_mm_op_bp_bb
fla_blocksize_tfla_gemm_var1_bsize
fla_blocksize_tfla_gemm_var3_bsize
fla_blocksize_tfla_gemm_var5_bsize

Function Documentation

void FLA_Gemm_cntl_finalize ( void   ) 

References FLA_Blocksize_free(), and FLA_Cntl_obj_free().

Referenced by FLA_Cntl_finalize_flamec().

void FLA_Gemm_cntl_init ( void   ) 

References FLA_Cntl_gemm_obj_create(), and FLA_Query_blocksizes().

Referenced by FLA_Cntl_init_flamec().

00069 {
00070     // Set blocksizes with default values for conventional storage.
00071     fla_gemm_var1_bsize = FLA_Query_blocksizes( FLA_DIMENSION_MIN );
00072     fla_gemm_var3_bsize = FLA_Query_blocksizes( FLA_DIMENSION_MIN );
00073     fla_gemm_var5_bsize = FLA_Query_blocksizes( FLA_DIMENSION_MIN );
00074 
00075     // Create a control tree node that executes a gemm subproblem.
00076     fla_gemm_cntl_blas  = FLA_Cntl_gemm_obj_create( FLA_FLAT,
00077                                                     FLA_SUBPROBLEM,
00078                                                     NULL,
00079                                                     NULL );
00080 
00081     // Create control trees for situations where one dimension is large.
00082     fla_gemm_cntl_pb_bb = FLA_Cntl_gemm_obj_create( FLA_FLAT,
00083                                                     FLA_BLOCKED_VARIANT1,
00084                                                     fla_gemm_var1_bsize,
00085                                                     fla_gemm_cntl_blas );
00086     fla_gemm_cntl_bp_bb = FLA_Cntl_gemm_obj_create( FLA_FLAT,
00087                                                     FLA_BLOCKED_VARIANT3,
00088                                                     fla_gemm_var3_bsize,
00089                                                     fla_gemm_cntl_blas );
00090     fla_gemm_cntl_ip_bb = FLA_Cntl_gemm_obj_create( FLA_FLAT,
00091                                                     FLA_BLOCKED_VARIANT5,
00092                                                     fla_gemm_var5_bsize,
00093                                                     fla_gemm_cntl_blas );
00094 
00095     // Create control trees for situations where two dimensions are large.
00096     fla_gemm_cntl_mp_ip    = FLA_Cntl_gemm_obj_create( FLA_FLAT,
00097                                                        FLA_BLOCKED_VARIANT1,
00098                                                        fla_gemm_var1_bsize,
00099                                                        fla_gemm_cntl_blas );
00100     fla_gemm_cntl_mp_ip_bb = FLA_Cntl_gemm_obj_create( FLA_FLAT,
00101                                                        FLA_BLOCKED_VARIANT1,
00102                                                        fla_gemm_var1_bsize,
00103                                                        fla_gemm_cntl_ip_bb );
00104     fla_gemm_cntl_op_bp    = FLA_Cntl_gemm_obj_create( FLA_FLAT,
00105                                                        FLA_BLOCKED_VARIANT1,
00106                                                        fla_gemm_var1_bsize,
00107                                                        fla_gemm_cntl_blas );
00108     fla_gemm_cntl_op_bp_bb = FLA_Cntl_gemm_obj_create( FLA_FLAT,
00109                                                        FLA_BLOCKED_VARIANT1,
00110                                                        fla_gemm_var1_bsize,
00111                                                        fla_gemm_cntl_bp_bb );
00112     fla_gemm_cntl_pm_ip    = FLA_Cntl_gemm_obj_create( FLA_FLAT,
00113                                                        FLA_BLOCKED_VARIANT3,
00114                                                        fla_gemm_var3_bsize,
00115                                                        fla_gemm_cntl_blas );
00116     fla_gemm_cntl_pm_ip_bb = FLA_Cntl_gemm_obj_create( FLA_FLAT,
00117                                                        FLA_BLOCKED_VARIANT3,
00118                                                        fla_gemm_var3_bsize,
00119                                                        fla_gemm_cntl_ip_bb );
00120     fla_gemm_cntl_op_pb    = FLA_Cntl_gemm_obj_create( FLA_FLAT,
00121                                                        FLA_BLOCKED_VARIANT3,
00122                                                        fla_gemm_var3_bsize,
00123                                                        fla_gemm_cntl_blas );
00124     fla_gemm_cntl_op_pb_bb = FLA_Cntl_gemm_obj_create( FLA_FLAT,
00125                                                        FLA_BLOCKED_VARIANT3,
00126                                                        fla_gemm_var3_bsize,
00127                                                        fla_gemm_cntl_pb_bb );
00128     fla_gemm_cntl_mp_pb    = FLA_Cntl_gemm_obj_create( FLA_FLAT,
00129                                                        FLA_BLOCKED_VARIANT5,
00130                                                        fla_gemm_var5_bsize,
00131                                                        fla_gemm_cntl_blas );
00132     fla_gemm_cntl_mp_pb_bb = FLA_Cntl_gemm_obj_create( FLA_FLAT,
00133                                                        FLA_BLOCKED_VARIANT5,
00134                                                        fla_gemm_var5_bsize,
00135                                                        fla_gemm_cntl_pb_bb );
00136     fla_gemm_cntl_pm_bp    = FLA_Cntl_gemm_obj_create( FLA_FLAT,
00137                                                        FLA_BLOCKED_VARIANT5,
00138                                                        fla_gemm_var5_bsize,
00139                                                        fla_gemm_cntl_blas );
00140     fla_gemm_cntl_pm_bp_bb = FLA_Cntl_gemm_obj_create( FLA_FLAT,
00141                                                        FLA_BLOCKED_VARIANT5,
00142                                                        fla_gemm_var5_bsize,
00143                                                        fla_gemm_cntl_bp_bb );
00144 
00145     // Create control trees for situations where all dimensions are large.
00146     fla_gemm_cntl_mm_pm       = FLA_Cntl_gemm_obj_create( FLA_FLAT,
00147                                                           FLA_BLOCKED_VARIANT1,
00148                                                           fla_gemm_var1_bsize,
00149                                                           fla_gemm_cntl_blas );
00150     fla_gemm_cntl_mm_pm_ip    = FLA_Cntl_gemm_obj_create( FLA_FLAT,
00151                                                           FLA_BLOCKED_VARIANT1,
00152                                                           fla_gemm_var1_bsize,
00153                                                           fla_gemm_cntl_pm_ip );
00154     fla_gemm_cntl_mm_pm_ip_bb = FLA_Cntl_gemm_obj_create( FLA_FLAT,
00155                                                           FLA_BLOCKED_VARIANT1,
00156                                                           fla_gemm_var1_bsize,
00157                                                           fla_gemm_cntl_pm_ip_bb );
00158     fla_gemm_cntl_mm_mp       = FLA_Cntl_gemm_obj_create( FLA_FLAT,
00159                                                           FLA_BLOCKED_VARIANT3,
00160                                                           fla_gemm_var3_bsize,
00161                                                           fla_gemm_cntl_blas );
00162     fla_gemm_cntl_mm_mp_ip    = FLA_Cntl_gemm_obj_create( FLA_FLAT,
00163                                                           FLA_BLOCKED_VARIANT3,
00164                                                           fla_gemm_var3_bsize,
00165                                                           fla_gemm_cntl_mp_ip );
00166     fla_gemm_cntl_mm_mp_ip_bb = FLA_Cntl_gemm_obj_create( FLA_FLAT,
00167                                                           FLA_BLOCKED_VARIANT3,
00168                                                           fla_gemm_var3_bsize,
00169                                                           fla_gemm_cntl_mp_ip_bb );
00170     fla_gemm_cntl_mm_op       = FLA_Cntl_gemm_obj_create( FLA_FLAT,
00171                                                           FLA_BLOCKED_VARIANT5,
00172                                                           fla_gemm_var5_bsize,
00173                                                           fla_gemm_cntl_blas );
00174     fla_gemm_cntl_mm_op_bp    = FLA_Cntl_gemm_obj_create( FLA_FLAT,
00175                                                           FLA_BLOCKED_VARIANT5,
00176                                                           fla_gemm_var5_bsize,
00177                                                           fla_gemm_cntl_op_bp );
00178     fla_gemm_cntl_mm_op_bp_bb = FLA_Cntl_gemm_obj_create( FLA_FLAT,
00179                                                           FLA_BLOCKED_VARIANT5,
00180                                                           fla_gemm_var5_bsize,
00181                                                           fla_gemm_cntl_op_bp_bb );
00182 }


Variable Documentation


Generated on Mon Jul 6 05:45:51 2009 for libflame by  doxygen 1.5.9