idle priority scheduling broken in 7.0-BETA4
Jeff Roberson
jroberson at chesapeake.net
Tue Jan 1 21:08:41 PST 2008
On Mon, 24 Dec 2007, Rene Ladan wrote:
> Peter Jeremy schreef:
>> In August, I reported that idprio was not working in -current.
>> Successive upgrades to 7.0-BETA2 and 7.0-BETA4, as well as switching
>> to ULE have not resolved the problem.
>>
>> The problem affects both boinc-einsteinathome and boinc-setiathome and
>> causes them to report "No heartbeat from core client for 31 sec -
>> exiting" and get repeatedly restarted. The boinc compute modules
>> (einstein at home, seti at home etc) use a SysV SHM segment to exchange
>> heartbeats with the boinc core client. The problem is that the core
>> client is not being scheduled whilst the compute module is running,
>> causing them to die.
>>
>> Previously, multiple idprio tasks were round-robined but it seems that
>> something has been changed and it appears that the last scheduled task
>> is now re-scheduled.
>>
>> Has anyone else seen this behaviour?
>>
> On my CURRENT 2007-12-23 dualcore (Intel T5600) i386 I get similar behaviour
> when using the ULE scheduler. With the 4BSD scheduler priorities are sometimes
> wrong, but boinc tasks (einstein,seti,simap) run continuously until preempted,
> they are kept in memory.
>
> last pid: 8141; load averages: 2.03, 2.14, 2.18 up 0+20:48:27 10:51:54
> 146 processes: 7 running, 120 sleeping, 19 waiting
> CPU states: % user, % nice, % system, % interrupt, % idle
> Mem: 373M Active, 1040M Inact, 223M Wired, 17M Cache, 112M Buf, 349M Free
> Swap: 4062M Total, 4062M Free
>
> PID USERNAME PRI NICE SIZE RES STATE C TIME WCPU COMMAND
> 7315 boinc 171 i31 65960K 64904K CPU1 1 187:57 62.89% {einstein_S5R3_4.
> 7859 boinc 171 i31 13680K 12552K RUN 0 71:31 60.16% {simap_5.10_i686-
> 7859 boinc 20 i31 13680K 12552K kserel 0 71:31 10.45% {simap_5.10_i686-
> 5168 boinc 8 i31 41960K 37564K nanslp 0 205:14 0.00% {initial thread}
> 5168 boinc 8 19 41960K 37564K nanslp 0 205:14 0.00% {setiathome-5.27.
> 7315 boinc 20 i31 65960K 64904K ksesig 0 187:57 0.00% {einstein_S5R3_4.
> 7315 boinc 20 i31 65960K 64904K kserel 0 187:57 0.00% {einstein_S5R3_4.
> 7859 boinc 20 i31 13680K 12552K ksesig 0 71:31 0.00% {simap_5.10_i686-
> 22403 boinc 171 i31 9572K 6700K select 1 0:32 0.00% boinc_client
Can you please try this experimental patch for ULE? It re-enables the
time slicing code for idle prio and realtime tasks that are not fifo.
Thanks,
Jeff
>
>
> Rene
> --
> GPG fingerprint = E738 5471 D185 7013 0EE0 4FC8 3C1D 6F83 12E1 84F6 (subkeys.pgp.net)
>
> "It won't fit on the line."
> -- me, 2001
>
> _______________________________________________
> freebsd-current at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-current
> To unsubscribe, send any mail to "freebsd-current-unsubscribe at freebsd.org"
>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: uleidle.diff
Type: text/x-diff
Size: 987 bytes
Desc:
Url : http://lists.freebsd.org/pipermail/freebsd-current/attachments/20080102/edd709b5/uleidle.bin
More information about the freebsd-current
mailing list