pbc_frozen_strings1 branch (was Re: Fwd: PBC, Const Tables, and STRINGs)
chromatic
chromatic at wgz.org
Sun May 2 20:50:32 UTC 2010
On Saturday 01 May 2010 at 20:43, Peter Lobsinger wrote:
> This is more of a quick and dirty approach, the correct approach being
> a restructuring and cleaning of IMCC. This allows us to determine the
> value of this optimization and reap some benefits before engaging in
> the higher-cost right answer.
On trunk, the parrot-nqp executable is 783,158 bytes large. On the branch,
it's 668,470 bytes large -- 14.644% smaller. The PBC files are 740,720 and
628,800 bytes, respectively (15.110% smaller on trunk).
Startup time is 68,137,627 versus 61,625,420 instructions, as measured by
Callgrind. That makes the branch 9.557% faster.
The trunk version thaws 26,312 unique STRINGs from PBC. The branch version
thaws 9,545. That's 63.724% fewer STRINGs on the branch.
These numbers should hold for other programs which use NQP, if not improve
slightly. I don't expect such dramatic improvements for runtime costs, with
the caveat that the less memory a program uses, the better its cache
performance and the less work the GC must do.
-- c
More information about the parrot-dev
mailing list