-
Notifications
You must be signed in to change notification settings - Fork 180
faq 112234096
DRT: Computing speed on an Intel Xeon CPU is slower than on my laptop (problem with multi-threading?!)
by Jacqueline Aspäck on 2017-09-27 09:21:45
Hello,
I´m trying to accelerate the computing speed and ran the DRT simulation on two different computers:
a.) Intel Xeon CPU E5-2690, 2.9GHZ (2 processor, 32 cores with hyperthreading), 128 GB Ram -> settings in config: <param name="numberOfThreads" value="32" />
b.): Intel i7-6820HQ, 128 GB Ram -> settings in config: <param name="numberOfThreads" value="8" />
With computer “a”, the test simulation takes about 130 seconds per iteration and with “b” about 95 seconds. Furthermore, the VisualVM-Tool shows that with “a” the threads are most of time in parked mode. Is there a way to improve the setup?
Please find attached VisualVM screenshots:
monitor_a: Computer “a” -> screenshot “Monitor”; max CPU usage about 70 %
treads_a: Computer “a” -> screenshot “threads” -> see pooled threads
monitor_b: Computer “b” -> screenshot “Monitor”; max CPU usage 100 %
treads_b: Computer “b” -> screenshot “threads” ” -> see pooled threads
Thank you!!!
Re: DRT: Computing speed on an Intel Xeon CPU is slower than on my laptop (problem with multi-threading?!)
by Michal Maciejewski on 2017-11-13 17:02:02
Hi Jacky, Thanks for reporting this issue (I have not got notified about your question thus I am answering only now).
Only a part of the optimisation procedure is parallelised, so the average utilisation gets lower as the number of threads increases (thus so often many threads are parked), so this is fine. But I cannot say why the total computation time increases with the number of threads. Communication overhead?
Could you please send us the simulation input? That will help us with tracking down the problem.
Best,
Michal
Re: DRT: Computing speed on an Intel Xeon CPU is slower than on my laptop (problem with multi-threading?!)
by Jacqueline Aspäck on 2017-11-20 09:57:22
Hi Michael,
Please see attached the configuration file and following
screen shots:
Stopwatch_16: The number of threads on the server was set to 16
Stopwatch_32: The number of threads on the server was set to 32
Stopwatch_ntb: The number of threads on my notebook was set to 8
I hope this was helpful.
Best,
Jacky and Christoph :)
Re: DRT: Computing speed on an Intel Xeon CPU is slower than on my laptop (problem with multi-threading?!)
by Michal Maciejewski on 2017-12-06 21:16:30
Hi Jacky and Christoph,
Thanks for providing some input data.
The config file should be ok. (Please remember that 'numberOfThreads' may be set up in different parts in the xml, and they mean different things. Just skim through the output config produced by MATSim, there you will find them with some extra comments)
Could you please double check if the watchstop images are okay? What I see is that not only qsim (pink) is slower with 16 threads and even more slower with 32 threads (compared to the laptop run), but this also happens to the replanning phase (blue). Are they really from exactly the same scenarios (same input files except for the 'numberOfThreads' param)? Is there maybe something running on the serve in parallel? (Sorry, these are kind of stupid questions, but the times do not make sense, so I am doublechecking).
Best,
Michal
You are viewing an archive of the previous MATSim Q&A site. The real site is now at https://matsim.org/faq