On Monday 18 April 2005 14:44, Daniel Egger wrote: > On 18.04.2005, at 11:51, Ian Rogers wrote: > > I'm not sure if you can get GCC to generate code sequences like this, > > but you probably at least need to use the -fprofile-generate and > > -fprofile-use options > > http://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html > > Feedback optimisation (FDO) will not work for two reasons: > a) qemu itself is something like a realtime compiler so FDO > will only speed up the compiler but not the generated code > b) FDO will only provide speed boosts if the feedback phase > has a chance to analyse a representative work pattern that > is hopefully also repetitive > > After all FDO is mostly about making a tradeoff size/speed > and rearranging code (mostly branches) to avoid branch > mispredictions of the CPU.
IMHO Profile feedback (in fact any compiler optimizations) are unlikely to provide any benefit for qemu itself. However profile feedback can be useful once we start making the dynamic translator smarter. In particular profile information can be used to determine how hard to try optimizing the generated code. For code that is executed rarely we want to generate it as quickly as possible, for code that is executed may times we can afford the extra overhead to make the resulting code faster. I've seen measuremets that indicate most code is either executed once, or is executed many many times. With current qemu it doesn't make all that much difference as we only have the quick-and-dumb code generator. Paul _______________________________________________ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel