Hi everybody!
I recently installed Einstein@Home (BOINC 4.72-2 experimental package from http://alioth.debian.org/projects/pkg-boinc/) on my laptop running Debian Sarge, kernel 2.6.8-2-686. The problem is that as soon as I allow einstein to "Run based on preferences", the system slows down to an almost unusable level. Mouse cursor is jerky and keystrokes tend to get ignored. When I say "Suspend" in Boinc Manager, the system returns to normal operation. "top" says that einstein_4.81_i is running with nice=19. Most CPU time is spent with niced processes as expected. Here is cpuinfo
> processor : 0
> vendor_id : GenuineIntel
> cpu family : 6
> model : 6
> model name : Celeron (Mendocino)
> stepping : 5
> cpu MHz : 433.481
> cache size : 128 KB
> fdiv_bug : no
> hlt_bug : no
> f00f_bug : no
> coma_bug : no
> fpu : yes
> fpu_exception : yes
> cpuid level : 2
> wp : yes
> flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 mmx fxsr
> bogomips : 856.06
Boinc found 187,47 MB of total memory. Boinc version is 4.72 i686-pc-linux-gnu.
Copyright © 2024 Einstein@Home. All rights reserved.
Einstein hogs too much CPU cycles on Linux 2.6.8
)
I think your CPU is a little under powered for Einstein, really....;o)
BOINC Wiki
An obvious workaround in this
)
An obvious workaround in this case is to modify the startx script such that work is suspended with "boinc_cmd --set_run_mode never" when X starts and resumed with "boinc_cmd --set_run_mode auto" when X shuts down. The system is console-based and X is only in use when the user starts it. I guess you could also make boinc suspend work when someone logs in. But I'd still prefer to see timesharing in action :)
About CPU speed: the first WU is 37 % finished and it has already taken 17,5 CPU hours :). But I'd like to keep this machine always on since booting takes quite a lot of time.
I updated to kernel 2.6.12.
)
I updated to kernel 2.6.12. Now I can see that Einstein takes about 45 % of CPU time. This is confirmed by computer summary in which "Average CPU efficiency" reads 0.45. I wonder what steals the rest of CPU time since top says that idle time is 0 % as soon as einstein is started.
RE: I updated to kernel
)
What does "top" for the other heavy CPU users? If it updates too quickly, you can set the delay by pressing "s" and entering the new delay time in seconds.
Here is what top says. top
)
Here is what top says.
top - 09:45:46 up 11:12, 3 users, load average: 1.61, 1.28, 1.28
Tasks: 52 total, 2 running, 50 sleeping, 0 stopped, 0 zombie
Cpu(s): 4.2% us, 3.0% sy, 92.8% ni, 0.0% id, 0.0% wa, 0.0% hi, 0.0% si
Mem: 191820k total, 187936k used, 3884k free, 55740k buffers
Swap: 188960k total, 2800k used, 186160k free, 58656k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
5475 boinc 34 19 18200 5072 1688 S 42.3 2.6 1:55.96 einstein_4.81_i
4862 boinc 15 0 4072 2512 1520 S 0.8 1.3 4:31.94 boinc_client
5425 root 16 0 22752 12m 2648 S 0.8 6.7 0:11.42 XFree86
5472 anonyy 16 0 6020 3148 2120 S 0.4 1.6 0:01.57 xterm
5477 anonyy 16 0 2176 1072 836 R 0.4 0.6 0:01.07 top
5479 anonyy 18 0 2384 1100 848 S 0.4 0.6 0:00.02 nano
4888 lp 15 0 2580 976 836 S 0.2 0.5 1:20.79 lpd
5444 anonyy 16 0 5816 3056 2116 R 0.2 1.6 0:00.81 xterm
5473 anonyy 16 0 3644 1968 1236 S 0.2 1.0 0:00.05 bash
1 root 16 0 1596 536 472 S 0.0 0.3 0:01.74 init
2 root 34 19 0 0 0 S 0.0 0.0 0:00.00 ksoftirqd/0
3 root 10 -5 0 0 0 S 0.0 0.0 0:00.73 events/0
4 root 11 -5 0 0 0 S 0.0 0.0 0:00.04 khelper
5 root 20 -5 0 0 0 S 0.0 0.0 0:00.00 kthread
23 root 10 -5 0 0 0 S 0.0 0.0 0:00.15 kblockd/0
61 root 15 0 0 0 0 S 0.0 0.0 0:00.00 pdflush
62 root 15 0 0 0 0 S 0.0 0.0 0:00.92 pdflush
64 root 20 -5 0 0 0 S 0.0 0.0 0:00.00 aio/0
63 root 15 0 0 0 0 S 0.0 0.0 0:00.20 kswapd0
650 root 15 0 0 0 0 S 0.0 0.0 0:00.01 kseriod
905 root 15 0 0 0 0 D 0.0 0.0 0:02.37 kjournald
947 root 11 -4 1584 468 404 S 0.0 0.2 0:00.34 udevd
1573 root 15 0 0 0 0 S 0.0 0.0 0:00.31 kapmd
2283 root 15 0 0 0 0 S 0.0 0.0 0:00.00 pccardd
2291 root 19 0 0 0 0 S 0.0 0.0 0:00.00 pccardd
2373 root 15 0 0 0 0 S 0.0 0.0 0:00.00 khubd
3357 root 17 0 0 0 0 S 0.0 0.0 0:00.00 kgameportd
3805 root 19 0 0 0 0 S 0.0 0.0 0:00.00 kIrDAd
4112 root 15 0 2464 888 752 S 0.0 0.5 0:00.00 dhclient
4810 root 16 0 2352 868 748 S 0.0 0.5 0:00.18 syslogd
4843 root 16 0 2472 1528 472 S 0.0 0.8 0:00.36 klogd
4854 root 16 0 1596 540 476 S 0.0 0.3 0:00.01 apmd
4873 messageb 18 0 2208 940 804 S 0.0 0.5 0:00.00 dbus-daemon-1
4882 root 19 0 2336 756 676 S 0.0 0.4 0:00.00 inetd
4886 lp 18 0 2576 936 800 S 0.0 0.5 0:00.00 lpd
4916 root 18 0 1616 712 536 S 0.0 0.4 0:00.00 cardmgr
4924 root 18 0 3616 1604 1324 S 0.0 0.8 0:00.00 sshd
4930 root 16 0 4068 4068 3380 S 0.0 2.1 0:03.97 ntpd
4933 daemon 16 0 1808 684 576 S 0.0 0.4 0:00.00 atd
4936 root 16 0 1868 784 644 S 0.0 0.4 0:00.05 cron
4948 root 17 0 1596 508 436 S 0.0 0.3 0:00.00 getty
4949 root 17 0 1596 504 436 S 0.0 0.3 0:00.00 getty
4950 root 16 0 1596 504 436 S 0.0 0.3 0:00.00 getty
5009 root 16 0 1592 504 436 S 0.0 0.3 0:00.00 getty
5017 root 16 0 1592 504 436 S 0.0 0.3 0:00.00 getty
5102 anonyy 16 0 4112 2256 1844 S 0.0 1.2 0:00.24 gconfd-2
5205 anonyy 15 0 3660 1972 1224 S 0.0 1.0 0:00.18 bash
5408 anonyy 17 0 3320 1556 984 S 0.0 0.8 0:00.04 startx
5424 anonyy 16 0 2472 676 580 S 0.0 0.4 0:00.00 xinit
5442 anonyy 15 0 5336 2744 2172 S 0.0 1.4 0:01.32 fvwm
5445 anonyy 15 0 3644 1956 1228 S 0.0 1.0 0:00.05 bash
5446 anonyy 15 0 89944 29m 18m S 0.0 15.9 0:22.52 mozilla-bin
RE: I updated to kernel
)
Does it stay at 45%, or is it jumping up and down?
RE: Does it stay at 45%, or
)
I watched einstein's CPU time percentage for a few minutes with an update interval of 1 second. It varied between 31 and 49 %. Mostly it was at about 42 %. With an interval of 10 seconds it varied between 42 and 45 and was mostly at about 44.
Have you tried running BOINC
)
Have you tried running BOINC without a X server?
RE: Have you tried running
)
Yes, no big differences. Usages about 2 % sy, 2 % us, 95 % ni, 45 % einstein and always exactly 0 % idle. Keystrokes are frequently ignored. Man pages scroll jerkily.
RE: Here is what top
)
The CPU times shown for each process add up to less than 50% so theres a lot hidden. Run TOP again with a 60 second delay, two intervals and see what uses the CPU other than einstein_4.81.i686-pc-linux-gnu.
I also see that boinc_client shows 4.5 minutes CPU, even though the system has been up for only 11 minutes. That doesn't agree with the .8% CPU time it shows.
Thats probably where the missing 50% CPU went to, 4.55 minutes CPU in 11.2 minutes elapsed works out to 40% of the CPU. Same thing with the "lpd", it shows 1.3 minutes CPU. That kind of CPU usage is sure to interfere with X-Windows. And anything else running.
Take a look at boinc's logs and see if its reporting any errors. It should use hardly any CPU at all. If boinc is started with the -redirectio option, look in stdoutdae.txt and stderrdae.txt.
Walt