Since the decision to demote ULE [story]
in favor of the 4BSD scheduler as the default for FreeBSD’s
5.3-Release, many improvements to both schedulers have been committed.
At the time it was marked broken,
ULE was especially needy in light of the status of its maintainership,
performance issues, and its unreliable nature in conjunction with threading and kernel preemption. Having resolved these problems, Jeff Roberson announces to -current that the ULE code is now in working order: More information can be found on kerneltrap.org.
You already posted this story:
http://www.osnews.com/story.php?news_id=9162
Thanks.
ULE vs. nptl ?
ULE vs. nptl
You mean kse vs nptl
or ule vs O(1)
Jeff Roberson has since merged the new ULE code into RELENG_5, however the new kern_sig.c from HEAD is needed for full ULE stability.
No, Jeff hasn’t merge any new ULE code into RELENG_5 yet. I believe, he will after his vacation.
yes. Checking the dates at the top of the relevant files in RELENG_5 shows commit dates from October. I proceeded to merge the files from HEAD, i directly copied sched_ule.c, kern_switch.c, kern_sig.c. I also had to merge the proc_fini function from kern_proc.c. Now I am running ule without preemtion, and my desktop experience is much improved. Enabling preemtion still caused spontaneous panics.
Has anyone else has similar or worse millage?
Yes, I’ve done the same thing and haven’t had problems since
I Still have occational crashes, But stability is better then before and the performance different is remarkable.