24.04
|
Go to the documentation of this file.
35 inline std::string to_str(
const T &val)
45 return os <<
"Native:{"
46 <<
"m0: " << config.
m0 <<
", "
47 <<
"n0: " << config.
n0 <<
", "
48 <<
"k0: " << config.
k0 <<
", "
53 return os <<
"ReshapedOnlyRHS:{"
54 <<
"m0: " << config.
m0 <<
", "
55 <<
"n0: " << config.
n0 <<
", "
56 <<
"k0: " << config.
k0 <<
", "
57 <<
"h0: " << config.
h0 <<
", "
64 return os <<
"Reshaped:{"
65 <<
"m0: " << config.
m0 <<
", "
66 <<
"n0: " << config.
n0 <<
", "
67 <<
"k0: " << config.
k0 <<
", "
68 <<
"v0: " << config.
v0 <<
", "
69 <<
"h0: " << config.
h0 <<
", "
86 os <<
"GEMM_Config_Reshaped_Only_RHS";
91 os <<
"GEMM_Config_Reshaped";
134 std::tie(ht, ip,
dt) = index;
136 os <<
"HeuristicType=" << ht <<
",";
137 os <<
"IP=" << ip <<
",";
138 os <<
"DataType=" <<
dt;
146 os <<
"DataType=" << query.
data_type <<
",";
147 os <<
"M=" << query.
m <<
",";
148 os <<
"N=" << query.
n <<
",";
149 os <<
"K=" << query.
k <<
",";
150 os <<
"B=" << query.
b <<
")";
156 return to_str(config);
161 return to_str(config);
166 return to_str(config);
171 return to_str(query);
178 os <<
"(Ln: " << pos.
ln <<
", Col: " << pos.
col <<
")";
bool export_cl_image
True if the reshaped rhs has to be exported to cl_image.
unsigned int n0
Number of columns processed by the matrix multiplication.
@ GEMM_Config_Reshaped_Only_RHS
About the gemm config for reshaped only rhs kernel.
bool interleave_rhs
True if the h0 (k0xn0) blocks have to be interleaved in the output row.
@ QASYMM8
quantized, asymmetric fixed-point 8-bit number unsigned
unsigned int m0
Number of rows processed by the matrix multiplication.
std::ostream & operator<<(std::ostream &os, const GEMMConfigNative &config)
unsigned int m
Number of rows for the lhs matrix.
unsigned int b
Batch size.
@ GEMM_Config_Reshaped
About the gemm config for reshaped kernel.
unsigned int k0
Number of partial accumulations performed by the matrix multiplication.
unsigned int h0
Number of horizontal blocks of size (k0xn0) stored on the same output row.
unsigned int m0
Number of rows processed by the matrix multiplication.
bool export_cl_image
True if the reshaped rhs has to be exported to cl_image.
unsigned int m0
Number of rows processed by the matrix multiplication.
GEMM Configuration for Reshaped Only RHS kernel.
std::string to_string(const GEMMConfigNative &config)
unsigned int k0
Number of partial accumulations performed by the matrix multiplication.
std::stringstream ss(mlgo_str)
bool interleave_lhs
True if the v0 (m0xk0) blocks have to be interleaved in the output row.
unsigned int n
Number of columns for the rhs matrix.
bool interleave_rhs
True if the h0 (k0xn0) blocks have to be interleaved in the output row.
GEMM Configuration for Reshaped kernel.
MLGOHeuristics mlgo(TokenStream &in, bool &valid)
std::string ip_target
The name of the IP target.
HeuristicType
Types of Heuristic (tree)
unsigned int k
Number of rows for the rhs matrix.
unsigned int n0
Number of columns processed by the matrix multiplication.
std::tuple< HeuristicType, std::string, DataType > Index
unsigned int n0
Number of columns processed by the matrix multiplication.
unsigned int h0
Number of horizontal blocks of size (k0xn0) stored on the same output row.
unsigned int k0
Number of partial accumulations performed by the matrix multiplication.
Copyright (c) 2017-2024 Arm Limited.
@ F16
16-bit floating-point number
unsigned int v0
Number of vertical blocks of size (m0xk0) stored on the same output row.
std::ostream & operator<<(std::ostream &os, const CharPosition &pos)
DataType data_type
Data type.
bool transpose_rhs
True if the (k0xn0) block has to be transposed before been stored.
GEMM Configuration for Native kernel.
@ F32
32-bit floating-point number
@ GEMM_Type
About the type of gemm.
DataType
Available data types.
bool transpose_rhs
True if the (k0xn0) block has to be transposed before been stored.