4 ms·
I submitted a bunch of stream of consciousness JIT and related posts today, if this interests you, check out these too: Basic JIT: https://news.ycombinator.com
by codezero 8y ago
I submitted a bunch of stream of consciousness JIT and related posts today, if this interests you, check out these too:
Basic JIT: https://news.ycombinator.com/item?id=18708410 https://news.ycombinator.com/item?id=18708410 (even simpler version of the above post)
Cult of the Bound Variable: https://news.ycombinator.com/item?id=18708366 https://news.ycombinator.com/item?id=18708366 (just pure insanity [pdf])
- huntie 8y agoDo you know of anything that goes over tracing JIT?
- codezero 8y agoNope. Not yet.
- lukego 8y agoTangentially, here is one way to think about how tracing JIT works: 1. Set a breakpoint at the start of a loop that you want to compile. 2. Single-step one iteration of the loop, stepping down into every function call, logging everything that the code does. 3. Compile the log into native code. Now any time you need to run this loop again, in the same way, you just branch to the generated code to efficiently "replay" the log of how it ran before. The rest, as they say, is details...
- MaxBarraclough 8y agoNot sure if you were thinking specifically of blog-posts, but there's a research paper on converting Java HotSpot's 'client' JIT to tracing. (Apparently they managed it!) It gives a description of what 'tracing JIT' means. Perhaps not as approachable as a blog post but it's not too bad. http://www.ssw.jku.at/Research/Papers/Haeubl11/ http://www.ssw.jku.at/Research/Papers/Haeubl11/ (There's a link to the PDF at the bottom which seems to sometimes bypass the ACM paywall, for whatever reason.)