AVX2 编程:单双精度矩阵乘法及矩阵向量乘法实现
1. 单精度 4×4 矩阵乘法
1.1 C++ 代码实现
示例代码展示了使用单精度浮点值进行 4×4 矩阵乘法的 C++ 代码。以下是主要代码:
// Ch11_04.h
#pragma once
#include "MatrixF32.h"
// Ch11_04_fasm.asm, Ch11_04_fasm.s
extern "C" void MatrixMul4x4F32a_avx2(float* c, const float* a, const float* b);
extern "C" void MatrixMul4x4F32b_avx2(float* c, const float* a, const float* b);
// Ch11_04_fcpp.cpp
extern void MatrixMul4x4F32_cpp(MatrixF32& c, const MatrixF32& a, const MatrixF32& b);
// Ch11_04_misc.cpp
extern void InitMat(MatrixF32& c1, MatrixF32& c2, MatrixF32& c3, MatrixF32& a, MatrixF32& b);
// Ch11_04_bm.cpp
extern void MatrixMul4x4F32_bm(void);
// Miscellaneous constants
constexpr float c_Epsilon = 1.0e-9f;
//
超级会员免费看
订阅专栏 解锁全文
962

被折叠的 条评论
为什么被折叠?



