← Back to team overview

yade-dev team mailing list archive

Re: [Branch ~yade-pkg/yade/git-trunk] Rev 4009: Enable vectorization in eigen3-lib

 

Hi Bruno,

you are right, Eigen3 can use OpenMP for some algorithms like
matrix products PartialPivLU. But we do not use it, at least explicitly,
so I do not think, it is hurt. But I will probably define EIGEN_DONT_PARALLELIZE
to e sure.

Anton


2014-06-09 13:58 GMT+02:00 Bruno Chareyre <bruno.chareyre@xxxxxxxxxxx>:
> Interesting!
> It seems to me that it needs more than that to be really efficient, because
> eigen takes the max number of threads by default.
> So that if you run -j4, parallel eigen in parallel interaction loop will
> take theoretically 16 threads. Surely a perf killer if you have only 4
> threads.
> There is Eigen::setNbThreads(n) for this purpose, "n" could be a runtime
> variable of yade.
> Another thing is to allow nested parallel loop in openmp, it is not the case
> by default on most systems.
> It can be enable explicitely using omp_set_nested(k).
> All this needs benchmarking, too.
>
>  Bruno
>
>
>
> On 08/06/14 23:54, noreply@xxxxxxxxxxxxx wrote:
>
> ------------------------------------------------------------
> revno: 4009
> committer: Anton Gladky <gladky.anton@xxxxxxxxx>
> timestamp: Sun 2014-06-08 23:32:06 +0200
> message:
>   Enable vectorization in eigen3-lib
>
>   Together with vectorazation some other flags were
>   removed:
>   EIGEN_DONT_VECTORIZE
>   EIGEN_DONT_ALIGN
>   EIGEN_DISABLE_UNALIGNED_ARRAY_ASSERT
>   EIGEN_NO_DEBUG
>
>   It should increase the calculation speed of  some
>   vector-matrixes operations.
> modified:
>   lib/base/Math.hpp
>
>
> --
> lp:yade
> https://code.launchpad.net/~yade-pkg/yade/git-trunk
>
> Your team Yade developers is subscribed to branch lp:yade.
> To unsubscribe from this branch go to
> https://code.launchpad.net/~yade-pkg/yade/git-trunk/+edit-subscription
>
>
>
> _______________________________________________
> Mailing list: https://launchpad.net/~yade-dev
> Post to     : yade-dev@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~yade-dev
> More help   : https://help.launchpad.net/ListHelp
>
>
>
> --
> _______________
> Bruno Chareyre
> Associate Professor
> ENSE³ - Grenoble INP
> Lab. 3SR
> BP 53
> 38041 Grenoble cedex 9
> Tél : +33 4 56 52 86 21
> Fax : +33 4 76 82 70 43
> ________________
>
>
> _______________________________________________
> Mailing list: https://launchpad.net/~yade-dev
> Post to     : yade-dev@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~yade-dev
> More help   : https://help.launchpad.net/ListHelp
>


References