Boinc using integrated Intel GPU instead of Nvidia GPU - Lenovo Y700

Message boards : GPUs : Boinc using integrated Intel GPU instead of Nvidia GPU - Lenovo Y700
Message board moderation

To post messages, you must log in.

1 · 2 · Next

AuthorMessage
Battu007

Send message
Joined: 9 Dec 17
Posts: 9
India
Message 83713 - Posted: 9 Dec 2017, 9:54:45 UTC

I have a Lenovo Y700 running Windows 10 with
-INTEL Intel(R) HD Graphics 530 (6489MB)
and
-NVIDIA GeForce GTX 960M (4095MB)
http://setiathome.berkeley.edu/show_host_detail.php?hostid=8407014
The thing is that the Intel GPU has taken over and all GPU processing is being done on it while Nvidia GPU is sitting idle. Now i have made a config file to get both gpu active with it being placed in "C:\ProgramData" , named "cc_config.xml" with the following code
<cc_config>
   <log_flags>
   </log_flags>
   <options>
      <use_all_gpus>1</use_all_gpus>
   </options>
</cc_config>


Also the event log file is:
09/12/17 15:23:09 |  | Starting BOINC client version 7.8.3 for windows_x86_64
09/12/17 15:23:09 |  | log flags: file_xfer, sched_ops, task
09/12/17 15:23:09 |  | Libraries: libcurl/7.47.1 OpenSSL/1.0.2g zlib/1.2.8
09/12/17 15:23:09 |  | Data directory: C:\ProgramData\BOINC
09/12/17 15:23:09 |  | Running under account Battu007
09/12/17 15:23:10 |  | CUDA: NVIDIA GPU 0: GeForce GTX 960M (driver version 388.43, CUDA version 9.1, compute capability 5.0, 4096MB, 3430MB available, 1505 GFLOPS peak)
09/12/17 15:23:10 |  | OpenCL: NVIDIA GPU 0: GeForce GTX 960M (driver version 388.43, device version OpenCL 1.2 CUDA, 4096MB, 3430MB available, 1505 GFLOPS peak)
09/12/17 15:23:10 |  | OpenCL: Intel GPU 0: Intel(R) HD Graphics 530 (driver version 21.20.16.4550, device version OpenCL 2.0, 6490MB, 6490MB available, 202 GFLOPS peak)
09/12/17 15:23:10 |  | OpenCL CPU: Intel(R) Core(TM) i7-6700HQ CPU @ 2.60GHz (OpenCL driver vendor: Intel(R) Corporation, driver version 6.8.0.392, device version OpenCL 2.0 (Build 392))
09/12/17 15:23:10 |  | Host name: LAPTOP-P65TPBR7
09/12/17 15:23:10 |  | Processor: 8 GenuineIntel Intel(R) Core(TM) i7-6700HQ CPU @ 2.60GHz [Family 6 Model 94 Stepping 3]
09/12/17 15:23:10 |  | Processor features: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss htt tm pni ssse3 fma cx16 sse4_1 sse4_2 movebe popcnt aes f16c rdrandsyscall nx lm avx avx2 vmx tm2 pbe fsgsbase bmi1 hle smep bmi2
09/12/17 15:23:10 |  | OS: Microsoft Windows 10: Core x64 Edition, (10.00.16299.00)
09/12/17 15:23:10 |  | Memory: 15.86 GB physical, 18.24 GB virtual
09/12/17 15:23:10 |  | Disk: 590.98 GB total, 339.57 GB free
09/12/17 15:23:10 |  | Local time is UTC +5 hours
09/12/17 15:23:10 |  | Config: use all coprocessors
09/12/17 15:23:10 | Asteroids@home | URL http://asteroidsathome.net/boinc/; Computer ID 417900; resource share 100
09/12/17 15:23:10 | GPUGRID | URL http://www.gpugrid.net/; Computer ID 456166; resource share 100
09/12/17 15:23:10 | SETI@home | URL http://setiathome.berkeley.edu/; Computer ID 8407014; resource share 100
09/12/17 15:23:10 | GPUGRID | General prefs: from GPUGRID (last modified 08-Dec-2017 21:44:22)
09/12/17 15:23:10 | GPUGRID | Host location: none
09/12/17 15:23:10 | GPUGRID | General prefs: using your defaults
09/12/17 15:23:10 |  | Reading preferences override file
09/12/17 15:23:10 |  | Preferences:
09/12/17 15:23:10 |  | max memory usage when active: 8121.89 MB
09/12/17 15:23:10 |  | max memory usage when idle: 14619.40 MB
09/12/17 15:23:10 |  | max disk usage: 339.94 GB
09/12/17 15:23:10 |  | max CPUs used: 6
09/12/17 15:23:10 |  | (to change preferences, visit a project web site or select Preferences in the Manager)
09/12/17 15:23:10 |  | Using account manager BOINCstatsBAM!
09/12/17 15:23:18 |  | Suspending computation - user request


Now I've tried everything i could find but the GPU still won't work,
Also adding image to show what happens in task manager of my Laptop.
https://imgur.com/EbSCg05
Since i'm just starting out with Boinc, all help is appreciated. Thanks =D
ID: 83713 · Report as offensive
SekeRob
Volunteer tester
Help desk expert

Send message
Joined: 25 Aug 06
Posts: 1596
Message 83714 - Posted: 9 Dec 2017, 11:08:27 UTC - in response to Message 83713.  

This line

09/12/17 15:23:10 | | Config: use all coprocessors

Indicates that the cc_config.xml is being read, plus up above, the log confirms that the client is aware of both the GPU's.

You could experiment with app_config.xml at project level, allowing to tell which tasks are to use which co-processor... one or the other or both. For that see same manual as for cc_config.xml . You can even disable the Intel GPU in the config to test what happens.
Coelum Non Animum Mutant, Qui Trans Mare Currunt
ID: 83714 · Report as offensive
Richard Haselgrove
Volunteer moderator
Volunteer tester
Help desk expert

Send message
Joined: 5 Oct 06
Posts: 2913
United Kingdom
Message 83715 - Posted: 9 Dec 2017, 11:24:34 UTC - in response to Message 83713.  

I'm not quite sure why that should be - it looks as if you've done everything right: you have in fact successfully completed one task on the NVidia chip, shown as 'cuda42' in http://setiathome.berkeley.edu/results.php?hostid=8407014&state=4.

The 'use all gpus' wasn't strictly necessary - that only comes into play if you have two different GPUs using the same technology. That's only likely to happen in a desktop machine. But it'll do no harm - you may as well leave it there now.

I'd just let it run for a while, and see how it settles down. BOINC has a learning curve while it finds out which applications run best, and how long they're going to take: and you have a learning curve while you find out how noisy the fans get when everything is running at full power. You may find you need a supply of extra cool air from a fan-assisted stand you can place the laptop on: at the very least, ensure that no air inlet vents are obstructed while you're crunching. Even lifting the machine half an inch off the desk on four props can help, and soft furnishings are a no-no.

Watch out for that 'Suspending computation - user request' message at the very end of your log. It very much depends how you intend to use the laptop. You will make very different choices if it will mainly be static with mains power available, compared to your choices if you need to use it on the move and preserve battery life. If it's going to be static and mains powered - and if you can stand the noise - check that the 'Activity' menu says 'run always' for as many components as you dare to risk!

There's also a question how Lenovo have integrated the two GPUs. It's possible that it will switch between them, according to demand, but the power circuits may not be adequate to run both at the same time. Again, take your time to watch how it behaves, and decide what combination of settings suits you best. It'll be fun, but warning - it can get addictive! Enjoy.
ID: 83715 · Report as offensive
Battu007

Send message
Joined: 9 Dec 17
Posts: 9
India
Message 83716 - Posted: 9 Dec 2017, 12:12:45 UTC - in response to Message 83714.  

You can even disable the Intel GPU in the config to test what happens.

I tried that, but then the task only runs on CPU while both the GPU are sitting idle.
ID: 83716 · Report as offensive
PDW

Send message
Joined: 14 Aug 15
Posts: 66
United Kingdom
Message 83717 - Posted: 9 Dec 2017, 12:17:32 UTC - in response to Message 83713.  

The thing is that the Intel GPU has taken over and all GPU processing is being done on it while Nvidia GPU is sitting idle. Now i have made a config file to get both gpu active with it being placed in "C:\ProgramData" , named "cc_config.xml" with the following code
The correct location for the cc_config.xml file is "C:\ProgramData\BOINC" unless the default location was changed during installation.


09/12/17 15:23:10 |  | Config: use all coprocessors

Indicates that a cc_config was read, not necessarily the one you think you edited ;-)
ID: 83717 · Report as offensive
Battu007

Send message
Joined: 9 Dec 17
Posts: 9
India
Message 83718 - Posted: 9 Dec 2017, 12:25:26 UTC - in response to Message 83715.  
Last modified: 9 Dec 2017, 12:26:36 UTC

I'm not quite sure why that should be - it looks as if you've done everything right: you have in fact successfully completed one task on the NVidia chip, shown as 'cuda42' in http://setiathome.berkeley.edu/results.php?hostid=8407014&state=4.
You're quite right. But i've been monitoring the GPU usage all this time, maybe i missed it.

I'd just let it run for a while, and see how it settles down. BOINC has a learning curve while it finds out which applications run best.

I'll let boinc run for 24 hours and see what happens and report it here. I'm already using a cooler under the laptop so no need to worry about overheating

compared to your choices if you need to use it on the move and preserve battery life.

The laptop is going to powered the whole time and will be static.

There's also a question how Lenovo have integrated the two GPUs. It's possible that it will switch between them, according to demand, but the power circuits may not be adequate to run both at the same time.

I really hope that there is a way to switch them.

Under NVIDIA control panel I've set GTX as the default GPU for Boinc, lets see if there is any change in the 24 hour run.
Thanks for the help uptil now and in the future =D
ID: 83718 · Report as offensive
Battu007

Send message
Joined: 9 Dec 17
Posts: 9
India
Message 83719 - Posted: 9 Dec 2017, 12:29:34 UTC - in response to Message 83717.  

"C:\ProgramData\BOINC" , Is the location wherer I have placed and edited the config file... Sorry for typo in original Post.
ID: 83719 · Report as offensive
Richard Haselgrove
Volunteer moderator
Volunteer tester
Help desk expert

Send message
Joined: 5 Oct 06
Posts: 2913
United Kingdom
Message 83720 - Posted: 9 Dec 2017, 12:30:03 UTC - in response to Message 83716.  

You can even disable the Intel GPU in the config to test what happens.
I tried that, but then the task only runs on CPU while both the GPU are sitting idle.
The BOINC system - end-to-end, counting both the server and client together - makes a decision when work is fetched from the server, and assigns it to a particular class of device. Once you have been assigned a task, it will show in your BOINC Manager which device it will run on: switch to 'Advanced View' if you haven't got that displayed yet.

The tasks themselves are generalist, and could be run on any device, but it's devilish tricky to change the assignment once made - that's not something to try in the first week.

So the question becomes "why hasn't the server assigned any new work to my NVidia GPU?". There are certain project-specific limitations at SETI which prevent certain types of task being assigned to NVidia GPUs (they run inefficiently, so it's wasteful). So you may not get NVidia work at every attempt, but if you persevere, you should get some soon enough. I personally check <shed_op_debug> in the Event Log options list (Ctrl+Shift+F from the Manager) - that allows you to see exactly what is being requested and supplied, without overwhelming you with data. That might give a clue.
ID: 83720 · Report as offensive
PDW

Send message
Joined: 14 Aug 15
Posts: 66
United Kingdom
Message 83721 - Posted: 9 Dec 2017, 12:30:44 UTC - in response to Message 83716.  

You can even disable the Intel GPU in the config to test what happens.

I tried that, but then the task only runs on CPU while both the GPU are sitting idle.

You did that by putting the following line in your cc_config.xml file (in the options section):
<ignore_intel_dev/>

Only other suggestion is whether you have settings for suspend computation on GPU when busy ?
ID: 83721 · Report as offensive
Battu007

Send message
Joined: 9 Dec 17
Posts: 9
India
Message 83722 - Posted: 9 Dec 2017, 12:48:32 UTC - in response to Message 83721.  

You did that by putting the following line in your cc_config.xml file (in the options section):
<ignore_intel_dev/>

Yes that's right.
Only other suggestion is whether you have settings for suspend computation on GPU when busy ?

That setting has been unticked.
ID: 83722 · Report as offensive
Battu007

Send message
Joined: 9 Dec 17
Posts: 9
India
Message 83723 - Posted: 9 Dec 2017, 12:56:39 UTC - in response to Message 83720.  
Last modified: 9 Dec 2017, 12:58:28 UTC

So the question becomes "why hasn't the server assigned any new work to my NVidia GPU?". There are certain project-specific limitations at SETI which prevent certain types of task being assigned to NVidia GPUs (they run inefficiently, so it's wasteful).

Considering this, I've suspended all tasks of SETI and am now running GPUGRID which in tasks states
" GPUGRID 3.599% Running (0.95 CPUs + 1 NVIDIA GPU) "
which i'm guessing it will use NVIDIA GPU.
The task is a long task which might take upto 12 hours.
But the problem is that i've been running only this task for the past 15 minutes (no other tasks are being run) now, but the NVIDIA GPU is still sitting on 0% in the task manager and cpu at 42%. I wonder if they will fire up in some time... I'll report if i see any changes.
ID: 83723 · Report as offensive
Richard Haselgrove
Volunteer moderator
Volunteer tester
Help desk expert

Send message
Joined: 5 Oct 06
Posts: 2913
United Kingdom
Message 83725 - Posted: 9 Dec 2017, 13:16:51 UTC - in response to Message 83723.  

Look at it in BOINC Manager, Advanced view. See what the 'Progress' column on the 'Tasks' tab is showing [Ah, you said 3.599% - that's good}. But BOINC has a sneaky way of indicating what I call "pseudo progress", to reassure users running tasks which don't report progress properly themselves. GPUGrid tasks run very uniformly from start to finish, and should start showing progress almost immediately - although the total predicted runtime is variable and not to be trusted: check that the indicated progress% increases steadily over time. I'm currently running them in a bit over 12 hours on desktop 970s, so your 12 hours on a mobile 960 may be over-optimistic - but you should be able to guesstimate when it gets a bit further.

If GPUGrid progress increases uniformly over time, you would seem to be crunching OK and your GPU usage meter might be broken.
ID: 83725 · Report as offensive
Battu007

Send message
Joined: 9 Dec 17
Posts: 9
India
Message 83726 - Posted: 9 Dec 2017, 13:24:41 UTC - in response to Message 83725.  

Well, the progress percentage is increasing steadily and seeing how the estimated time just increased by an hour, I would guess I am crunching ok.
"GPU usage meter might be broken" This is something that is bothering me. When I play CS:GO or DOTA2 on high performance, the percentage used for NVIDIA GPU insreases and holds at nearly 100% which clearly shows that it is working quite fine. Also while using BOINC for SETI the gpu meter for Intel would be at 100% showing that it is being used to its fullest, But when GPUGrid is running, the task manager shows that Nvidia is still sitting idle but Physically the fans are running and the laptop is getting hot showing that its processing. Very wierd.
ID: 83726 · Report as offensive
Juha
Volunteer developer
Volunteer tester
Help desk expert

Send message
Joined: 20 Nov 12
Posts: 766
Finland
Message 83729 - Posted: 9 Dec 2017, 17:11:45 UTC - in response to Message 83726.  

Windows Task Manager probably doesn't show compute loads correctly. Try for example HWiNFO instead.
ID: 83729 · Report as offensive
Richard Haselgrove
Volunteer moderator
Volunteer tester
Help desk expert

Send message
Joined: 5 Oct 06
Posts: 2913
United Kingdom
Message 83730 - Posted: 9 Dec 2017, 17:35:17 UTC - in response to Message 83729.  

I've just started a new GPUGrid task on this machine, and Task Manager is showing a CPU load of around 7% (it flutters slightly). This is a quad-core machine, so that would equate to 28% of a core. A second monitoring tool, reporting on BOINC usage explicitly and averaging over 30 seconds, says that the same task is using about 24% of a single core. I think that's within the margin of error, and I trust them both. BOINC is lying to me, and echoing the 10% I put into an app_config.xml file years ago: without manual configuration, BOINC's statement of 95% is equally to be considered a lie. Neither 10% or 95% is obtained from actual measurement.
ID: 83730 · Report as offensive
Juha
Volunteer developer
Volunteer tester
Help desk expert

Send message
Joined: 20 Nov 12
Posts: 766
Finland
Message 83732 - Posted: 9 Dec 2017, 19:19:58 UTC - in response to Message 83730.  

Ummm... It's GPU load I though we were talking about.
ID: 83732 · Report as offensive
Richard Haselgrove
Volunteer moderator
Volunteer tester
Help desk expert

Send message
Joined: 5 Oct 06
Posts: 2913
United Kingdom
Message 83735 - Posted: 9 Dec 2017, 19:32:09 UTC - in response to Message 83732.  

Sure - and that certainly wouldn't show directly in Windows Task Manager. I was also pointing out, since Battu007 is new to BOINC and all its little quirks, that not everything shown on the BOINC Manager display can be taken at face value either - trying to fill in some background. At first glance, I'd say that the CPU showing at 42% for the GPUGrid task in [Windows?] Task Manager - 12:56 post - sounds plausible for GPUGrid on a dual-core Windows 10 machine - except that the opening log says it has 8 cores. We still have some way to dig here before we work out which tool is telling the truth.
ID: 83735 · Report as offensive
Juha
Volunteer developer
Volunteer tester
Help desk expert

Send message
Joined: 20 Nov 12
Posts: 766
Finland
Message 83736 - Posted: 9 Dec 2017, 19:43:20 UTC - in response to Message 83735.  

Well, since Creators Update or Fall Creators Update (can't remember which) GPU load is included in Task Manager. Check the image in the first post.

I think I read somewhere that the load is measured at DirectX level. Maybe Nvidia bypasses DirectX to get a little bit off latency.
ID: 83736 · Report as offensive
Richard Haselgrove
Volunteer moderator
Volunteer tester
Help desk expert

Send message
Joined: 5 Oct 06
Posts: 2913
United Kingdom
Message 83739 - Posted: 9 Dec 2017, 20:03:30 UTC

Well, blow me down - so it does. I still mainly use Windows 7, so I missed that.

Here goes:


That's running a SETI OpenCL task, which uses the GPU rather inefficiently - but at least it shows signs of life. This machine does switch to GPUGrid periodically, so I'll look to see if CUDA apps display similarly when I catch it happening.
ID: 83739 · Report as offensive
Richard Haselgrove
Volunteer moderator
Volunteer tester
Help desk expert

Send message
Joined: 5 Oct 06
Posts: 2913
United Kingdom
Message 83740 - Posted: 9 Dec 2017, 23:41:41 UTC

And that is interesting.


Same machine running GPUGrid. That does use the GPU, quite heavily, but under the CUDA (v8.0) programming environment. And no load is registered.
ID: 83740 · Report as offensive
1 · 2 · Next

Message boards : GPUs : Boinc using integrated Intel GPU instead of Nvidia GPU - Lenovo Y700

Copyright © 2018 University of California. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation.