Re: [eigen] If Eigen code is compiled with -fopenmp when is multi-threading used and how is it controlled?

[ Thread Index | Date Index | More Archives ]


Currently, it is only used for gemm like operations, not rankUpdate.
Since it is based on OpenMP you can control it with OMP_NUM_THREADS.
By default we use openmp default which is the number of cores.

You can also control it at runtime with Eigen::internal::setNbThreads(n);


On Tue, Nov 1, 2011 at 8:14 PM, Douglas Bates <bates@xxxxxxxxxxxxx> wrote:
> Is there documentation on when multi-threading is used and how it is
> controlled.  I see that various symbols associated with openmp are
> incorporated in the executable and it appears from
> Eigen/src/Core/products/Parallelizer.h that they will be used in a
> gemm operation.  I am particularly interested in whether the
> .rankUpdate() method for SelfAdjointView's would use the parallel code
> and, if so, how I would control it.  I would prefer to use an
> environment variable if possible instead of hard-wiring a call into
> the code because the executable will be used in different
> environments.

Mail converted by MHonArc 2.6.19+