Code size and cache thrash
Posted Feb 21, 2008 21:18 UTC (Thu) by vaurora
In reply to: The Kernel Hacker's Bookshelf: Synthesis: An Efficient Implementation of Fundamental Operating Systems Services
Parent article: KHB: Synthesis: An Efficient Implementation of Fundamental Operating Systems Services
The issue of code size and instruction cache usage is a very important one - one I didn't have space to talk about in this article, but which is addressed in the original paper/dissertation/book. The executive summary is that if you only do inline code generation when it makes sense and share code otherwise, the code size is fine. In fact, for certain types of functions, the code size is reduced by inlining the code directly instead of setting up all the arguments and calling the shared function code. (gcc can do this statically at compile time, Synthesis can do it at run-time too.)
For more detail, see section 3.4.1. I feel like I read another section addressing this but I can't find it right now...
to post comments)