From ee14ad272e68d9363202d7f668e0b20302827209 Mon Sep 17 00:00:00 2001 From: hachem Date: Mon, 14 Sep 2026 12:20:52 +0200 Subject: feat: simd + testing + formatting --- include/maths/simd.h | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 include/maths/simd.h (limited to 'include/maths/simd.h') diff --git a/include/maths/simd.h b/include/maths/simd.h new file mode 100644 index 0000000..38d0171 --- /dev/null +++ b/include/maths/simd.h @@ -0,0 +1,22 @@ +#pragma once + +#include + +#include "maths/complex.h" + +enum PsiSimdCapability +{ + PSI_SIMD_NONE, + PSI_SIMD_AVX2, + PSI_SIMD_AVX512, + PSI_SIMD_NEON, +}; + +enum PsiSimdCapability psi_detect_simd(void); +const char* psi_simd_name(enum PsiSimdCapability cap); + +void psi_apply_single_qubit_gate_simd(struct PsiComplex* state, const struct PsiComplex gate[2][2], + size_t target, size_t num_qubits); +void psi_apply_single_qubit_gate_simd_parallel(struct PsiComplex* state, + const struct PsiComplex gate[2][2], size_t target, + size_t num_qubits); -- cgit v1.3