|
Ublas : |
From: Karl Meerbergen (karl.meerbergen_at_[hidden])
Date: 2008-01-19 03:48:21
This is a known problem. Use compressed_matrix instead.
Karl
James Sutherland wrote:
> All,
>
> I compiled an application using ublas with mapped_matrix<double>. I am
> running an optimized build (with DNDEBUG), and I am finding very poor
> performance on mapped_matrix.
>
> Running gprof shows that more than 50% of the execution time is spent in
> std::_Rb_tree<unsigned long, std::pair<unsigned long const, double>,
> std::_Select1st<std::pair<unsigned long const, double> >,
> std::less<unsigned long>, std::allocator<std::pair<unsigned long
> const, double> > >::lower_bound(unsigned long const&) const
>
> More than 30% of the execution time is spent in:
> boost::numeric::ublas::mapped_matrix::find1
>
> And 6% of the execution time is spent in mapped_matrix::find2
>
> This application runs a lot of matvec operations, so that should be
> the bottleneck. I have just migrated from another linear algebra
> package that runs the same problem orders of magnitude faster.
>
> I suppose that the obvious question is if there is a more efficient
> way to do sparse matrix operations?
>
> Thanks for any advice,
>
> James
> ------------------------------------------------------------------------
>
> _______________________________________________
> ublas mailing list
> ublas_at_[hidden]
> http://lists.boost.org/mailman/listinfo.cgi/ublas
>