-
Notifications
You must be signed in to change notification settings - Fork 449
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
"Suspend when non-BOINC CPU usage is above" setting fails with VirtualBox tasks #5841
Comments
The BOINC client looks for a program called 'VBoxSVC.exe' (case sensitive) and, if any VM apps are running, To check this, can you please (while a BOINC VM app is running)
Let me know if this is what you see. Thanks -- David |
I see 'VBoxSVC.exe' running, but its CPU utilization is 0%. The high CPU utilization is coming from one instance of 'VBoxHeadless.exe'. This was running VirtualBox 6.1.50. I also upgraded to VirtualBox 7.0.20 and observed the same behavior |
Aha. That's the culprit. We'll fix it ASAP. Thanks. |
VBoxSVC typically maintains the command queue sent by VBoxManage or the Vbox GUI. There may be more than one VBoxSVC instance on the same computer, 1 per user account running Vbox VMs. Here, VBoxSVC_1 doesn't count for BOINC. |
It looks like BOINC already has access to the PID of the VBoxHeadless.exe instance (PID shown in stderr.txt in the slots dir matches PID shown in Task Manger), so would it be possible to include only the CPU utilization from the known BOINC VM PID(s)? This would address @computezrmle's concern about non-BOINC VMs. |
It would be possible but I doubt that happens in practice BTW, looking at the vboxwrapper code (vbox_common.cpp) |
What people run inside separate VMs:
There are also people running multiple BOINC clients concurrently on the host and each of them may run VirtualBox VMs. As for VBOX_BASE::launch_vboxvm(): |
Describe the bug
BOINC client detects VirtualBox Headless Frontend as non-BOINC CPU usage and pauses computation based on the "Suspend when non-BOINC CPU usage is above" setting.
Steps To Reproduce
Expected behavior
BOINC should continue running until non-BOINC CPU load exceeds the set threshold.
System Information
Additional context
I enabled this setting with a non-BOINC utilization percentage of 90% so that BOINC would pause when I run workloads that need full use of the CPU cache. Recently noticed this issue with LHC@home tasks. I also noticed that the VM keeps running in the background when BOINC is suspended.
The text was updated successfully, but these errors were encountered: