Re: cvs commit: src/sys/kern sched_ule.c

2008-04-04 Thread John Baldwin
On Thursday 03 April 2008 09:04:43 pm Jeff Roberson wrote: > jeff2008-04-04 01:04:43 UTC > > FreeBSD src repository > > Modified files: > sys/kern sched_ule.c > Log: >- Don't check for the ITHD pri class in tdq_load_add and rem. 4BSD > doesn't do this either. Sim

Re: cvs commit: src/sys/kern sched_ule.c

2008-04-03 Thread Jeff Roberson
On Fri, 4 Apr 2008, Jeff Roberson wrote: jeff2008-04-04 01:16:18 UTC FreeBSD src repository Modified files: sys/kern sched_ule.c Log: - Allow static_boost to specify no boost with '0', traditional kernel fixed pri boost with '1' or any priority less than the cu

Re: cvs commit: src/sys/kern sched_ule.c

2008-03-10 Thread Aryeh M. Friedman
Jeff Roberson wrote: On Mon, 10 Mar 2008, Aryeh M. Friedman wrote: Jeff Roberson wrote: jeff2008-03-10 22:48:27 UTC FreeBSD src repository Modified files: sys/kern sched_ule.c Log: - Fix the invalid priority panics people are seeing by forcing tdq_runq_a

Re: cvs commit: src/sys/kern sched_ule.c

2008-03-10 Thread Jeff Roberson
On Mon, 10 Mar 2008, Aryeh M. Friedman wrote: Jeff Roberson wrote: jeff2008-03-10 22:48:27 UTC FreeBSD src repository Modified files: sys/kern sched_ule.c Log: - Fix the invalid priority panics people are seeing by forcing tdq_runq_add to select the runq

Re: cvs commit: src/sys/kern sched_ule.c

2008-03-10 Thread Aryeh M. Friedman
Jeff Roberson wrote: jeff2008-03-10 22:48:27 UTC FreeBSD src repository Modified files: sys/kern sched_ule.c Log: - Fix the invalid priority panics people are seeing by forcing tdq_runq_add to select the runq rather than hoping we set it properly whe

Re: cvs commit: src/sys/kern sched_ule.c

2008-03-03 Thread Jeff Roberson
On Sun, 2 Mar 2008, Julian Elischer wrote: Peter Jeremy wrote: Kris has done some excellent benchmarking as usual. Here you can see the improvement in postgres depending on various scheduler debug settings: http://people.freebsd.org/~kris/scaling/pgsql-16cpu.png The improvement is quit

Re: cvs commit: src/sys/kern sched_ule.c

2008-03-02 Thread Julian Elischer
Peter Jeremy wrote: Kris has done some excellent benchmarking as usual. Here you can see the improvement in postgres depending on various scheduler debug settings: http://people.freebsd.org/~kris/scaling/pgsql-16cpu.png The improvement is quite substantial. Congratulations Jeff. the dr

Re: cvs commit: src/sys/kern sched_ule.c

2008-03-02 Thread Peter Jeremy
On Sat, Mar 01, 2008 at 10:29:50PM -1000, Jeff Roberson wrote: >With these changes ULE is the only scheduler that supports the new cpuset >api. Excellent work. I didn't expect it to be implemented so quickly. > It succeeds on 4BSD but the scheduler doesn't obey the masks. I don't >presently h

Re: cvs commit: src/sys/kern sched_ule.c

2008-03-02 Thread Jeff Roberson
On Sun, 2 Mar 2008, Jeff Roberson wrote: jeff2008-03-02 08:20:59 UTC FreeBSD src repository Modified files: sys/kern sched_ule.c Log: Add support for the new cpu topology api: - When searching for affinity search backwards in the tree from the last cpu we ran o

Re: cvs commit: src/sys/kern sched_ule.c

2007-10-02 Thread Bruce Evans
On Tue, 2 Oct 2007, Jeff Roberson wrote: On Tue, 2 Oct 2007, Bruce Evans wrote: Sorry I don't have time for a point by point on this one. Thank you for your interesting analysis. From this I'm taking away a couple of things: 1) I've noticed that ULE relied on PREEMPTION for a long time a

Re: cvs commit: src/sys/kern sched_ule.c

2007-10-02 Thread Bruce Evans
On Tue, 2 Oct 2007, John Baldwin wrote: On Tuesday 02 October 2007 09:49:34 am Bruce Evans wrote: Apparently, there is a scaling bug for hz or extra interrupts for the larger hz help, and the default preempt_thresh is not best. -current on i386 and amd64 does a very poor job of scaling stathz

Re: cvs commit: src/sys/kern sched_ule.c

2007-10-02 Thread Jeff Roberson
On Tue, 2 Oct 2007, Bruce Evans wrote: On Mon, 1 Oct 2007, Jeff Roberson wrote: On Tue, 2 Oct 2007, Bruce Evans wrote: Further testing of my ~4BSD scheduler in ~5.2 indicates that when a process wants less than about 1/loadavg of the CPU on average, it usually just gets it, with no scheduli

Re: cvs commit: src/sys/kern sched_ule.c

2007-10-02 Thread John Baldwin
On Tuesday 02 October 2007 09:49:34 am Bruce Evans wrote: > Apparently, there is a scaling bug for hz or extra interrupts for > the larger hz help, and the default preempt_thresh is not best. -current on i386 and amd64 does a very poor job of scaling stathz and profhz with hz, so this may explain

Re: cvs commit: src/sys/kern sched_ule.c

2007-10-02 Thread Bruce Evans
On Mon, 1 Oct 2007, Jeff Roberson wrote: On Tue, 2 Oct 2007, Bruce Evans wrote: Further testing of my ~4BSD scheduler in ~5.2 indicates that when a process wants less than about 1/loadavg of the CPU on average, it usually just gets it, with no scheduling delays, since it usually has higher pr

Re: cvs commit: src/sys/kern sched_ule.c

2007-10-01 Thread Jeff Roberson
On Mon, 1 Oct 2007, Bruce Evans wrote: On Sun, 30 Sep 2007, Jeff Roberson wrote: On Sat, 29 Sep 2007, Kevin Oberman wrote: YMMV, but ULE seems to generally work better then 4BSD for interactive uniprocessor systems. The preferred scheduler for uniprocessor servers is less clear, but many te

Re: cvs commit: src/sys/kern sched_ule.c

2007-10-01 Thread Jeff Roberson
On Tue, 2 Oct 2007, Bruce Evans wrote: On Mon, 1 Oct 2007, Kevin Oberman wrote: Date: Mon, 1 Oct 2007 21:26:39 +1000 (EST) From: Bruce Evans <[EMAIL PROTECTED]> On Mon, 1 Oct 2007, Jeff Roberson wrote: Given that the overwhelming amount of feedback by qualified poeple, I think it's fair t

Re: cvs commit: src/sys/kern sched_ule.c

2007-10-01 Thread Bruce Evans
On Mon, 1 Oct 2007, Kevin Oberman wrote: Date: Mon, 1 Oct 2007 21:26:39 +1000 (EST) From: Bruce Evans <[EMAIL PROTECTED]> On Mon, 1 Oct 2007, Jeff Roberson wrote: Given that the overwhelming amount of feedback by qualified poeple, I think it's fair to say that ULE gives a more responsive sys

Re: cvs commit: src/sys/kern sched_ule.c

2007-10-01 Thread Jeff Roberson
On Mon, 1 Oct 2007, Bruce Evans wrote: On Mon, 1 Oct 2007, Jeff Roberson wrote: On Mon, 1 Oct 2007, Bruce Evans wrote: On Sun, 30 Sep 2007, Jeff Roberson wrote: On Sat, 29 Sep 2007, Kevin Oberman wrote: YMMV, but ULE seems to generally work better then 4BSD for interactive uniprocessor

Re: cvs commit: src/sys/kern sched_ule.c

2007-10-01 Thread Kevin Oberman
> Date: Mon, 1 Oct 2007 21:26:39 +1000 (EST) > From: Bruce Evans <[EMAIL PROTECTED]> > > On Mon, 1 Oct 2007, Jeff Roberson wrote: > > > On Mon, 1 Oct 2007, Bruce Evans wrote: > > > >> On Sun, 30 Sep 2007, Jeff Roberson wrote: > >> > >>> On Sat, 29 Sep 2007, Kevin Oberman wrote: > >> > YMMV

Re: cvs commit: src/sys/kern sched_ule.c

2007-10-01 Thread Bruce Evans
On Mon, 1 Oct 2007, Jeff Roberson wrote: On Mon, 1 Oct 2007, Bruce Evans wrote: On Sun, 30 Sep 2007, Jeff Roberson wrote: On Sat, 29 Sep 2007, Kevin Oberman wrote: YMMV, but ULE seems to generally work better then 4BSD for interactive uniprocessor systems. The preferred scheduler for unip

Re: cvs commit: src/sys/kern sched_ule.c

2007-10-01 Thread Jeff Roberson
On Mon, 1 Oct 2007, Bruce Evans wrote: On Sun, 30 Sep 2007, Jeff Roberson wrote: On Sat, 29 Sep 2007, Kevin Oberman wrote: YMMV, but ULE seems to generally work better then 4BSD for interactive uniprocessor systems. The preferred scheduler for uniprocessor servers is less clear, but many te

Re: cvs commit: src/sys/kern sched_ule.c

2007-10-01 Thread Bruce Evans
On Sun, 30 Sep 2007, Jeff Roberson wrote: On Sat, 29 Sep 2007, Kevin Oberman wrote: YMMV, but ULE seems to generally work better then 4BSD for interactive uniprocessor systems. The preferred scheduler for uniprocessor servers is less clear, but many test have shown ULE does better for those s

Re: cvs commit: src/sys/kern sched_ule.c

2007-09-30 Thread Jeff Roberson
On Sun, 30 Sep 2007, Peter Grehan wrote: Hi Jeff, ARM has it: .. Did you verify that it works? No. Olivier would be able to answer though. If you can test ULE on UP arm/powerpc I'd appreciate it. Then we could add them to the set of supported architectures in ULE. Does arm support

Re: cvs commit: src/sys/kern sched_ule.c

2007-09-30 Thread Peter Grehan
Hi Jeff, ARM has it: .. Did you verify that it works? No. Olivier would be able to answer though. Does arm support SMP? It looks like it does not? Don't think so. For UP it doesn't need to wait for blocked lock to clear but it does need to set td_lock. On UP there are no special s

Re: cvs commit: src/sys/kern sched_ule.c

2007-09-30 Thread Ben Kaduk
On 9/30/07, Jeff Roberson <[EMAIL PROTECTED]> wrote: > On Sat, 29 Sep 2007, Kevin Oberman wrote: > > >> Date: Sat, 29 Sep 2007 23:25:08 -0400 > >> From: "Ben Kaduk" <[EMAIL PROTECTED]> > >> Sender: [EMAIL PROTECTED] > >> > >> On 9/29/07, Garance A Drosehn <[EMAIL PROTECTED]> wrote: [snip] > >>> > >

Re: cvs commit: src/sys/kern sched_ule.c

2007-09-30 Thread Jeff Roberson
On Sat, 29 Sep 2007, Kevin Oberman wrote: Date: Sat, 29 Sep 2007 23:25:08 -0400 From: "Ben Kaduk" <[EMAIL PROTECTED]> Sender: [EMAIL PROTECTED] On 9/29/07, Garance A Drosehn <[EMAIL PROTECTED]> wrote: At 4:39 PM + 9/27/07, Jeff Roberson wrote: Modified files: sys/kern s

Re: cvs commit: src/sys/kern sched_ule.c

2007-09-30 Thread Jeff Roberson
On Thu, 27 Sep 2007, Peter Grehan wrote: - Assert that we're not trying to compile ULE on an unsupported architecture. To date, I believe only i386 and amd64 have implemented the third cpu switch argument required. ARM has it: http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/arm/ar

Re: cvs commit: src/sys/kern sched_ule.c

2007-09-29 Thread Kevin Oberman
> Date: Sat, 29 Sep 2007 23:25:08 -0400 > From: "Ben Kaduk" <[EMAIL PROTECTED]> > Sender: [EMAIL PROTECTED] > > On 9/29/07, Garance A Drosehn <[EMAIL PROTECTED]> wrote: > > At 4:39 PM + 9/27/07, Jeff Roberson wrote: > > > > > > Modified files: > > > sys/kern sched_ule.c > > >

Re: cvs commit: src/sys/kern sched_ule.c

2007-09-29 Thread Ben Kaduk
On 9/29/07, Garance A Drosehn <[EMAIL PROTECTED]> wrote: > At 4:39 PM + 9/27/07, Jeff Roberson wrote: > > > > Modified files: > > sys/kern sched_ule.c > > Log: > >- ... > >- Assert that we're not trying to compile ULE on an unsupported > > architecture. To date

Re: cvs commit: src/sys/kern sched_ule.c

2007-09-29 Thread Garance A Drosehn
At 4:39 PM + 9/27/07, Jeff Roberson wrote: Modified files: sys/kern sched_ule.c Log: - ... - Assert that we're not trying to compile ULE on an unsupported architecture. To date, I believe only i386 and amd64 have implemented the third cpu switch argument

Re: cvs commit: src/sys/kern sched_ule.c

2007-09-27 Thread Peter Grehan
- Assert that we're not trying to compile ULE on an unsupported architecture. To date, I believe only i386 and amd64 have implemented the third cpu switch argument required. ARM has it: http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/arm/arm/swtch.S?r1=1.20#rev1.20 PPC doesn't, t

Re: cvs commit: src/sys/kern sched_ule.c

2007-09-24 Thread Alexey Dokuchaev
On Sat, Sep 22, 2007 at 02:20:14AM +, Jeff Roberson wrote: > We may also want to consider never allowing positively niced > processes to become interactive at all. net-p2p/linuxdcpp AFAIK renices itself up to 1 yet still being, naturally, an interactive app. ./danfe __

Re: cvs commit: src/sys/kern sched_ule.c

2007-07-18 Thread Joao Barros
On 7/17/07, Jeff Roberson <[EMAIL PROTECTED]> wrote: jeff2007-07-17 22:53:24 UTC FreeBSD src repository Modified files: sys/kern sched_ule.c Log: ULE 3.0: Fine grain scheduler locking and affinity improvements. This has been in development for over 6 months a

Re: cvs commit: src/sys/kern sched_ule.c

2007-03-17 Thread M. Warner Losh
In message: <[EMAIL PROTECTED]> Jeff Roberson <[EMAIL PROTECTED]> writes: : : On Sat, 17 Mar 2007, Max Laier wrote: : : > On Saturday 17 March 2007 20:09, Jeff Roberson wrote: : >> Any language lawyers care to comment on this? : > : > I find this strange. According to the spec "(Decr

Re: cvs commit: src/sys/kern sched_ule.c

2007-03-17 Thread Bruce Evans
On Sat, 17 Mar 2007, Jeff Roberson wrote: Any language lawyers care to comment on this? Don't all C programmers know this? :) On Sat, 17 Mar 2007, Jeff Roberson wrote: jeff2007-03-17 18:13:33 UTC FreeBSD src repository Modified files: sys/kern sched_ule.c Log:

Re: cvs commit: src/sys/kern sched_ule.c

2007-03-17 Thread Christoph Mallon
Max Laier schrieb: On Saturday 17 March 2007 20:09, Jeff Roberson wrote: Any language lawyers care to comment on this? I find this strange. According to the spec "(Decrementing is equivalent to subtracting 1.)", but "pri = --pri % RQ_NQS;" will behave like you expect, while "pri = (pri - 1)

Re: cvs commit: src/sys/kern sched_ule.c

2007-03-17 Thread Jeff Roberson
On Sat, 17 Mar 2007, Max Laier wrote: On Saturday 17 March 2007 20:09, Jeff Roberson wrote: Any language lawyers care to comment on this? I find this strange. According to the spec "(Decrementing is equivalent to subtracting 1.)", but "pri = --pri % RQ_NQS;" will behave like you expect, whi

Re: cvs commit: src/sys/kern sched_ule.c

2007-03-17 Thread Max Laier
On Saturday 17 March 2007 20:09, Jeff Roberson wrote: > Any language lawyers care to comment on this? I find this strange. According to the spec "(Decrementing is equivalent to subtracting 1.)", but "pri = --pri % RQ_NQS;" will behave like you expect, while "pri = (pri - 1) % RQ_NQS;" clearly d

Re: cvs commit: src/sys/kern sched_ule.c

2007-03-17 Thread Jeff Roberson
Any language lawyers care to comment on this? On Sat, 17 Mar 2007, Jeff Roberson wrote: jeff2007-03-17 18:13:33 UTC FreeBSD src repository Modified files: sys/kern sched_ule.c Log: - Cast the intermediate value in priority computtion back down to unsigned char.

Re: cvs commit: src/sys/kern sched_ule.c

2007-01-26 Thread Alfred Perlstein
* Alfred Perlstein <[EMAIL PROTECTED]> [070126 14:34] wrote: > * Jeff Roberson <[EMAIL PROTECTED]> [070125 19:47] wrote: > > > > On Thu, 25 Jan 2007, Jeff Roberson wrote: > > > > >jeff2007-01-25 23:52:00 UTC > > > > > > FreeBSD src repository > > > > > > Modified files: > > > sys/kern

Re: cvs commit: src/sys/kern sched_ule.c

2007-01-26 Thread Alfred Perlstein
* Jeff Roberson <[EMAIL PROTECTED]> [070125 19:47] wrote: > > On Thu, 25 Jan 2007, Jeff Roberson wrote: > > >jeff2007-01-25 23:52:00 UTC > > > > FreeBSD src repository > > > > Modified files: > > sys/kern sched_ule.c > > Log: > > - Implement much more intelligent ipi sendin

Re: cvs commit: src/sys/kern sched_ule.c

2007-01-25 Thread Jeff Roberson
On Thu, 25 Jan 2007, Jeff Roberson wrote: jeff2007-01-25 23:52:00 UTC FreeBSD src repository Modified files: sys/kern sched_ule.c Log: - Implement much more intelligent ipi sending. This algorithm tries to minimize IPIs and rescheduling when scheduling like ta

Re: cvs commit: src/sys/kern sched_ule.c

2007-01-24 Thread Jeff Roberson
On Wed, 24 Jan 2007, David Xu wrote: Jeff Roberson wrote: On Wed, 24 Jan 2007, David Xu wrote: Jeff Roberson wrote: if idlethread is preempted, who will clear its idle bit in idle_cpus_mask ? idle_cpus_mask was broken before for all schedulers. This commit didn't change that. ULE doe

Re: cvs commit: src/sys/kern sched_ule.c

2007-01-23 Thread David Xu
Jeff Roberson wrote: On Wed, 24 Jan 2007, David Xu wrote: Jeff Roberson wrote: if idlethread is preempted, who will clear its idle bit in idle_cpus_mask ? idle_cpus_mask was broken before for all schedulers. This commit didn't change that. ULE doesn't use idle_cpus_mask and it's idlet

Re: cvs commit: src/sys/kern sched_ule.c

2007-01-23 Thread Jeff Roberson
On Wed, 24 Jan 2007, David Xu wrote: Jeff Roberson wrote: if idlethread is preempted, who will clear its idle bit in idle_cpus_mask ? idle_cpus_mask was broken before for all schedulers. This commit didn't change that. ULE doesn't use idle_cpus_mask and it's idlethread doesn't set or cl

Re: cvs commit: src/sys/kern sched_ule.c

2007-01-23 Thread David Xu
Jeff Roberson wrote: if idlethread is preempted, who will clear its idle bit in idle_cpus_mask ? idle_cpus_mask was broken before for all schedulers. This commit didn't change that. ULE doesn't use idle_cpus_mask and it's idlethread doesn't set or clear it. The idle thread for the other

Re: cvs commit: src/sys/kern sched_ule.c

2007-01-23 Thread Jeff Roberson
On Wed, 24 Jan 2007, David Xu wrote: On Tuesday 23 January 2007 16:50, Jeff Roberson wrote: jeff2007-01-23 08:50:34 UTC FreeBSD src repository Modified files: sys/kern sched_ule.c Log: - Catch up to setrunqueue/choosethread/etc. api changes. - Define our

Re: cvs commit: src/sys/kern sched_ule.c

2007-01-23 Thread David Xu
On Tuesday 23 January 2007 16:50, Jeff Roberson wrote: > jeff2007-01-23 08:50:34 UTC > > FreeBSD src repository > > Modified files: > sys/kern sched_ule.c > Log: >- Catch up to setrunqueue/choosethread/etc. api changes. >- Define our own maybe_preempt() as sche

Re: cvs commit: src/sys/kern sched_ule.c

2007-01-20 Thread Robert Watson
On Sat, 20 Jan 2007, Jeff Roberson wrote: jeff2007-01-20 09:03:43 UTC FreeBSD src repository Modified files: sys/kern sched_ule.c Log: - In tdq_transfer() always set NEEDRESCHED when necessary regardless of the ipi settings. If NEEDRESCHED is set and an ipi is