Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
gaoqiong
MIGraphX
Commits
f050afb7
Commit
f050afb7
authored
Oct 17, 2022
by
Paul
Browse files
Use out own passthrough to workaround ck issues
parent
9c3073bd
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
23 additions
and
2631 deletions
+23
-2631
src/targets/gpu/jit/ck_gemm_instances.cpp
src/targets/gpu/jit/ck_gemm_instances.cpp
+8
-2628
src/targets/gpu/kernels/include/migraphx/kernels/ck.hpp
src/targets/gpu/kernels/include/migraphx/kernels/ck.hpp
+9
-0
tools/tune_ck.py
tools/tune_ck.py
+6
-3
No files found.
src/targets/gpu/jit/ck_gemm_instances.cpp
View file @
f050afb7
...
...
@@ -5,2634 +5,14 @@
#include <string>
#include <functional>
const
std
::
vector
<
std
::
string
>&
get_instance
(
std
::
size_t
i
,
const
std
::
function
<
bool
(
const
std
::
vector
<
std
::
string
>&
)
>&
pred
)
const
std
::
vector
<
std
::
string
>&
get_instance
(
std
::
size_t
i
,
const
std
::
function
<
bool
(
const
std
::
vector
<
std
::
string
>&
)
>&
pred
)
{
static
std
::
vector
<
std
::
vector
<
std
::
vector
<
std
::
string
>>>
instances
=
{
{{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"256"
,
"128"
,
"32"
,
"8"
,
"2"
,
"32"
,
"32"
,
"4"
,
"2"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<8,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},
{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"256"
,
"128"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"4"
,
"2"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"2"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},
{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"128"
,
"256"
,
"32"
,
"8"
,
"2"
,
"32"
,
"32"
,
"2"
,
"4"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},
{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"128"
,
"256"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"2"
,
"4"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},
{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"128"
,
"128"
,
"128"
,
"32"
,
"8"
,
"2"
,
"32"
,
"32"
,
"4"
,
"2"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"1"
,
"1"
,
"ck::Sequence<1,16,1,8>"
,
"8"
},
{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"128"
,
"128"
,
"128"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"4"
,
"2"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,16,1,8>"
,
"8"
},
{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"128"
,
"128"
,
"32"
,
"8"
,
"2"
,
"32"
,
"32"
,
"2"
,
"2"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<8,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},
{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"128"
,
"128"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"2"
,
"2"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"2"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},
{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"128"
,
"128"
,
"64"
,
"32"
,
"8"
,
"2"
,
"32"
,
"32"
,
"2"
,
"2"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<8,16,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,4>"
,
"8"
},
{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"128"
,
"128"
,
"64"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"2"
,
"2"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"2"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,4>"
,
"8"
},
{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"128"
,
"64"
,
"128"
,
"32"
,
"8"
,
"2"
,
"32"
,
"32"
,
"2"
,
"2"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"1"
,
"1"
,
"ck::Sequence<1,16,1,8>"
,
"8"
},
{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"128"
,
"64"
,
"128"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"2"
,
"2"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,16,1,8>"
,
"8"
},
{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"128"
,
"64"
,
"32"
,
"8"
,
"2"
,
"32"
,
"32"
,
"2"
,
"1"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<16,16,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},
{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"128"
,
"64"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"2"
,
"1"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"1"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},
{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"64"
,
"128"
,
"32"
,
"8"
,
"2"
,
"32"
,
"32"
,
"1"
,
"2"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<8,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},
{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"64"
,
"128"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"1"
,
"2"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"2"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
}},
{{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"256"
,
"128"
,
"32"
,
"2"
,
"8"
,
"32"
,
"32"
,
"4"
,
"2"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},
{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"256"
,
"128"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"4"
,
"2"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"8"
,
"1"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},
{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"128"
,
"256"
,
"32"
,
"2"
,
"8"
,
"32"
,
"32"
,
"2"
,
"4"
,
"ck::Sequence<8,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},
{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"128"
,
"256"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"2"
,
"4"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"2"
,
"8"
,
"1"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},
{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"128"
,
"128"
,
"128"
,
"32"
,
"2"
,
"8"
,
"32"
,
"32"
,
"4"
,
"2"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,16,1,8>"
,
"8"
},
{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"128"
,
"128"
,
"128"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"4"
,
"2"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"8"
,
"1"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,16,1,8>"
,
"8"
},
{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"128"
,
"128"
,
"32"
,
"2"
,
"8"
,
"32"
,
"32"
,
"2"
,
"2"
,
"ck::Sequence<8,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},
{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"128"
,
"128"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"2"
,
"2"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"2"
,
"8"
,
"1"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},
{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"128"
,
"128"
,
"64"
,
"32"
,
"2"
,
"8"
,
"32"
,
"32"
,
"2"
,
"2"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,4>"
,
"8"
},
{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"128"
,
"128"
,
"64"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"2"
,
"2"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"8"
,
"1"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,4>"
,
"8"
},
{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"128"
,
"64"
,
"128"
,
"32"
,
"2"
,
"8"
,
"32"
,
"32"
,
"2"
,
"2"
,
"ck::Sequence<8,16,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,16,1,8>"
,
"8"
},
{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"128"
,
"64"
,
"128"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"2"
,
"2"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"2"
,
"8"
,
"1"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,16,1,8>"
,
"8"
},
{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"128"
,
"64"
,
"32"
,
"2"
,
"8"
,
"32"
,
"32"
,
"2"
,
"1"
,
"ck::Sequence<8,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},
{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"128"
,
"64"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"2"
,
"1"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"2"
,
"8"
,
"1"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},
{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"64"
,
"128"
,
"32"
,
"2"
,
"8"
,
"32"
,
"32"
,
"1"
,
"2"
,
"ck::Sequence<16,16,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},
{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"64"
,
"128"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"1"
,
"2"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"1"
,
"8"
,
"1"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
}},
{{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"256"
,
"128"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"4"
,
"2"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},
{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"128"
,
"256"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"2"
,
"4"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},
{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"128"
,
"128"
,
"128"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"4"
,
"2"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,16,1,8>"
,
"8"
},
{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"128"
,
"128"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"2"
,
"2"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},
{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"128"
,
"128"
,
"64"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"2"
,
"2"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,4>"
,
"8"
},
{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"128"
,
"64"
,
"128"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"2"
,
"2"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,16,1,8>"
,
"8"
},
{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"64"
,
"64"
,
"64"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"2"
,
"2"
,
"ck::Sequence<4,16,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<4,16,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,16,1,4>"
,
"8"
},
{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"128"
,
"64"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"2"
,
"1"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},
{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"64"
,
"128"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"1"
,
"2"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},
{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"128"
,
"128"
,
"32"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"2"
,
"1"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,4>"
,
"8"
},
{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"128"
,
"32"
,
"128"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"1"
,
"2"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,16,1,8>"
,
"8"
},
{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"64"
,
"64"
,
"32"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"2"
,
"1"
,
"ck::Sequence<4,16,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<4,16,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,16,1,4>"
,
"8"
},
{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"64"
,
"32"
,
"64"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"1"
,
"2"
,
"ck::Sequence<4,16,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<4,16,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,16,1,4>"
,
"8"
}},
{{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"256"
,
"128"
,
"32"
,
"2"
,
"2"
,
"32"
,
"32"
,
"4"
,
"2"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"ck::Sequence<8,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},
{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"256"
,
"128"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"4"
,
"2"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"8"
,
"1"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"2"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},
{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"128"
,
"256"
,
"32"
,
"2"
,
"2"
,
"32"
,
"32"
,
"2"
,
"4"
,
"ck::Sequence<8,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},
{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"128"
,
"256"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"2"
,
"4"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"2"
,
"8"
,
"1"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},
{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"128"
,
"128"
,
"128"
,
"32"
,
"2"
,
"2"
,
"32"
,
"32"
,
"4"
,
"2"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"1"
,
"1"
,
"ck::Sequence<1,16,1,8>"
,
"8"
},
{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"128"
,
"128"
,
"128"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"4"
,
"2"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"8"
,
"1"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,16,1,8>"
,
"8"
},
{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"128"
,
"128"
,
"32"
,
"2"
,
"2"
,
"32"
,
"32"
,
"2"
,
"2"
,
"ck::Sequence<8,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"ck::Sequence<8,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},
{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"128"
,
"128"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"2"
,
"2"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"2"
,
"8"
,
"1"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"2"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},
{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"128"
,
"128"
,
"64"
,
"32"
,
"2"
,
"2"
,
"32"
,
"32"
,
"2"
,
"2"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"ck::Sequence<4,16,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,4>"
,
"8"
},
{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"128"
,
"128"
,
"64"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"2"
,
"2"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"8"
,
"1"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"2"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,4>"
,
"8"
},
{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"128"
,
"64"
,
"128"
,
"32"
,
"2"
,
"2"
,
"32"
,
"32"
,
"2"
,
"2"
,
"ck::Sequence<8,16,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"1"
,
"1"
,
"ck::Sequence<1,16,1,8>"
,
"8"
},
{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"128"
,
"64"
,
"128"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"2"
,
"2"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"2"
,
"8"
,
"1"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,16,1,8>"
,
"8"
},
{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"128"
,
"64"
,
"32"
,
"2"
,
"2"
,
"32"
,
"32"
,
"2"
,
"1"
,
"ck::Sequence<8,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"ck::Sequence<16,16,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},
{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"128"
,
"64"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"2"
,
"1"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"2"
,
"8"
,
"1"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"1"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},
{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"64"
,
"128"
,
"32"
,
"2"
,
"2"
,
"32"
,
"32"
,
"1"
,
"2"
,
"ck::Sequence<16,16,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"ck::Sequence<8,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},
{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::element_wise::PassThrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"64"
,
"128"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"1"
,
"2"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"1"
,
"8"
,
"1"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"2"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
}}};
auto
it
=
std
::
find_if
(
instances
.
begin
(),
instances
.
end
(),
[
&
](
const
auto
&
v
)
{
return
pred
(
v
[
0
]);
});
static
std
::
vector
<
std
::
vector
<
std
::
vector
<
std
::
string
>>>
instances
=
{{{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"256"
,
"128"
,
"32"
,
"8"
,
"2"
,
"32"
,
"32"
,
"4"
,
"2"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<8,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"256"
,
"128"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"4"
,
"2"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"2"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"128"
,
"256"
,
"32"
,
"8"
,
"2"
,
"32"
,
"32"
,
"2"
,
"4"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"128"
,
"256"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"2"
,
"4"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"128"
,
"128"
,
"128"
,
"32"
,
"8"
,
"2"
,
"32"
,
"32"
,
"4"
,
"2"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"1"
,
"1"
,
"ck::Sequence<1,16,1,8>"
,
"8"
},{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"128"
,
"128"
,
"128"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"4"
,
"2"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,16,1,8>"
,
"8"
},{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"128"
,
"128"
,
"32"
,
"8"
,
"2"
,
"32"
,
"32"
,
"2"
,
"2"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<8,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"128"
,
"128"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"2"
,
"2"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"2"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"128"
,
"128"
,
"64"
,
"32"
,
"8"
,
"2"
,
"32"
,
"32"
,
"2"
,
"2"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<8,16,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,4>"
,
"8"
},{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"128"
,
"128"
,
"64"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"2"
,
"2"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"2"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,4>"
,
"8"
},{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"128"
,
"64"
,
"128"
,
"32"
,
"8"
,
"2"
,
"32"
,
"32"
,
"2"
,
"2"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"1"
,
"1"
,
"ck::Sequence<1,16,1,8>"
,
"8"
},{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"128"
,
"64"
,
"128"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"2"
,
"2"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,16,1,8>"
,
"8"
},{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"128"
,
"64"
,
"32"
,
"8"
,
"2"
,
"32"
,
"32"
,
"2"
,
"1"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<16,16,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"128"
,
"64"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"2"
,
"1"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"1"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"64"
,
"128"
,
"32"
,
"8"
,
"2"
,
"32"
,
"32"
,
"1"
,
"2"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<8,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"64"
,
"128"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"1"
,
"2"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"2"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
}},{{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"256"
,
"128"
,
"32"
,
"2"
,
"8"
,
"32"
,
"32"
,
"4"
,
"2"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"256"
,
"128"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"4"
,
"2"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"8"
,
"1"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"128"
,
"256"
,
"32"
,
"2"
,
"8"
,
"32"
,
"32"
,
"2"
,
"4"
,
"ck::Sequence<8,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"128"
,
"256"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"2"
,
"4"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"2"
,
"8"
,
"1"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"128"
,
"128"
,
"128"
,
"32"
,
"2"
,
"8"
,
"32"
,
"32"
,
"4"
,
"2"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,16,1,8>"
,
"8"
},{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"128"
,
"128"
,
"128"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"4"
,
"2"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"8"
,
"1"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,16,1,8>"
,
"8"
},{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"128"
,
"128"
,
"32"
,
"2"
,
"8"
,
"32"
,
"32"
,
"2"
,
"2"
,
"ck::Sequence<8,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"128"
,
"128"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"2"
,
"2"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"2"
,
"8"
,
"1"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"128"
,
"128"
,
"64"
,
"32"
,
"2"
,
"8"
,
"32"
,
"32"
,
"2"
,
"2"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,4>"
,
"8"
},{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"128"
,
"128"
,
"64"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"2"
,
"2"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"8"
,
"1"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,4>"
,
"8"
},{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"128"
,
"64"
,
"128"
,
"32"
,
"2"
,
"8"
,
"32"
,
"32"
,
"2"
,
"2"
,
"ck::Sequence<8,16,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,16,1,8>"
,
"8"
},{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"128"
,
"64"
,
"128"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"2"
,
"2"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"2"
,
"8"
,
"1"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,16,1,8>"
,
"8"
},{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"128"
,
"64"
,
"32"
,
"2"
,
"8"
,
"32"
,
"32"
,
"2"
,
"1"
,
"ck::Sequence<8,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"128"
,
"64"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"2"
,
"1"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"2"
,
"8"
,
"1"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"64"
,
"128"
,
"32"
,
"2"
,
"8"
,
"32"
,
"32"
,
"1"
,
"2"
,
"ck::Sequence<16,16,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"64"
,
"128"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"1"
,
"2"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"1"
,
"8"
,
"1"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
}},{{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"256"
,
"128"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"4"
,
"2"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"128"
,
"256"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"2"
,
"4"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"128"
,
"128"
,
"128"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"4"
,
"2"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,16,1,8>"
,
"8"
},{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"128"
,
"128"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"2"
,
"2"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"128"
,
"128"
,
"64"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"2"
,
"2"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,4>"
,
"8"
},{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"128"
,
"64"
,
"128"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"2"
,
"2"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,16,1,8>"
,
"8"
},{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"64"
,
"64"
,
"64"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"2"
,
"2"
,
"ck::Sequence<4,16,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<4,16,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,16,1,4>"
,
"8"
},{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"128"
,
"64"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"2"
,
"1"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"64"
,
"128"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"1"
,
"2"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"128"
,
"128"
,
"32"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"2"
,
"1"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,4>"
,
"8"
},{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"128"
,
"32"
,
"128"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"1"
,
"2"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,16,1,8>"
,
"8"
},{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"64"
,
"64"
,
"32"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"2"
,
"1"
,
"ck::Sequence<4,16,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<4,16,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,16,1,4>"
,
"8"
},{
"ck::tensor_layout::gemm::RowMajor"
,
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"64"
,
"32"
,
"64"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"1"
,
"2"
,
"ck::Sequence<4,16,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"ck::Sequence<4,16,1>"
,
"ck::Sequence<1,0,2>"
,
"ck::Sequence<1,0,2>"
,
"2"
,
"8"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,16,1,4>"
,
"8"
}},{{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"256"
,
"128"
,
"32"
,
"2"
,
"2"
,
"32"
,
"32"
,
"4"
,
"2"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"ck::Sequence<8,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"256"
,
"128"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"4"
,
"2"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"8"
,
"1"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"2"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"128"
,
"256"
,
"32"
,
"2"
,
"2"
,
"32"
,
"32"
,
"2"
,
"4"
,
"ck::Sequence<8,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"128"
,
"256"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"2"
,
"4"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"2"
,
"8"
,
"1"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"128"
,
"128"
,
"128"
,
"32"
,
"2"
,
"2"
,
"32"
,
"32"
,
"4"
,
"2"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"1"
,
"1"
,
"ck::Sequence<1,16,1,8>"
,
"8"
},{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"128"
,
"128"
,
"128"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"4"
,
"2"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"8"
,
"1"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,16,1,8>"
,
"8"
},{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"128"
,
"128"
,
"32"
,
"2"
,
"2"
,
"32"
,
"32"
,
"2"
,
"2"
,
"ck::Sequence<8,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"ck::Sequence<8,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"128"
,
"128"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"2"
,
"2"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"2"
,
"8"
,
"1"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"2"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"128"
,
"128"
,
"64"
,
"32"
,
"2"
,
"2"
,
"32"
,
"32"
,
"2"
,
"2"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"ck::Sequence<4,16,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,4>"
,
"8"
},{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"128"
,
"128"
,
"64"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"2"
,
"2"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"8"
,
"1"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"2"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,4>"
,
"8"
},{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"128"
,
"64"
,
"128"
,
"32"
,
"2"
,
"2"
,
"32"
,
"32"
,
"2"
,
"2"
,
"ck::Sequence<8,16,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"1"
,
"1"
,
"ck::Sequence<1,16,1,8>"
,
"8"
},{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"128"
,
"64"
,
"128"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"2"
,
"2"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"2"
,
"8"
,
"1"
,
"ck::Sequence<4,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,16,1,8>"
,
"8"
},{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"128"
,
"64"
,
"32"
,
"2"
,
"2"
,
"32"
,
"32"
,
"2"
,
"1"
,
"ck::Sequence<8,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"ck::Sequence<16,16,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"128"
,
"64"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"2"
,
"1"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"2"
,
"8"
,
"1"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"1"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"64"
,
"128"
,
"32"
,
"2"
,
"2"
,
"32"
,
"32"
,
"1"
,
"2"
,
"ck::Sequence<16,16,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"ck::Sequence<8,32,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"4"
,
"2"
,
"0"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
},{
"ck::tensor_layout::gemm::ColumnMajor"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::Tuple<>"
,
"ck::tensor_layout::gemm::RowMajor"
,
"ck::half_t"
,
"ck::half_t"
,
"float"
,
"float"
,
"ck::Tuple<>"
,
"ck::half_t"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck_passthrough"
,
"ck::tensor_operation::device::GemmSpecialization::Default"
,
"1"
,
"256"
,
"64"
,
"128"
,
"32"
,
"8"
,
"8"
,
"32"
,
"32"
,
"1"
,
"2"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"1"
,
"8"
,
"1"
,
"ck::Sequence<4,64,1>"
,
"ck::Sequence<0,2,1>"
,
"ck::Sequence<0,2,1>"
,
"1"
,
"2"
,
"8"
,
"1"
,
"1"
,
"1"
,
"ck::Sequence<1,32,1,8>"
,
"8"
}}};
auto
it
=
std
::
find_if
(
instances
.
begin
(),
instances
.
end
(),
[
&
](
const
auto
&
v
)
{
return
pred
(
v
[
0
]);
});
return
it
->
at
(
i
);
}
src/targets/gpu/kernels/include/migraphx/kernels/ck.hpp
View file @
f050afb7
...
...
@@ -82,5 +82,14 @@ struct ck_nop
}
};
struct
ck_passthrough
{
template
<
class
T
,
class
U
>
constexpr
void
operator
()(
T
&
y
,
U
x
)
const
{
y
=
x
;
}
};
}
// namespace migraphx
#endif // MIGRAPHX_GUARD_KERNELS_CK_HPP
tools/tune_ck.py
View file @
f050afb7
...
...
@@ -75,10 +75,10 @@ def parse_log(f):
yield
config
def
benchmark_log
(
f
):
def
benchmark_log
(
f
,
n
):
result
=
[]
for
config
in
parse_log
(
f
):
tuned
=
benchmark
(
config
,
13
)
tuned
=
benchmark
(
config
,
n
)
result
.
append
([
config
,
tuned
])
return
result
...
...
@@ -95,12 +95,15 @@ def parse_args():
type
=
str
,
metavar
=
'file'
,
help
=
'Output json file to save tunings'
)
parser
.
add_argument
(
'-n'
,
type
=
int
,
help
=
'Number of instances to tune'
)
args
=
parser
.
parse_args
()
return
args
def
run
(
args
):
tuned
=
benchmark_log
(
args
.
log
)
tuned
=
benchmark_log
(
args
.
log
,
args
.
n
)
json
.
dump
(
tuned
,
open
(
args
.
out
,
'w+'
))
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment