Re: [eigen] OpenMP support in the default branch

[ Thread Index | Date Index | More lists.tuxfamily.org/eigen Archives ]


Wow, fantastic work..!

2010/3/5 Gael Guennebaud <gael.guennebaud@xxxxxxxxx>:
>
> Hi,
>
> The SMP branch has been merged in the default one. Here is a short summary
> of what is new and how to use it:
>
> - improved matrix products, even for non SMP code.
>
> - to enable SMP support, simply enable openmp with your compiler (-fopenmp
> for gcc, -openmp for ICC, etc.)
>
> - currently you can control it via the openmp API:
>   e.g., omp_set_num_threads(1) to disable it at runtime
>  In the future we should add our own API.
>
> - to enable it in the unit tests there is a EIGEN_TEST_OPENMP option
> (currently only for gcc since I don't know what is the option for MSVC)
>
> - only the general matrix-matrix product is parallelized, not the triangular
> or selfadjoint variants...
>
> - ..but since partial pivoting LU is heavily based on general matrix-matrix
> products, solving large linear problems using PartialPivLu is already
> significantly boosted :) So I guess ~70% of use cases are already covered..
>
> - if the user code is already parallelized using OpenMP, then eigen won't
> try to parallelize inside an openmp parallel session.
>
> That's all for now.
>
> gael
>



Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/