3 ms·
> Take the linux kernel, what part is the 10% that needs optimization first? Well syscall entry/exit would be a contender, but those are already in hand-writte
by tomsmeding 9y ago
> Take the linux kernel, what part is the 10% that needs optimization first?
Well syscall entry/exit would be a contender, but those are already in hand-written assembly anyway, so that doesn't count.
Then I'd go for the read()/write() syscalls; I bet (not verified) that they're called really often in comparison to the other ones, with all the file/socket/IPC I/O that's going on.
I'm in the same camp about language choice though; there's lots of place for slower and easier languages, like Python in the role of gluing together high-performance C code, but there are still also lots of scenarios where an across-the-board performant language seems a good fit. Compilers spring to mind, but they are even an extreme example.
- Retra 9y agoAren't read()/write() going to be waiting on memory most of the time? Wouldn't you rather have faster context switching first?
- tomsmeding 9y agoVery true, didn't think of that one.