Proper method to disable CPU from running WUs

If you're new to FAH and need help getting started or you have very basic questions, start here.

Moderators: Site Moderators, FAHC Science Team

Post Reply
davidbaril
Posts: 5
Joined: Wed Aug 24, 2022 2:01 pm
Hardware configuration: HP Z420 Workstation
Intel Xeon CPU 12-core E5-2697 v2 @ 2.7 GHz (Ivy Bridge-EP)
48 GB ECC Memory
EVGA GTX 1070 SC Black Edition Gaming (NVIDIA GeForce GTX 1070)
Samsung NVME SSD 950 Pro 512 GB (for boot)
Samsung NVME SSD 970 EVO Plus 2TB (for user files)
Location: Connecticut
Contact:

Proper method to disable CPU from running WUs

Post by davidbaril »

Hello,
I an a professional Systems Engineer that has recently started Folding at Home. I have a robust system (12-core Xeon, 48 GB memory, NVIDIA GTX 1070, dual NVME SSDs). I have run a few Work Units and have confirmed that my GPU runs the WUs significantly faster while drawing much less power. This is expected.

To lessen the electrical costs of running the WUs, I would like to run the WUs on the GPU slot only.

I tried setting the slot status to "finishing", allowing the jobs to finish, and then modifying the slot "Paused False" setting to "Paused True" using FAHControl, configuration tab.

Unfortunately, when I unpaused FAH, both the CPU and GPU slot were assigned WUs. I did NOT reboot after changing the CPU slot "Paused True" setting. I have not tried deleting the CPU slot completely, since I read some postings that the CPU slot would be auto-detected again in startup.

What is the proper method to configure FAH to use only the GPU slot to run Work Units? I could not find such information in the FAQ or forum postings.

Thank you for your help.

Dave
HP Z420 Workstation
Intel Xeon CPU 12-core E5-2697 v2 @ 2.7 GHz (Ivy Bridge-EP)
48 GB ECC Memory
EVGA GTX 1070 SC Black Edition Gaming (NVIDIA GeForce GTX 1070)
Samsung NVME SSD 950 Pro 512 GB (for boot)
Samsung NVME SSD 970 EVO Plus 2TB (for user files)
Joe_H
Site Admin
Posts: 7856
Joined: Tue Apr 21, 2009 4:41 pm
Hardware configuration: Mac Pro 2.8 quad 12 GB smp4
MacBook Pro 2.9 i7 8 GB smp2
Location: W. MA

Re: Proper method to disable CPU from running WUs

Post by Joe_H »

Welcome to the folding support forum.

If you are never going to run the CPU slot, then just delete the slot using FAHControl. As long as there is another slot set up the client will not recreate the CPU slot. By default a CPU slot will be created if there is no slot at all defined. It is GPU slots that are normally recreated if deleted.

If you will want to run CPU WUs some of the time, add the option pause-on-start set to true to the slot. Then in Advanced Control (FAHControl) you can right click on the slot you want to start, pause or finish and a pop-up menu will appear to do that. The main buttons apply to all slots at once.
Image

iMac 2.8 i7 12 GB smp8, Mac Pro 2.8 quad 12 GB smp6
MacBook Pro 2.9 i7 8 GB smp3
davidbaril
Posts: 5
Joined: Wed Aug 24, 2022 2:01 pm
Hardware configuration: HP Z420 Workstation
Intel Xeon CPU 12-core E5-2697 v2 @ 2.7 GHz (Ivy Bridge-EP)
48 GB ECC Memory
EVGA GTX 1070 SC Black Edition Gaming (NVIDIA GeForce GTX 1070)
Samsung NVME SSD 950 Pro 512 GB (for boot)
Samsung NVME SSD 970 EVO Plus 2TB (for user files)
Location: Connecticut
Contact:

Re: Proper method to disable CPU from running WUs

Post by davidbaril »

Hi Joe_H,

Thank you for the quick reply.

I will first try adding the pause-on-start option on the CPU slot (and put the "paused" option back to the original default of True). I have to wait about 5.5 hours for the existing jobs to finish to see if it works as expected.

Regards,

Dave B
HP Z420 Workstation
Intel Xeon CPU 12-core E5-2697 v2 @ 2.7 GHz (Ivy Bridge-EP)
48 GB ECC Memory
EVGA GTX 1070 SC Black Edition Gaming (NVIDIA GeForce GTX 1070)
Samsung NVME SSD 950 Pro 512 GB (for boot)
Samsung NVME SSD 970 EVO Plus 2TB (for user files)
JimboPalmer
Posts: 2573
Joined: Mon Feb 16, 2009 4:12 am
Location: Greenwood MS USA

Re: Proper method to disable CPU from running WUs

Post by JimboPalmer »

Welcome to Folding@Home!

I may have missed it, but you also want to click Finish for the existing CPU Work Unit.
Tsar of all the Rushers
I tried to remain childlike, all I achieved was childish.
A friend to those who want no friends
davidbaril
Posts: 5
Joined: Wed Aug 24, 2022 2:01 pm
Hardware configuration: HP Z420 Workstation
Intel Xeon CPU 12-core E5-2697 v2 @ 2.7 GHz (Ivy Bridge-EP)
48 GB ECC Memory
EVGA GTX 1070 SC Black Edition Gaming (NVIDIA GeForce GTX 1070)
Samsung NVME SSD 950 Pro 512 GB (for boot)
Samsung NVME SSD 970 EVO Plus 2TB (for user files)
Location: Connecticut
Contact:

Re: Proper method to disable CPU from running WUs

Post by davidbaril »

Hi Jimbo,

Thank you for the quick reply, and caution.

Yes, I have clicked "Finish" for the CPU job (done previously), and I did not clearly state this in my response.

In my short experience with FAH, I understand I need to use "Finish" to complete the active WUs, and prevent the local client from accepting new jobs. This need-to-finish is not well discussed in the FAH installation guide or the FAQ.

Thank you for reinforcing the need to "Finish".

Once I get the client running GPU WUs only, I will start to explore increasing the GPU resources used within the WU. My GPU is only about 7% busy using 1.5 GB out of 8 GB of GPU memory (according to Sysinternals Process Explorer). I understand some simulations don't have large degrees of parallelism. In my case, the 2 WUs I have run on the GPU only use one GPU engine fully, and about 10% of a second engine. It appears that the mainline is using the 10% of an engine, and invoking a second engine to do the bulk of the computation serially. According to Sysinternals Process Explorer, there are 30 GPU engines available, of which only 1.1 are being used.

Regards
HP Z420 Workstation
Intel Xeon CPU 12-core E5-2697 v2 @ 2.7 GHz (Ivy Bridge-EP)
48 GB ECC Memory
EVGA GTX 1070 SC Black Edition Gaming (NVIDIA GeForce GTX 1070)
Samsung NVME SSD 950 Pro 512 GB (for boot)
Samsung NVME SSD 970 EVO Plus 2TB (for user files)
Joe_H
Site Admin
Posts: 7856
Joined: Tue Apr 21, 2009 4:41 pm
Hardware configuration: Mac Pro 2.8 quad 12 GB smp4
MacBook Pro 2.9 i7 8 GB smp2
Location: W. MA

Re: Proper method to disable CPU from running WUs

Post by Joe_H »

When looking at GPU resources being used, processing is done on the shaders and not other sections used for rendering video to be shown on the screen. In your case a GTX 1070 has 1920 shaders. If you were monitoring utilization through Task Manager you would have to change one of the default graphs to a Compute (n) or CUDA display depending on Windows version and update level. What you may be seeing is the use of the "GPU engine" to dispatch CUDA commands and data to the shaders and retrieve processed data. The shaders themselves are already highly parallel.
Image

iMac 2.8 i7 12 GB smp8, Mac Pro 2.8 quad 12 GB smp6
MacBook Pro 2.9 i7 8 GB smp3
davidbaril
Posts: 5
Joined: Wed Aug 24, 2022 2:01 pm
Hardware configuration: HP Z420 Workstation
Intel Xeon CPU 12-core E5-2697 v2 @ 2.7 GHz (Ivy Bridge-EP)
48 GB ECC Memory
EVGA GTX 1070 SC Black Edition Gaming (NVIDIA GeForce GTX 1070)
Samsung NVME SSD 950 Pro 512 GB (for boot)
Samsung NVME SSD 970 EVO Plus 2TB (for user files)
Location: Connecticut
Contact:

Re: Proper method to disable CPU from running WUs

Post by davidbaril »

Hi Joe_H,

Thank you for the info. I cross checked the GPU usage with Windows 10 Task manager GPU section, and the "CUDA" section shows 98% usage. I also checked with the NVIDIA GEForce Experience app performance monitor, and it also shows 95+% usage.

So the GPU jobs are running OK. It was Sysinternals Process Explorer ... GPU monitoring that was faulty. I'm going check in the Sysinternals forum about GPU inaccuracies.

Thanks again.

Dave B
HP Z420 Workstation
Intel Xeon CPU 12-core E5-2697 v2 @ 2.7 GHz (Ivy Bridge-EP)
48 GB ECC Memory
EVGA GTX 1070 SC Black Edition Gaming (NVIDIA GeForce GTX 1070)
Samsung NVME SSD 950 Pro 512 GB (for boot)
Samsung NVME SSD 970 EVO Plus 2TB (for user files)
Joe_H
Site Admin
Posts: 7856
Joined: Tue Apr 21, 2009 4:41 pm
Hardware configuration: Mac Pro 2.8 quad 12 GB smp4
MacBook Pro 2.9 i7 8 GB smp2
Location: W. MA

Re: Proper method to disable CPU from running WUs

Post by Joe_H »

Perhaps not faulty, but instead focused on use of the GPU for displaying video. That is a MS tendency, for example driver updates through Windows Update usually leave out the CUDA and OpenCL support needed for compute usage.
Image

iMac 2.8 i7 12 GB smp8, Mac Pro 2.8 quad 12 GB smp6
MacBook Pro 2.9 i7 8 GB smp3
davidbaril
Posts: 5
Joined: Wed Aug 24, 2022 2:01 pm
Hardware configuration: HP Z420 Workstation
Intel Xeon CPU 12-core E5-2697 v2 @ 2.7 GHz (Ivy Bridge-EP)
48 GB ECC Memory
EVGA GTX 1070 SC Black Edition Gaming (NVIDIA GeForce GTX 1070)
Samsung NVME SSD 950 Pro 512 GB (for boot)
Samsung NVME SSD 970 EVO Plus 2TB (for user files)
Location: Connecticut
Contact:

Re: Proper method to disable CPU from running WUs

Post by davidbaril »

Thank everybody who replied to this posting.

I ended up taking the simpler approach and just removed the CPU slot completely after allowing the existing WU to finish. Now there is no way a WU can start on the CPU. My power usage on this 12-core system went down by 100-150 watts by not running the WU on the CPU.

One observation. Running a GPU work unit can consume about 1.5 to 2.0 CPU cores on the host also.

When running a Work Unit using FahCore_22.exe on my Nvidia GTX 1070 (Pascal) with 1920 shaders, the FahCore_22.exe process consumes a whole CPU core on my 12-core Ivy Bridge-EP CPU (with hyperthreads disabled). This shows up as 1/12 of the total available CPU or 8.3%. However, there is another .5 to 1.0 CPU core's worth of additional processing going on in the Windows kernal on behalf of the FAH client app.

If you should chose to run CPU slots and GPU slots together, the default thread count for the CPU slot is the (total CPU core count -1), or in my case, 11 threads on a 12-core system. If I should run the CPU slot and GPU slot concurrently, the system is slightly over-subscribed because the CPU portion of the GPU job consumes 1.5-2.0 CPU cores itself. Thus, in this case, the CPU-portion of the GPU job is slightly starved for CPU, competing with the CPU Work Unit.

If you should want to run CPU and GPU work units together, I would suggest to edit the CPU slot settings and explicitly set the number of threads to the (total CPU count -2), not the default of (total CPU count -1). If you are running with hyperthreads enabled, you may need to adjust the setting further.

Regards,

Dave B
HP Z420 Workstation
Intel Xeon CPU 12-core E5-2697 v2 @ 2.7 GHz (Ivy Bridge-EP)
48 GB ECC Memory
EVGA GTX 1070 SC Black Edition Gaming (NVIDIA GeForce GTX 1070)
Samsung NVME SSD 950 Pro 512 GB (for boot)
Samsung NVME SSD 970 EVO Plus 2TB (for user files)
Post Reply