Browse Source

MAINT: Add the gemm_small_kernel variants

w/o and with b0
pull/4820/head
Rohit Goswami 2 years ago
parent
commit
a198203992
No known key found for this signature in database GPG Key ID: 9CCCE36402CB49A6
2 changed files with 285 additions and 4 deletions
  1. +280
    -1
      kernel/meson.build
  2. +5
    -3
      meson.build

+ 280
- 1
kernel/meson.build View File

@@ -601,7 +601,286 @@ base_kops = [
}},
},
},
# TODO(rg): iunucopy stuff
{ 'base': '?gemm_small_kernel',
'modes': {
's': {
'exts': {
'_nn': {'dir': 'generic',
'kernel': 'gemm_small_matrix_kernel_nn.c',
},
'_nt': {'dir': 'generic',
'kernel': 'gemm_small_matrix_kernel_nt.c',
},
'_tn': {'dir': 'generic',
'kernel': 'gemm_small_matrix_kernel_tn.c',
},
'_tt': {'dir': 'generic',
'kernel': 'gemm_small_matrix_kernel_tt.c',
},
}
},
'd': {
'exts': {
'_nn': {'dir': 'generic',
'kernel': 'gemm_small_matrix_kernel_nn.c',
},
'_nt': {'dir': 'generic',
'kernel': 'gemm_small_matrix_kernel_nt.c',
},
'_tn': {'dir': 'generic',
'kernel': 'gemm_small_matrix_kernel_tn.c',
},
'_tt': {'dir': 'generic',
'kernel': 'gemm_small_matrix_kernel_tt.c',
},
}
},
'c': {
'exts': {
'_nn': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_nn.c',
},
'_nr': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_nn.c',
},
'_rn': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_nn.c',
},
'_rr': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_nn.c',
},
'_nt': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_nt.c',
},
'_nc': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_nt.c',
},
'_rt': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_nt.c',
},
'_rc': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_nt.c',
},
'_tn': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_tn.c',
},
'_tr': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_tn.c',
},
'_cn': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_tn.c',
},
'_cr': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_tn.c',
},
'_tt': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_tt.c',
},
'_tc': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_tt.c',
},
'_ct': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_tt.c',
},
'_cc': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_tt.c',
},
}
},
'z': {
'exts': {
'_nn': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_nn.c',
},
'_nr': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_nn.c',
},
'_rn': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_nn.c',
},
'_rr': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_nn.c',
},
'_nt': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_nt.c',
},
'_nc': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_nt.c',
},
'_rt': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_nt.c',
},
'_rc': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_nt.c',
},
'_tn': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_tn.c',
},
'_tr': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_tn.c',
},
'_cn': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_tn.c',
},
'_cr': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_tn.c',
},
'_tt': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_tt.c',
},
'_tc': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_tt.c',
},
'_ct': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_tt.c',
},
'_cc': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_tt.c',
},
}
},
},
},
{ 'base': '?gemm_small_kernel_b0',
'modes': {
's': {
'exts': {
'_nn': {'dir': 'generic',
'kernel': 'gemm_small_matrix_kernel_nn.c',
},
'_nt': {'dir': 'generic',
'kernel': 'gemm_small_matrix_kernel_nt.c',
},
'_tn': {'dir': 'generic',
'kernel': 'gemm_small_matrix_kernel_tn.c',
},
'_tt': {'dir': 'generic',
'kernel': 'gemm_small_matrix_kernel_tt.c',
},
}
},
'd': {
'exts': {
'_nn': {'dir': 'generic',
'kernel': 'gemm_small_matrix_kernel_nn.c',
},
'_nt': {'dir': 'generic',
'kernel': 'gemm_small_matrix_kernel_nt.c',
},
'_tn': {'dir': 'generic',
'kernel': 'gemm_small_matrix_kernel_tn.c',
},
'_tt': {'dir': 'generic',
'kernel': 'gemm_small_matrix_kernel_tt.c',
},
}
},
'c': {
'exts': {
'_nn': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_nn.c',
},
'_nr': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_nn.c',
},
'_rn': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_nn.c',
},
'_rr': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_nn.c',
},
'_nt': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_nt.c',
},
'_nc': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_nt.c',
},
'_rt': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_nt.c',
},
'_rc': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_nt.c',
},
'_tn': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_tn.c',
},
'_tr': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_tn.c',
},
'_cn': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_tn.c',
},
'_cr': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_tn.c',
},
'_tt': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_tt.c',
},
'_tc': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_tt.c',
},
'_ct': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_tt.c',
},
'_cc': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_tt.c',
},
}
},
'z': {
'exts': {
'_nn': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_nn.c',
},
'_nr': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_nn.c',
},
'_rn': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_nn.c',
},
'_rr': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_nn.c',
},
'_nt': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_nt.c',
},
'_nc': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_nt.c',
},
'_rt': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_nt.c',
},
'_rc': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_nt.c',
},
'_tn': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_tn.c',
},
'_tr': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_tn.c',
},
'_cn': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_tn.c',
},
'_cr': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_tn.c',
},
'_tt': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_tt.c',
},
'_tc': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_tt.c',
},
'_ct': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_tt.c',
},
'_cc': {'dir': 'generic',
'kernel': 'zgemm_small_matrix_kernel_tt.c',
},
}
},
},
},
]

kernel_confs = []


+ 5
- 3
meson.build View File

@@ -294,10 +294,10 @@ ext_mappings = {
'_rn': {'def': ['RN']},
'_rt': {'def': ['RT']},
'_rr': {'def': ['RR']},
'_rc': {'def': ['RC']},
'_rc': {'def': ['RC=RC']},
'_cn': {'def': ['CN']},
'_ct': {'def': ['CT']},
'_cr': {'def': ['CR']},
'_cr': {'def': ['CR=CR']},
'_cc': {'def': ['CC']},
# Level 3 symbols
'_LU': {'def': ['NN'], 'undef': ['LOWER', 'RSIDE']},
@@ -431,6 +431,7 @@ symb_defs = {
'?trmm_kernel': {'def': ['TRMMKERNEL']},
'?trsm_kernel': {'def': ['TRSMKERNEL']},
'?bgemm': {'def': ['HALF']},
'?gemm_small_kernel_b0': {'def': ['B0']},
'cblas_?dotu_sub': {'def': ['CBLAS', 'FORCE_USE_STACK'], 'undef': ['CONJ']},
'cblas_?dotc_sub': {'def': ['CBLAS', 'FORCE_USE_STACK', 'CONJ']},
}
@@ -445,4 +446,5 @@ subdir('driver/level3')
subdir('kernel')

_openblas = static_library('openblas',
link_whole: [ _interface, _l2_driver, _l3_driver, _kern ])
link_whole: [ _interface, _l2_driver, _l3_driver, _kern ],
install: true)

Loading…
Cancel
Save