|Summary:||Rearrange opcode bodies in VM/Machine.cpp for optimal instruction cache performance|
|Product:||WebKit||Reporter:||Cameron Zwarich (cpst) <zwarich>|
|Severity:||Normal||CC:||barraclough, emacemac7, ggaren, mjs, oliver|
|Version:||528+ (Nightly build)|
Description Cameron Zwarich (cpst) 2008-06-11 18:33:14 PDT
There is some anecdotal evidence to suggest that the order of the opcode bodies affects performance, especially when we add new opcodes. Given that we will be spending a lot of effort on fusing opcodes together in the coming weeks, we should investigate this further. In particular, we should see if reordering the opcode bodies can increase instruction cache coherency. There are algorithms for reordering of basic blocks based on profiling information, so we might be able to use some of the recent instrumentation and one of these algorithms to suggest a good placement. However, our situation is a bit different, so I don't know how it will work out.
Comment 1 Gavin Barraclough 2012-09-06 23:43:52 PDT
Machine.cpp no longer exists, the old interpreter is not long for this world.