On Mon, 2014-12-15 at 11:34 -0800, Josh Stone wrote:
On 12/14/2014 02:18 PM, Mark Wielaard wrote:
> This finally adds bounds checking to get_[us]leb128 (with two exceptions,
> see below). The performance results are a little puzzling, so I hope
> Josh can take a look how things are for him.
>
> On one system, with 3.10.0-123.13.1.el7.x86_64, varlocs -k slows down:
> 0.160: 53.65
> master: 52.24
> mjw/pending: 56.35
>
> But on another, with 3.17.4-301.fc21.x86_64, varlocs -k speeds up:
> 0.160: 69.41
> master: 69.03
> mjw/pending: 68.29
>
> Output is the same between versions for each system.
These are probably different compilers too, right? So I suspect the
newer compiler just noticed an optimization opportunity.
Yes they are. The first is 4.8.2, the second is 4.9.2.
If I run the tests with the binary of the second on the first system it
is a little faster. From slightly higher than 55 seconds to slightly
lower than 53 seconds. So GCC 4.9 does indeed produce a little faster
code compared to GCC 4.8.
Cheers,
Mark