[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <47539030.10600@argo.co.il>
Date: Mon, 03 Dec 2007 07:12:16 +0200
From: Avi Kivity <avi@...o.co.il>
To: Andi Kleen <andi@...stfloor.org>
CC: Kyle Moffett <mrmacman_g4@....com>,
Lennart Sorensen <lsorense@...lub.uwaterloo.ca>,
Ben Crowhurst <Ben.Crowhurst@...llatravel.co.uk>,
linux-kernel@...r.kernel.org
Subject: Re: Kernel Development & Objective-C
Andi Kleen wrote:
> Avi Kivity <avi@...o.co.il> writes:
>
>> [I really doubt there are that many of these; syscall
>> entry/dispatch/exit, interrupt dispatch, context switch, what else?]
>>
>
> Networking, block IO, page fault, ... But only the fast paths in these
> cases. A lot of the kernel is slow path code and could probably
> be written even in an interpreted language without much trouble.
>
>
Even these (with the exception of the page fault path) are hardly "we
care about a single instruction" material suggested above. Even with a
million packets per second per core (does such a setup actually exist?)
You have a few thousand cycles per packet. For block you'd need around
5,000 disks per core to reach such rates.
The real benefits aren't in keeping close to the metal, but in high
level optimizations. Ironically, these are easier when the code is a
little more abstracted. You can add quite a lot of instructions if it
allows you not to do some of the I/O at all.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists