|
From: | Kon Lovett |
Subject: | Chicken performance (was Re: [Chicken-users] Re: Set! question - long example) |
Date: | Tue, 8 May 2007 11:15:25 -0700 |
On May 8, 2007, at 5:34 AM, felix winkelmann wrote:
On 5/8/07, William Ramsay <address@hidden> wrote:PS. How does adding a SRFI to your code affect performance?You mean, as in "(require-extension srfi-1)"? It's compiled code as well, so it should be acceptable. If you need maximum performance, it may be worthwhile to include the source in your program and declare them hidden, to allow more inlining and constant folding, but only do that if you are really desperate.
Compiling unsafe also helps. I tend to do the following:- For private but shared procedures the file is compiled unsafe (-O3) & inlined, with very unlikely global variable names.
- For public procedures with arguments that are explicitly checked I add (no-procedure-checks) & (no-bound-checks) declarations to the file, often with inlining.
- Otherwise the (no-procedure-checks-for-usual-bindings) declaration at a minimum.
Note that all of the above is conditional during development. Also checkout the 'crunch' egg for a statically typed Scheme subset. Best Wishes, Kon
cheers, felix _______________________________________________ Chicken-users mailing list address@hidden http://lists.nongnu.org/mailman/listinfo/chicken-users
Best Wishes, Kon
[Prev in Thread] | Current Thread | [Next in Thread] |