Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 6 Apr 2006 13:11:29 -0400
From:      John Baldwin <jhb@freebsd.org>
To:        Julian Elischer <julian@elischer.org>
Cc:        Luigi Rizzo <rizzo@icir.org>, freebsd-current@freebsd.org
Subject:   Re: Interesting data on network interrupt - part II
Message-ID:  <200604061311.31632.jhb@freebsd.org>
In-Reply-To: <4434394F.8020105@elischer.org>
References:  <20060405003358.GA83600@tin.it> <200604051638.59800.jhb@freebsd.org> <4434394F.8020105@elischer.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wednesday 05 April 2006 17:40, Julian Elischer wrote:
> John Baldwin wrote:
> 
> >On Tuesday 04 April 2006 20:33, Paolo Pisati wrote:
> >  
> >
> >>Hi, 
> >>
> >>i updated my work on interrupt profiling with sone new
> >>experiments.
> >>
> >>In total we have now:
> >>
> >>-FreeBSD 4 PIC (no asm part)
> >>-FreeBSD 7 APIC 
> >>-FreeBSD 7 PIC
> >>-FreeBSD 7 PREE APIC
> >>-FreeBSD 7 APIC JHB
> >>
> >>Some quick comments:
> >>
> >>-PIC is much slower in masking interrupt (7k in PIC vs 3k in APIC)
> >>-PREE let new thread save less than 500 ticks of 'queue' while 
> >> preempted threads are often resumed after a lot
> >>-JHB patch shaved 2.5k ticks in interrupt masking op
> >>
> >>For graphs, data and more comments:
> >>
> >>http://mercurio.sm.dsi.unimi.it/~pisati/interrupt/
> >>    
> >>
> >
> >I'll commit the patch then. :)  One thing you might try to do to better
> >measure the effects of preemption is to generate kernel work so that
> >the bge interrupts occur while the current thread is in the kernel
> >rather than in userland.  In that case preemption should provide much
> >lower latency for interrupt handlers, as w/o preemption, an interrupt
> >in kernel mode won't run the ithread until either curthread blocks or
> >returns to userland.
> >  
> >
> 
> it looks a bit like the preempted threads shuld be put onto a stack of 
> threads to resume
> so that when the pre-empter finishes, teh previosly active thread is 
> resumed.
> Basically, a preempted thread should be put at the HEAD of it's run 
> queue, and not the tail..

You changed the scheduler to already do that.

-- 
John Baldwin <jhb@FreeBSD.org>  <><  http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve"  =  http://www.FreeBSD.org



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200604061311.31632.jhb>