• 大小: 3KB
    文件类型: .cpp
    金币: 1
    下载: 0 次
    发布日期: 2021-01-04
  • 语言: C/C++
  • 标签: 矩阵  SSE优化  

资源简介

该代码实现采用SSE对矩阵相乘进行优化,一般的矩阵相乘算法与SSE优化算法耗时进行比较比较。

资源截图

代码片段和文件信息

#include   
#include
#include
#include
#include
#define maxN 10
using namespace std;
void swap(float &afloat &b)//参数传递问题
{
float t;
t=a;
a=b;
b=t;
}
//矩阵相乘平凡算法
void matrixmulti(int nfloat **afloat **bfloat **c)
{
int ijk;
for(i=0;i {
for(j=0;j {
c[i][j]=0;
for(k=0;k {
c[i][j]=a[i][k]*b[k][j];
}
}
}
}
//矩阵相乘SSE优化算法
void sse_mul(int n float **a float **b float **c){
__m128 t1 t2 sum;
            //turning matrix into T(b)
for (int i = 0; i < n; ++i) for (int j = 0; j < i; ++j) swap(b[i][j] b[j][i]);
for (int i = 0; i < n; ++i){
for (int j = 0; j < n; ++j){
c[i][j] = 0.0;
sum = _mm_setzero_ps();
for (int k = n - 4; k >= 0; k -= 4){ 

评论

共有 条评论