Re: [eigen] Implementation of M.transpose()*M & M*M.transpose()

[ Thread Index | Date Index | More Archives ]

Jinglei Hu wrote:
> Hi Aron,
> Are you saying that it's better to represent the data of a Matrix by
> 1D array or pointer instead of 2D array or ptr-to-ptr? If so, then
> every time one wants to fetch an element A(i,j) he has to do
> A[i*num_cols()+j]. Is this still more efficient than
> double-dereferencing of ptr-to-ptr?
> Cheers,
> Jinglei
Way to access and store data is not the problem, the problem is the fact
that each memory reference has to be either fetched form L2 cache
or from main memory if it is not. Large numbers of techniques exists to
limit the number of time data are fecthed from main memory as it is
very costly. Blocking and other stuff for example. Doing a simple loop
nest is usually not friendly with cache.

Joel Falcou - Assistant Professor
PARALL Team - LRI - Universite Paris Sud XI
Tel : (+33)1 69 15 66 35

Mail converted by MHonArc 2.6.19+