Skip to content
Commit d8642031 authored by Emil Ohlsson's avatar Emil Ohlsson
Browse files

Add FP16 IGEMM support



This change introduces three new kernels
* `kai_lhs_imatmul_pack_x16p2vlx2_x16p_sme`
* `kai_rhs_imatmul_pack_kxn_x16p2vlx2b_x16_x16_sme`
* `kai_imatmul_clamp_f16_f16p2vlx2_f16p2vlx2_2vlx2vl_sme2_mopa`

These are used for indirect matmul, for 16-bit floating point data.

This change also adds unit testing for the FP16 imatmul kernels. The
code is written in a type agnostic manner, as to easily allow testing
for other data types with very low effort. This required the addition of
non-templated `read`/`write` functions, as to allow runtime-generic
access.

Signed-off-by: Emil Ohlsson's avatarEmil Ohlsson <emil.ohlsson@arm.com>

Reviewed-by: Anton Bondarenko's avatarAnton Bondarenko <anton.bondarenko@arm.com>
Reviewed-by: Jakub Sujak's avatarJakub Sujak <jakub.sujak@arm.com>
Reviewed-by: Emil Ohlsson's avatarEmil Ohlsson <emil.ohlsson@arm.com>
Approved-by: Anton Bondarenko's avatarAnton Bondarenko <anton.bondarenko@arm.com>
parent e9d5f3b9
Loading
Loading
Loading
Pipeline #25827 passed with stages
in 8 minutes and 16 seconds
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment