Boost logo

Ublas :

Subject: Re: [ublas] Matrix multiplication performance
From: Joaquim Duran Comas (jdurancomas_at_[hidden])
Date: 2016-01-19 18:47:03


Hello,

I think that some development about a new product algorithm was done in the
branch
https://github.com/uBLAS/ublas/tree/ublas_feature0004_fast_matrix_multiplication
.

Thanks and Best Regards,
Joaquim Duran

2016-01-19 15:41 GMT+01:00 Michael Lehn <michael.lehn_at_[hidden]>:

> Sorry for the inconvenience. I guess sending attachments to the mailing
> list is prohibited. I put the
> code on a website:
>
> http://apfel.mathematik.uni-ulm.de/~lehn/test_ublas/
>
>
>
> On 19 Jan 2016, at 15:14, palik imre <imre_palik_at_[hidden]> wrote:
>
> Hi Michael,
>
> I cannot see any attachments ...
>
>
> On Tuesday, 19 January 2016, 11:12, palik imre <imre_palik_at_[hidden]>
> wrote:
>
>
> Is there a public git repo for ublas 2.0?
>
>
> On Monday, 18 January 2016, 9:25, Oswin Krause <
> Oswin.Krause_at_[hidden]> wrote:
>
>
> Hi Palik,
>
> this is a known problem. In your case you should already get better
> performance when using axpy_prod instead of prod. There are currently
> moves towards a ublas 2.0 which should make this a non-problem in the
> future.
>
>
> On 2016-01-17 21:23, palik imre wrote:
> > Hi all,
> >
> > It seems that the matrix multiplication in ublas ends up with the
> > trivial algorithm. On my machine, even the following function
> > outperforms it for square matrices bigger than 173*173 (by a huge
> > margin for matrices bigger than 190*190), while not performing
> > considerably worse for smaller matrices:
> >
> > matrix<double>
> > matmul_byrow(const matrix<double> &lhs, const matrix<double> &rhs)
> > {
> > assert(lhs.size2() == rhs.size1());
> > matrix<double> rv(lhs.size1(), rhs.size2());
> > matrix<double> r = trans(rhs);
> > for (unsigned c = 0; c < rhs.size2(); c++)
> > {
> > matrix_column<matrix<double> > out(rv, c);
> > matrix_row<matrix<double> > in(r, c);
> > out = prod(lhs, in);
> > }
> > return rv;
> > }
> >
> >
> > Is there anybody working on improving the matrix multiplication
> > performance?
> >
> > If not, then I can try to find some spare cycles ...
> >
> > Cheers,
> >
> > Imre Palik
>
> > _______________________________________________
> > ublas mailing list
> > ublas_at_[hidden]
> > http://lists.boost.org/mailman/listinfo.cgi/ublas
> > Sent to: Oswin.Krause_at_[hidden]
>
>
>
>
>
> _______________________________________________
> ublas mailing list
> ublas_at_[hidden]
> http://lists.boost.org/mailman/listinfo.cgi/ublas
> Sent to: michael.lehn_at_[hidden]
>
>
>
> _______________________________________________
> ublas mailing list
> ublas_at_[hidden]
> http://lists.boost.org/mailman/listinfo.cgi/ublas
> Sent to: jdurancomas_at_[hidden]
>