Thread overview
do mir modules run in parallell
Oct 04, 2019
David
Oct 05, 2019
9il
Oct 05, 2019
David
Oct 06, 2019
9il
Oct 06, 2019
David
October 04, 2019
Hi

I am wondering if MIR modules run in parallel by default or if I can enforce it by a compiler flag?

Thanks
David
October 05, 2019
On Friday, 4 October 2019 at 20:32:59 UTC, David wrote:
> Hi
>
> I am wondering if MIR modules run in parallel by default or if I can enforce it by a compiler flag?
>
> Thanks
> David

Hey David,

Do you mean unittests run in parallel or mir algorithms themselves run in parallel?

Ilya
October 05, 2019
On Saturday, 5 October 2019 at 04:38:34 UTC, 9il wrote:
> On Friday, 4 October 2019 at 20:32:59 UTC, David wrote:
>> Hi
>>
>> I am wondering if MIR modules run in parallel by default or if I can enforce it by a compiler flag?
>>
>> Thanks
>> David
>
> Hey David,
>
> Do you mean unittests run in parallel or mir algorithms themselves run in parallel?
>
> Ilya

Hi Ilya

Thanks for coming back on this and sorry for not being precise. I am wondering about the Mir algorithms.

David
October 06, 2019
On Saturday, 5 October 2019 at 14:51:03 UTC, David wrote:
> On Saturday, 5 October 2019 at 04:38:34 UTC, 9il wrote:
>> On Friday, 4 October 2019 at 20:32:59 UTC, David wrote:
>>> Hi
>>>
>>> I am wondering if MIR modules run in parallel by default or if I can enforce it by a compiler flag?
>>>
>>> Thanks
>>> David
>>
>> Hey David,
>>
>> Do you mean unittests run in parallel or mir algorithms themselves run in parallel?
>>
>> Ilya
>
> Hi Ilya
>
> Thanks for coming back on this and sorry for not being precise. I am wondering about the Mir algorithms.
>
> David

mir-blas, mir-lapack, and lubeck parallelism depend on system BLAS/LAPACK library (OpenBLAS, Intel MKL, or Accelerate Framework for macos).

mir-optim by default single thread but can use TaskPool from D standard library as well as user-defined thread pools.

mir-random was created for multithread programs, check the documentation for a particular engine. The general idea is that each thread has its own engine.

Other libraries are single thread but can be used in multithread programs with Phobos threads or other thread libraries.

Best,
Ilya
October 06, 2019
On Sunday, 6 October 2019 at 05:32:34 UTC, 9il wrote:
> mir-blas, mir-lapack, and lubeck parallelism depend on system BLAS/LAPACK library (OpenBLAS, Intel MKL, or Accelerate Framework for macos).
>
> mir-optim by default single thread but can use TaskPool from D standard library as well as user-defined thread pools.
>
> mir-random was created for multithread programs, check the documentation for a particular engine. The general idea is that each thread has its own engine.
>
> Other libraries are single thread but can be used in multithread programs with Phobos threads or other thread libraries.
>
> Best,
> Ilya

thanks! I will try it out accordingly.
Bests, David