mat kernel turns to be generic

This commit is contained in:
Youmu Liu
2025-09-18 21:55:26 +08:00
parent 6e27c6219d
commit 8007eee846
13 changed files with 109 additions and 188 deletions
+19
View File
@@ -0,0 +1,19 @@
#ifndef SN_MATKERNEL
#define SN_MATKERNEL
#include <immintrin.h>
#define ELEMENTSIZE(T) sizeof(T)
#define XMMCOUNT(T) sizeof(T) / 16
#define YMMCOUNT(T) sizeof(T) / 32
#define ZMMCOUNT(T) sizeof(T) / 64
#define MAT_KERNEL(T) \
union { \
__m128 xmm[XMMCOUNT(T)]; \
__m256 ymm[YMMCOUNT(T)]; \
__m512 zmm[ZMMCOUNT(T)]; \
T m[16]; \
}
#endif