Page 1 of 1

Parallel threads : problem

Posted: Tue Sep 18, 2018 5:05 pm
by Sudhee
Dear Bernd/Ralph,
I am now using MICRESS 6.4 version and have some problem with the execution of 'parallel threads' parameter. I am running a simulation and trying to implement the usage of different cores. I see that the simulation time is increasing with the usage of multiple cores. For example, my simulation finished in 30 s (wall-clock time) when I don't use parallelization but took 75 s when I try to run the same with the help of 4 cores and time increases with no.of cores. Assuming that the load was small on parallelized solver, I have tried by implementing the same with the bigger system but follows the same pattern of results. This seems confusing to me. Please, find the attached driving file that I was using. Could you please let me know what is going wrong with this?
Thank you.

Best regards,
Sudhee.

Re: Parallel threads : problem

Posted: Wed Sep 19, 2018 2:09 pm
by Bernd
Dear Sudhee,

If you do a 1D-simulation you should always use the z-direction. Otherwise you work against the internal data structures, and parallelisation and performance will be very bad - and I am even not sure whether it works at all in all cases!

Apart from that, for making performance checks on parallelisation, it is wise to use sufficiently large domains in 2D or 3D, otherwise the outcome is not meaningful. Furthermore, be sure not to look at CPU times: In contrary to the wallclock times they always increase with the number of threads!

Bernd

Re: Parallel threads : problem

Posted: Thu Sep 27, 2018 11:00 am
by ralph
In fact, the CPU times are summed up over all threads.
If you get an ideal linear speedup with the number of threads, dividing by the number of threads will give you roughly the wallclock time.

Ralph