Salut à tous,

En faisant le profiling de mon programme, j'ai retrouvé que le hot path est la fonction que j'ai définit pour la multiplication entre deux matrices, voici son code

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
vector<double> Multiplication(vector<double>const & a,vector<double>const & b,int m)
{
int i,j,w;
int l(a.size()/m);
int e(b.size()/m);
double sum;
vector<double> cl;
    cl.reserve(l*e);
	for(int i(0);i<l;++i)
		for(int j(0);j<e;++j)
		{
			sum=0;
		  for(int w(0);w<m;++w)
		  {
			  sum=sum+a[i*m+w]*b[w*e+j];
		  }
		  cl.push_back(sum);
		}
		return(cl);
}
Alors est ce que je peux faire mieux ??