Hi Holger,
On Sun, Jul 13, 2008 at 06:00:37PM +0200, holger krekel wrote:
> would be good to rename the --faassen option sometime soon
> Martijn asked us multiple times already for it. What about
> "--cheetah" or "--falcon"? other suggestions?
"--allopts" is already an alias for it, and I changed the docs
to mention it instead of --faassen.
I also came up with some suggestion for the optimization options.
What about introducing the --opt translation option (applying to all
translations, not just targetpypystandalone) with the following possible
values, which roughly correspond to the scheme used by gcc:
--opt=0: all backendopt and other optimizations off; gc=boehm
--opt=1: default backendopts, low inlining threadhold; gc=boehm
--opt=size: same as opt=1 + remove_asserts
--opt=mem: same as opt=size + gc=marknsweep (or some future low-ram gc)
--opt=2: default backendopts; smallfuncset=5; gc=hybrid
--opt=3: same as opt=2 + remove_asserts
During a PyPy translation, we would control which pypy-specific options
to use with the same scheme: a --pypyopt option (whose value is by
default equal to the --opt option in order to reduce surprizes)
according to a table like the following one:
pypyopt option
===================================
2 3 ("objspace.opcodes.CALL_LIKELY_BUILTIN", True),
2 3 ("objspace.opcodes.CALL_METHOD", True),
3 ("translation.profopt", "..."),
2 3 ("objspace.std.withmultidict", True),
2 3 ("objspace.std.withshadowtracking", True),
mem ("objspace.std.withsmallint", True),
mem 2 3 ("objspace.std.withrangelist", True),
2 3 ("objspace.std.withmethodcache", True),
mem 2 3 ("objspace.std.withprebuiltchar", True),
2 3 ("objspace.std.builtinshortcut", True),
2 3 ("objspace.std.optimized_list_getitem", True),
2 3 ("objspace.std.getattributeshortcut", True),
mem ("objspace.std.withsharingdict", True),
So this would generalize the --faassen and --allopts options. The
fastest results would be obtained with --opt=3, --opt=size would try to
minimize the executable size, --opt=mem would try to minimize run-time
RAM usage.
A bientot,
Armin.
_______________________________________________
[email protected]
http://codespeak.net/mailman/listinfo/pypy-dev