Message boards : GPUs : Boinc using integrated Intel GPU instead of Nvidia GPU - Lenovo Y700
Message board moderation
Author | Message |
---|---|
Send message Joined: 9 Dec 17 Posts: 9 |
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 |
Send message Joined: 5 Oct 06 Posts: 5124 |
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. |
Send message Joined: 9 Dec 17 Posts: 9 |
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. |
Send message Joined: 9 Dec 17 Posts: 9 |
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 |
Send message Joined: 9 Dec 17 Posts: 9 |
"C:\ProgramData\BOINC" , Is the location wherer I have placed and edited the config file... Sorry for typo in original Post. |
Send message Joined: 5 Oct 06 Posts: 5124 |
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.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 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. |
Send message Joined: 9 Dec 17 Posts: 9 |
You did that by putting the following line in your cc_config.xml file (in the options section): Yes that's right. Only other suggestion is whether you have settings for suspend computation on GPU when busy ? That setting has been unticked. |
Send message Joined: 9 Dec 17 Posts: 9 |
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. |
Send message Joined: 5 Oct 06 Posts: 5124 |
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. |
Send message Joined: 9 Dec 17 Posts: 9 |
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. |
Send message Joined: 20 Nov 12 Posts: 801 |
Windows Task Manager probably doesn't show compute loads correctly. Try for example HWiNFO instead. |
Send message Joined: 5 Oct 06 Posts: 5124 |
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. |
Send message Joined: 20 Nov 12 Posts: 801 |
Ummm... It's GPU load I though we were talking about. |
Send message Joined: 5 Oct 06 Posts: 5124 |
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. |
Send message Joined: 20 Nov 12 Posts: 801 |
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. |
Send message Joined: 5 Oct 06 Posts: 5124 |
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. |
Send message Joined: 5 Oct 06 Posts: 5124 |
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. |
Send message Joined: 9 Dec 17 Posts: 9 |
That is what i've been seeing. I guess task manager really does not show the Nvidia GPU being used . FInally. Well atleast the GPU is being used which i've wanted from the start. Thanks a lot for clearing this out for me. |
Send message Joined: 5 Oct 06 Posts: 5124 |
And we all learned something along the way. This is the machine I took that screenshot from, showing the variation in task run time - that one was particularly quick. All tasks for computer 388426 |
Send message Joined: 29 Aug 05 Posts: 15552 |
That does use the GPU, quite heavily, but under the CUDA (v8.0) programming environment. And no load is registered.GPU Load cannot be compared to CPU load. Where CPU load is basically any data calculations or transport that it takes care of, GPU load depends on screen refresh rate, screen resolution, the kind of OpenCL or CUDA kernels that data has been converted to, the clock speed of the GPU, and some other things. The load you see here is the Direct3D load, which when running CUDA or OpenCL shouldn't be used much, of course depending on which shaders the science app is optimized for. Direct3D exposes the advanced graphics capabilities of 3D graphics hardware, including Z-buffering, W-buffering, stencil buffering, spatial anti-aliasing, alpha blending, color blending, mipmapping, texture blending, clipping, culling, atmospheric effects, perspective-correct texture mapping, programmable HLSL shaders and effects. |
Copyright © 2024 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.