Message boards :
Frequently Asked Questions (FAQ) :
HOW TO - Add a Boinc Start Delay in Ubuntu
Message board moderation
| Author | Message |
|---|---|
skgivenSend message Joined: 23 Apr 09 Posts: 3968 Credit: 1,995,359,260 RAC: 0 Level ![]() Scientific publications ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Boinc often starts up before the NVidia drivers load, especially just after you install or upgrade. When this happens Boinc does not see the GPU, and reports Missing GPU against any GPU tasks. You can prevent this by delaying the automatic start-up of Boinc. From a Terminal type,
sudo update-rc.d boinc-client defaults 99
FAQ's HOW TO: - Opt out of Beta Tests - Ask for Help |
|
Send message Joined: 16 Mar 11 Posts: 509 Credit: 179,005,236 RAC: 0 Level ![]() Scientific publications ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]()
|
The reason that works is because daemons that have been assigned lower numbers start before after daemons assigned higher numbers. The max number allowed is 99. The 99 causes Linux to start the boinc-client daemon near the end of the boot sequence but it doesn't guarantee it will start last. If other daemons have been assigned 99 then the boot algorithm might start boinc-client ahead of all the other daemons assigned 99. That's usually not a problem unless someone has done something silly and desperate like delay all services other than X until after X starts by assigning 99 to all of them. In that case boinc-client may very well start immediately after X and before the nvidia drivers load. It's rare but it does happen. If you've tried skivens' tip and still have the problem he describes then it might be that someone did the desperate, naive, silly thing I describe above. If you suspect it's true then peek in /etc/rc3.d/ and see if most/all scripts have 99 in their name. If they do then that's likely your problem and the fix is to assign them higher numbers by renaming them while leaving boinc-client at 99. The difficulty is that each script (or a link to it) appears in a number of other directories so renaming them manually with the mv and ln commands is tedious and prone to error. Use the update-rc.d command instead since it will change all references to the target daemon automatically and correctly. If you don't know what order those scripts (the ones assigned 99) should start in then simply re-assign any 98 level scripts to 97, then move all 99's except boinc-client up to 98. Another way to delay the boinc-client daemon is to edit the script that starts boinc-client daemon and add a sleep command. The nano text editor is perfect for the job. sudo nano /etc/init.d/boinc-client (starts nano and loads the script into it) Scroll down to
start()
{
log_begin_msg "Starting $DESC: $NAME"
Add the sleep command on a new line following the { like this:
start()
{
sleep 60
log_begin_msg "Starting $DESC: $NAME"
60 causes a 60 second pause, use whatever number of seconds you want to delay. Type ctrl-O followed by <enter> to save the file then ctrl-x to exit nano. No need to reboot at that time. The delay will occur next time you boot and every boot thereafter until you remove the sleep command. BOINC <<--- credit whores, pedants, alien hunters |
|
Send message Joined: 4 Jul 09 Posts: 76 Credit: 114,610,402 RAC: 0 Level ![]() Scientific publications ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]()
|
The first method did not work for me and I have not tried the second this method does. I am running Mint 15 which is based on Ubuntu Raring. Edit /etc/rc.local add the following to rc.local with your favorite editor BEFORE the line that says exit 0 echo "service boinc-client restart" | at now + 1 minutes So /etc/rc.local looks like: #!/bin/sh -e # # rc.local # # This script is executed at the end of each multiuser runlevel. # Make sure that the script will "exit 0" on success or any other # value on error. # # In order to enable or disable this script just change the execution # bits. # # By default this script does nothing. echo "service boinc-client restart" | at now + 1 minutes exit 0 Cheers! |
©2025 Universitat Pompeu Fabra