Discussion:
[m-dev.] Report on --inline-linear-tail-sccs
Paul Bone
2017-04-12 12:53:57 UTC
Permalink
I tried the new --inline-linear-tail-sccs option on Prince and got the
following results.

I used the new tail call warnings to count the number of calls that were
optimised away, which only works in the low level C grade. However the
optimisation is most relevant for the high level C grade. So the
performance figures are generated there. I used GC_MARKERS=1 to make the
scores a bit more reliable. I used the big_table benchmark.


w/o w (0 extra) w (1 extra)
No. Mutual calls: 720 127 721 ( A bug? )
Binary size Identical. (didn't test)
.text size (bytes) 12,686,779 12,687,099 (didn't test)
User time 11.2 11.2 (didn't test)

I cannot yet distinguish any performance difference from noise. Which is to
be expected. The number of mutual call sites was reduced more than I
expected, a good sign for robustness.

Thanks.
--
Paul Bone
http://paul.bone.id.au
Michael Day
2017-04-13 04:03:35 UTC
Permalink
Hi Paul,
Post by Paul Bone
w/o w (0 extra) w (1 extra)
No. Mutual calls: 720 127 721 ( A bug? )
What's the w 1 extra about?

Michael
--
Prince: Print with CSS!
http://www.princexml.com
Paul Bone
2017-04-13 04:37:16 UTC
Permalink
Post by Michael Day
Hi Paul,
Post by Paul Bone
w/o w (0 extra) w (1 extra)
No. Mutual calls: 720 127 721 ( A bug? )
What's the w 1 extra about?
Zoltan added an extra option for this optimisation. It will inline N extra
call sites (in this case 1). It makes the optimisation more applicable at
the cost of increasing the code size.

w is for "with" as in "with the optimisation enabled".

Cheers.
--
Paul Bone
http://paul.bone.id.au
Loading...