CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   CFX (https://www.cfd-online.com/Forums/cfx/)
-   -   Too Slow CFX Simulation on powerful cpu (https://www.cfd-online.com/Forums/cfx/158966-too-slow-cfx-simulation-powerful-cpu.html)

bejanyar September 7, 2015 00:41

Too Slow CFX Simulation on powerful cpu
 
Hello,
I had a 4 core Core i5 cpu and 8 gigs of RAM.
My simulation was well but not fast enough.
Now i got a 16 core Xenon cpu with 12 gigs of ram.
My simulation time in first case was about 2 hours.
In second case i expected better performance but my simulation time goes to 5 hours !!!!!!!
In first case i used parallel run with number 4 and in second with number 16.
What is the problem ????

ghorrocks September 7, 2015 01:22

It could be your computer, OS or simulation. Here's some comments:

Computer/OS:
* Make sure the BIOS is current and supports the CPU
* your key drivers (motherboard, harddrive, display etc) are current
* there is no other software running which is killing things (virus checkers are a key culprit here)
* and that your new system actually is faster than the old one (check spec.org)

Simulation:
* Some simulations do not run well parallel. Examples include: small meshes, monte carlo radiation (I think this problem still exists, correct me if I am wrong), writing lots of results files or other things which thrash the hard drive.

bejanyar September 7, 2015 04:41

I checked items you mentioned.
About the computer and OS there isn't any problem.
But i found the computer's hard drive isn't fast enough !!
I running a 16 core parallel simulation. And it my be too much for hard drive!
If i use serial simulation , all my 16 core will be used ?? or not ??
Any other thing i think about is the solver setting.
I use RSM for queue simulation jobs.
May something in RSM have problem ?? Like cluster type ?? or some other .. ??
I put cluster type on "none" .
Thank you for your answers .

ghorrocks September 7, 2015 06:07

My previous list was just a start. There are many more things to check.

Hard drive speed should not make a difference to CFD speed unless:
* Your simulation is generating an immense amount of results files (this is very unusual, but does happen)
* Your simulation is too big for the available memory so it is going to swap memory. This is very bad for a CFD run and will make it run very slowly. If this is the case you need to make a smaller simulation, get more memory or run distributed parallel to spread the memory around a few machines so they all run in-core.

If you set up a bad MPI interface that can also cripple performance. Try the other MPI modes.

bejanyar September 7, 2015 13:35

I checked them all again.
My ram is 12 gig and in worst case only 7 gigs of it is in use.
:( :( :(
You told about MPI setting. How can do it correct ???
I did nothing. Only choose parallel and set number 16. Nothing else. Any other configuration should i do ??

ghorrocks September 7, 2015 17:43

In the directory <CFX_ROOT>/examples there is a file called Benchmark.def. This is a good benchmark CFX simulation to diagnose how fast your machine is and sort out problems. It only takes a minute or two to run so it is pretty quick.

On the old machine, run this def file in serial, local parallel with 2 and 4 processes.

Then repeat on the new machine in serial, local parallel with 2, 4, 8 and 16 processes.

The benchmark is too small to run well at 16 processes but the others will be instructive.

bejanyar September 8, 2015 08:18

I used benchmark tool and found that in parallel run with 8 core it has better performance.
So i run my simulation on 8 core and there was no problem and my computer run as fast as i want.
:)
I dont understant why , but OK !!!
Thank you for you help ghorrocks.

Lance September 8, 2015 08:56

Could it be that the last 8 cores comes from using hyper-threading? CFX shouldnt be used with hyper-threading and you will not see any significant speedup with those 'virtual' cores.

Opaque September 8, 2015 18:00

As suggested before, it will be good to run from 8 -> 16 cores (assuming the CPU has 16 real cores, not the hyperthreading fake stuff) in steps of 2, i.e. 8, 10, 12, 14, 16.

You then plot the scalability and you will see that if there is any degradation in performance. In general, those high core count CPU's do not scale well for applications that are memory bound because the memory bus cannot cope with the huge amount of data typical of CFD applications.

If you have available (at least of a test) another machine you can try running distributed parallel the same test above, i.e. from 8->16 but splitting the load. For example, 8 partitions with 4 partitions/machine, 10 (5 partitions/machine), 12 (6 partition/machine), .... You may see better parallel performance that way.

bejanyar September 9, 2015 00:22

I checked it.
It has best performance on 8 core parallel run.
Thanks for all answers.

-Maxim- September 9, 2015 02:23

Quote:

Originally Posted by Lance (Post 562970)
Could it be that the last 8 cores comes from using hyper-threading? CFX shouldnt be used with hyper-threading and you will not see any significant speedup with those 'virtual' cores.

that would have been my guess as well. You should disable that Hyper-Threading mechanism in BIOS. The physical cores are going to be used 100% - there's no 'use' for HT. It's just using up HPC licences ;)


All times are GMT -4. The time now is 12:08.