-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On 07/02/16 00:56, Dominique Pell? wrote: > I'm curious about the outcome on SQLite benchmarks.
About a year ago I tried them out on some tight code (non-SQLite) that absolutely had to use less CPU time. I couldn't get them to make any difference outside the bounds of measurement error. Since SQLite has lots of "tight code" places, the instrumentation would have to help in most of them to make a difference (Amdahl's law). Taking a step back, the reasons why it had no measureable effect are simple. The processors are getting better at branch prediction, better at mitigating mispredicted branches, getting even faster compared to memory. The compilers are getting better all the time too at the same kind of things. It takes a more pervasive effort (in the general case) to see performance improvements, which is what PGO does. Note that while it provides branch information, it also provides far more useful information about what gets called and how much so that the entire binary can be re-arranged, such as putting hot functions in the same pages reducing cache pressure which will have a more measureable effect. Roger -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iEYEARECAAYFAla4DB4ACgkQmOOfHg372QRzyQCg05Z2zyOjqJ58q0jx367wQhqo +SAAn1AeeydFIdwvJRwh1P+MrSEX1Pkd =4nwe -----END PGP SIGNATURE-----