-
Notifications
You must be signed in to change notification settings - Fork 112
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Slower performance with larger number of threads on a big multiprocessor machine #279
Comments
Hello, did you try using |
Thank you very much Denis ! I tested, with these flags and numactl, result is better than with default setting, but not as good as limiting the number of threads to 32 (performance are around what I obtain for 64 threads). But this machine is quite special (not only it has 4 big multicores, but also it has 6 TB of RAM, this may also explain, even if I'm using only around 200 GB) and it is not a blocking issue anyway, but these options are still interesting to know, thank you for the pointer. |
how many memory channels do you have? amgcl performance is usually memory-bound. |
Makes sense ! |
Hello,
I'm solving large systems (130 million x 130 million, approx 16 NNZs per row, P1 FEM for a Poisson-like equation)
on a big machine (4 CPUs Intel Xeon Gold 6240L, 18 cores/CPU, with hyperthreading, this makes 144 cores).
I am solving a series of linear systems (34 of them, it is a Newton iteration). I noticed that if I'm using all the
144 cores, performance is not as good as when using a limited number of cores (the optimum seems to be around 32 concurrent threads).
Is there a maximum recommended number of threads to use with AMGCL ?
Thank you in advance !
Running times with 144 threads
Running times with 64 threads
Running times with 32 threads (best)
Running times with 16 threads (increases again)
The text was updated successfully, but these errors were encountered: