Boost logo

Ublas :

Subject: Re: [ublas] Strange performance hits noticed - help!
From: Gunter Winkler (guwi17_at_[hidden])
Date: 2010-05-31 18:47:11


Hello,

below is the missing sentence.

Am Monday 31 May 2010 schrieb Gunter Winkler:
>
> the default type of the mapped matrix is (from fwd.hpp):
>
> template<class T, class L = row_major, class A = map_std<std::size_t,
> T> > class mapped_matrix;
>
> Thus the efficiency mostly depends on the used STL. Each index pair
> is mapped to [...]

       
This class represents a matrix by using a map \c key -> \c value. The
default type is

template<class T, class L = row_major, class A = map_std<std::size_t, T>
> class mapped_matrix;
    
The key is computed depending on the layout type \c L as

key = layout_type::element (i, size1_, j, size2_);

which means <tt>key = (i*size2+j)</tt> for a row major matrix.

Limitations: The matrix size must not exceed
<tt>(size1*size2) < std::limits<std::size_t></tt>.
The \ref find1() and \ref find2() operations have a complexity of at
least O(log(nnz)) - depending on the efficiency of \c std::lower_bound
on the key set of the map.

mfg
Gunter