← Back to team overview

yade-dev team mailing list archive

Re: 3 x speedups with new containers and openMP!

 

> Thus, the quickest option (speedup 2x) is BEX & VecMap & openMP but with 1 thread (???)...
I was also surprised to see that openMP is faster with 1 thread than
no-openMP. But it is consistent with my results at least.

The reason you don't get speedups for more threads is that you have too
little bodies, thus constant per-iteration overhead of openMP outweights
its benefits. Also, on Core2 Duo, there is no point using more that 2
threads, I would guess, but you can try that.

If you have simulation with 80k bodies, I think your speedups will be
different.

> The process yade-trunk-* takes no more 50-55% CPU (and 5.5% mem) with any num threads...
Memory starvation. I had the same: on thread was about 80% (presumably
the main one, which also does synchronizaiton, load-balancing etc),
while the other were aroung 50% or less. I am not sure if we can do
something about that. I will (maybe) buy an i7 machine with DDR3 memory
modules, I will see if that will make things bettter. It should, big time.

Oh, BTW, this is a great article:
http://people.redhat.com/drepper/cpumemory.pdf






References