opencl_amd_cpu using all cpu cores instead of boinc limit
log in

Advanced search

Message boards : Windows : opencl_amd_cpu using all cpu cores instead of boinc limit

Author Message
HugoNotte
Send message
Joined: 12 Mar 14
Posts: 3
Credit: 4,416,827
RAC: 0
Message 19042 - Posted: 11 Apr 2014, 7:04:48 UTC

On an AMD FX8320 the opencl_amd_cpu application runs on all 8 cores, instead of only 6, as I have set a limit (75% of all cores) in the boinc manager.
In the boinc manager task window, it claims to run on 6 cores only, but cpu core usage clearly shows the application uses all 8 cores.
Is there any way to adjust settings, e.g. in a collatz config file?

Profile mikey
Avatar
Send message
Joined: 11 Aug 09
Posts: 3246
Credit: 1,701,529,038
RAC: 4,801,674
Message 19043 - Posted: 11 Apr 2014, 11:07:47 UTC - in response to Message 19042.

On an AMD FX8320 the opencl_amd_cpu application runs on all 8 cores, instead of only 6, as I have set a limit (75% of all cores) in the boinc manager.
In the boinc manager task window, it claims to run on 6 cores only, but cpu core usage clearly shows the application uses all 8 cores.
Is there any way to adjust settings, e.g. in a collatz config file?


What you are seeing is normal, I have an Intel i7 with hyper-threading that is turned on so my pc thinks it has 8 cpu cores. I only crunch using 5 of them but all 8 graphs show cpu usage, yet the bar graph stays around 63%, which is 5 out of 8.

HugoNotte
Send message
Joined: 12 Mar 14
Posts: 3
Credit: 4,416,827
RAC: 0
Message 19044 - Posted: 11 Apr 2014, 11:41:39 UTC - in response to Message 19043.

That's not what I am talking about. I am talking about all 8 cpu cores being used to almost 100% by that one type of collatz application. When other single threaded projects are running, the workload of 6 cores is spread over the 8 cores, as you describe. In that case total cpu use is lower and so are the temperatures. When collatz 6.04 opencl_amd_cpu runs, cpu usage goes up to almost 100% and the temperatures are rising, which is my main concern.

Profile Zydor
Avatar
Send message
Joined: 19 Aug 09
Posts: 364
Credit: 840,811,292
RAC: 0
Message 19045 - Posted: 11 Apr 2014, 16:03:50 UTC
Last modified: 11 Apr 2014, 16:56:06 UTC

To limit the number of Cores used by a Project, go into the Project app_config.xml file in your Collatz Project Directory (create one with Notepad if one does not exist - one can be created for each Project you run), unless you use an app_config.xml to limit numbers used, BOINC will grab all it finds (note the "gotcha" at the end of this Post). Mine is:

<app_config>
<app>
<name>solo_collatz</name>
<max_concurrent>5</max_concurrent>
<gpu_versions>
<gpu_usage>1.0</gpu_usage>
<cpu_usage>0.85</cpu_usage>
</gpu_versions>
</app>
</app_config>

(To be explicit that goes into the C:\ProgramData\BOINC\projects\boinc.thesonntags.com_collatz directory)

Using the above as an example, Collatz will assume two GPU Cores need two CPU to support (at 0.85 CPU per GPU), and will allocate 3 CPU for CPU WU at one per CPU WU, total useage 4.7 CPU

The key is the max_concurrent statement - BOINC will allocate CPUs to support however many GPU you have "first", then the remainder of the number you set, it assumes are for CPU cores. The settings are per Project, the Project in which you have placed the app_config.xml file.

Always verify you saved it as .xml not .txt when you save. To make sure that happens, set file type as "All" and explicitly put the full filename in the name box "app_config.xml".

BOINC will ignore it if you get the saved file as "txt" so make sure you double check the saved name after you have done it - its too easy to save as a txt file if you are not careful.

The full syntax for the app_config and cc_config is at:

https://boinc.berkeley.edu/wiki/Client_configuration#Configuration_file

Look at bottom of that for app_config syntax

Note in the above the totals inside gpu_version is the settings for one GPU, BOINC can detect how many GPU you fired up to be used in BOINC, it just applies the setting inside the gpu section to each GPU it finds available.

Beware a "gotcha" .... :)
A twist to all this ..... you can get into a royal pickle by not having the settings inside the Collatz Preferences set correctly, and that can produce the symptom you described. Check and make sure you have tagged the correct option inside Collatz Preferences, inside the Run only the selected plan classes part at the bottom of the options lists. You will need ONLY the second option ticked OpenCL for AMD GPUs (opencl_amd_gpu). Untick all others.

If you have OpenCL for AMD/Intel CPUs (opencl_amd_cpu) ticked, it will use all CPUs you have, no matter what else you do, that setting overrides everything else, you must only have ticked the option I showed above to be able to control the number of CPUs it uses.

HugoNotte
Send message
Joined: 12 Mar 14
Posts: 3
Credit: 4,416,827
RAC: 0
Message 19047 - Posted: 11 Apr 2014, 18:18:43 UTC - in response to Message 19045.

Beware a "gotcha" .... :)
A twist to all this ..... you can get into a royal pickle by not having the settings inside the Collatz Preferences set correctly, and that can produce the symptom you described. Check and make sure you have tagged the correct option inside Collatz Preferences, inside the Run only the selected plan classes part at the bottom of the options lists. You will need ONLY the second option ticked OpenCL for AMD GPUs (opencl_amd_gpu). Untick all others.

If you have OpenCL for AMD/Intel CPUs (opencl_amd_cpu) ticked, it will use all CPUs you have, no matter what else you do, that setting overrides everything else, you must only have ticked the option I showed above to be able to control the number of CPUs it uses.


Thanks for the explanation. I went to check the settings, but "OpenCL for AMD/Intel CPUs (opencl_amd_cpu)" wasn't even ticked. Hence I am not sure were I got that work unit from.
Since I got a nVidia card, I have the options "cuda" & "OpenCL for nVidia" ticked, not the AMD GPU one. Is that correct?

Do the settings in the app_config.xml do anything different than the settings in the Boinc Manager GUI?

Profile Zydor
Avatar
Send message
Joined: 19 Aug 09
Posts: 364
Credit: 840,811,292
RAC: 0
Message 19048 - Posted: 11 Apr 2014, 22:00:18 UTC - in response to Message 19047.

Oppps .... apologies ... I should have checked NVidia or AMD.

In that case check "OpenCL for nVidia GPUs (opencl_nvidia_gpu), and uncheck the rest.


Do the settings in the app_config.xml do anything different than the settings in the Boinc Manager GUI?


Yes.... a way to think about this is the BOINC GUI settings tell the software what type of card you have, and the app_config settings tell that option you ticked what to do in detail.

If you look closely at the app_config settings - its generic, no mention of card make. So, the machine says to the software "I am NVidia", and the generic settings inside the app_config, says to the card "Do This ..... ", the machine translates that into NVidia "speak" because you told it you have an NVidia card.

Have a feeling Slicker will hate this next bit ..... :)

A way of thinking about it is, the app_config spells out what you want doing (look closely, there is no card specific language, its generic), and the BOINC Manager GUI picks that up and tells the software (in your case) "in NVidia speak" what you want to do.

If it was a AMD card, the app_config would spell out what you want to happen, and ticking the amd option, the BOINC Manager then "speaks" AMD not NVidia.

app_config says what you want to do, the BOINC Manager takes that and translates into whatever you select inside the BOINC Manager Option as your hardware.

Mix the two .... and its rather like a Court translator listening to a Mexican witness, and translates it into Russian - not a lot of good if those listening need it in American :)

I hope that's not clear as mud .... yell if it is :)


Post to thread

Message boards : Windows : opencl_amd_cpu using all cpu cores instead of boinc limit


Main page · Your account · Message boards


Copyright © 2018 Jon Sonntag; All rights reserved.