Re: Matrix multiplication performance
Michael Lehn <[email protected]>
| Newsgroups | gmane.comp.lib.boost.ublas |
|---|---|
| Message-ID | <[email protected]> |
So has anyone compared the performance yet? On 20 Jan 2016, at 00:47, Joaquim Duran Comas <[email protected]> wrote: > Hello, > > I think that some development about a new product algorithm was done in the branchhttps://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 <[email protected]>: > 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 <[email protected]> wrote: > >> Hi Michael, >> >> I cannot see any attachments ... >> >> >> On Tuesday, 19 January 2016, 11:12, palik imre <[email protected]> wrote: >> >> >> Is there a public git repo for ublas 2.0? >> >> >> On Monday, 18 January 2016, 9:25, Oswin Krause <[email protected]> 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 >> > [email protected] >> > http://lists.boost.org/mailman/listinfo.cgi/ublas >> > Sent to: [email protected] >> >> >> >> >> >> _______________________________________________ >> ublas mailing list >> [email protected] >> http://lists.boost.org/mailman/listinfo.cgi/ublas >> Sent to: [email protected] > > > _______________________________________________ > ublas mailing list > [email protected] > http://lists.boost.org/mailman/listinfo.cgi/ublas > Sent to: [email protected] > > _______________________________________________ > ublas mailing list > [email protected] > http://lists.boost.org/mailman/listinfo.cgi/ublas > Sent to: [email protected]