CFD Online Discussion Forums

CFD Online Discussion Forums (http://www.cfd-online.com/Forums/)
-   FLUENT (http://www.cfd-online.com/Forums/fluent/)
-   -   How to fully utilize my cpu (http://www.cfd-online.com/Forums/fluent/33010-how-fully-utilize-my-cpu.html)

Effendi Ali February 10, 2004 10:34

How to fully utilize my cpu
 
just a short question, why i can't fully utilize my cpu while running fluent's simulation? usually it will only take 48-52% of my cpu usage.

i am using P4 2.6C, windows XP


ap February 10, 2004 15:12

Re: How to fully utilize my cpu
 
This seems really strange. I usually have my CPU at 100% all the time during simulations.

Maybe some limitation on the CPU usage of a process has been set on your workstation.

Hi :)

ap

Effendi Ali February 10, 2004 23:06

Re: How to fully utilize my cpu
 
Hi too, ap

i am using default system, win xp pro. I never set anything about cpu usage's limitation on my workstation. what is your processor and operating system?

thanks

Effendi Ali February 11, 2004 00:22

Re: How to fully utilize my cpu
 
i am just thinking, could my harddisk become the bottleneck? since i am using normal IDE drive, 7200rpm.

ap February 11, 2004 08:29

Re: How to fully utilize my cpu
 
I have a P4 as yours. My os is Linux.

No, I don't think the bottleneck is in your hard-disk, if your RAM is big enough to contain your case.

Hi :)

ap

Rob Hart February 11, 2004 09:44

Re: How to fully utilize my cpu
 
In the task manager, try turning on some of the extra columns. "Page Fault Delta" should tell you the number of times fluent tries to access something that has been swapped out.

What is the rest of the CPU usage being used by? Is it going to the Idle Process? or do you have something else chewing up the CPU?

Rob

Effendi Ali February 11, 2004 21:24

Re: How to fully utilize my cpu
 
i have tried to turn on "page fault data", the number is incresed during simulation, after the simulation is finished, it become zero. what is that mean?

the rest of cpu usage is idle, arround 45-48% cpu idle. i have tried to turn the process priority to real time processing, but nothing happen.

yup i got enough ram, since i am only doing simple geometry and mesh.

so most probably the cause is my windows setting? is there any registry setting that could solve this problem?

regards, Effendi


Rob Hart February 12, 2004 05:50

Re: How to fully utilize my cpu
 
A 'Page Fault' occurs when a program tries to access a section of memory that isn't currently available because it has been "swapped out" to the hard disc. If your system has lots of free RAM (see the performance tab of the Task Manager), then this should happen very rarely.

You will see values of around 10-100 in normal use, and values in the 1000s when you are starting an application for the first time.

The only other reason I can think of that fluent wont use all the CPU time is if you have a dual-processor machine (or perhaps a HT processor?) and you are running the serial version - but I'm sure you'd know about it if you had two cpu's

Rob


kaiser February 12, 2004 09:49

Re: How to fully utilize my cpu
 
i think two resons can cause your problem: 1,you simulation do not need 100% CPU usage,since your case is very simple. 2,a virus process just stunt your CPU furthermore, you can test you CPU by some popular softwares to make sure all the setting are best! and, just to set you computer mode be best perfomance rather than best appearance.

ozgur February 14, 2004 10:46

Re: How to fully utilize my cpu
 
Hi,

I have a similar experience with dual-processor HT machine (2 GHz each, 2GB ram) with linux os. When I set 4 processors (or 2, either)for parallel processing, I observe no change of calculation time for my multiphase simulations. Moreover, the setting of parallel even results in unstable process (SEGMENTATION VIOLATION errors, hanging of process, etc.)so I continue with serial processing mode.

What may be the reason?

Regards

Rob Hart February 14, 2004 19:46

Re: How to fully utilize my cpu
 
I'm not quite sure about the instability, but I can understand the performance issues.

What kernel are you running? The whole HT thing is still pretty new, and without a "hyper-threading aware" scheduler, it's pretty easy for the os to make bad choices about how to run two-processes.

In many ways, a HT processor acts like two processors, which means if there are two tasks to run (like two parallel fluent solvers), then the kernel could decided to run both of them on the same physical CPU. This is a problem because a lot of the processor resources are actually shared - e.g. the cache, and the bus which allows the processor to access RAM, so in the case of a memory intensive task (like running fluent) you wont see any benefits.

If you have a dual HT machine, then it will appear like a four processor machine, but when it is running two tasks, it is important that they run on different physical CPUs. I think the newer (2.6) linux kernels will do the right thing more often.

Rob


Effendi Ali February 15, 2004 13:40

Re: How to fully utilize my cpu
 
yeah, i think it's because of the HT thingy.

i just tried it by turning off HT from bios, then it will take 100%cpu usage to run the simulation. but there is not much different between HT off and HT on. since with HT on, my cpu usage is only 50%, i just stick with HT on.

i believe fluent 6.1 is not optimized for intel's HT design.

ozgur February 16, 2004 06:33

Re: How to fully utilize my cpu
 
Hi,

My linux kernel is 2.4.21. Well, when I am using parallel mode, I can see 4 fluent is running in the task window (using the command "top"). I can see my CPU's (as CPU0, CPU1,CPU2,CPU3) at the same window as well. But I don't know how to be sure that if my tasks are running on the different physical CPU's or not. But, the question here is, might I really face the problem you have mentioned (running 2 parallel tasks on 4 virtual CPUs) since I define not 2, but 4 parallel processes in Fluent? I mean, if I would define 2 processes in fluent (but having actually 4 virtual CPUs), then I would suspect more about my kernel. Isn't that so?

Regards

Rob Hart February 16, 2004 08:01

Re: How to fully utilize my cpu
 
A HT processor is just one CPU that likes to pretend it is two CPUs. It can do this, because for most uses the CPU is pretty idle.

However when running something like fluent, this is not the case, and there is not much benefit.

Unfortunately HT is a fairly new technology, so even the OS thinks the CPU is two processors. A proper HT-aware kernel is (I think) still in development, and so is not yet part of a mainline kernel.

You can probably turn HT off in your BIOS and see if things get faster, or you could try looking around for some experimental kernel patches.

Maybe start at: http://www.kerneltraffic.org/kernel-...threading.html

Paul Lees February 17, 2004 21:11

Re: How to fully utilize my cpu
 
Turn off the hyperthreading in the bios, I had the same problem. Even though the task manager says the cpu is at 50% it doesn't mean you still have 50% available to use. Fluent recomends not using hyperthreading as it has a detrimental effect on performance. I have experimented with it and a slower machine I have with hyperthreading disabled will out perform a faster one with it enabled. So my advise just turn it off when you are running a big case and back on when you are doing lots of tasks where it will help.

Paul


All times are GMT -4. The time now is 05:50.