Hi, I would like to see some indication of Squeak going faster with Exupery under Windows. I folllowed the instructions at http://minnow.cc.gatech.edu/squeak/3945.
- downloaded the Windows VM and replaced my squeak.exe. F2 | Version Information reports "Squeak 3.7.1 (release) from Sep 18 2006". Is this right? - I then installed Exupery-wbk.206 from SqueakMap. Then ran the ExuperyStoryTests. All but two passed. - Still, I was eager so I did "0 tinyBenchmarks". Unfortunately I got the same #'s I got with another image without Exupery. I tried it a couple of times. - I then loaded the Exupery from SqueakMap and reran the tests. Same two failed. Ah, I need CommandShell and GraphViz loaded! - So I loaded CommandShell to try making those other tests pass. (When it reached that test it gave a bunch of errors saying it was going to stdout (looked like a mixed Unix/Windows filename), oh well). I didn't install GraphViz, I just don't think this is the problem; I am sure I am doing something else wrong. Any suggestions are appreciated.. - Chris _______________________________________________ Exupery mailing list [hidden email] http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/exupery |
On Thu, Oct 05, 2006 at 07:38:07PM -0700, Chris Muller wrote:
> - I then loaded the Exupery from SqueakMap and reran the tests. Same two failed. Ah, I need CommandShell and GraphViz loaded! > - So I loaded CommandShell to try making those other tests pass. (When it reached that test it gave a bunch of errors saying it was going to stdout (looked like a mixed Unix/Windows filename), oh well). GraphViz makes use of OSProcess/CommandShell on Unix systems. On Windows, it just reads and writes temporary files and does not require OSProcess/CommandShell. Perhaps you are looking at some test cases that were written on a Unix (or OS X) system but may not run on Windows. Dave _______________________________________________ Exupery mailing list [hidden email] http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/exupery |
In reply to this post by Chris Muller
Hi Chris, If the tests are passing (ignoring those that rely on GraphViz) then it's working. ExuperyBenchmarks new run Which on my machine produces the following output on the transcript: arithmaticLoopBenchmark 1395 compiled 91 ratio: 15.330 bytecodeBenchmark 2132 compiled 456 ratio: 4.675 sendBenchmark 1588 compiled 684 ratio: 2.322 doLoopsBenchmark 1086 compiled 649 ratio: 1.673 largeExplorers 337 compiled 366 ratio: 0.921 compilerBenchmark 794 compiled 767 ratio: 1.035 Cumulative Time 4241.294 compiled 1389.046 ratio 3.053 Only the latest versions from SqueakSource will show an improvement for the compilerBenchmark. The current release is trying to provide an improvment for both the compiler benchmark and the largeExplorers benchmark. Both are using profile driven compilation. compilerBenchmark is only spending 5% of it's time in native code and native code support routines. Only 1.9% is actually in native code. There's room to improve both by tuning the support code and by improving the profiler. Will run the benchmark suite. That should give you an idea about how Exupery is performing. The problem you encountered was you need to tell Exupery to compile methods, it does not compile automatically yet. This is to make it easier to debug. In the latest development builds try something like: ExuperyProfiler optimise: [ExuperyBenchmarks new compilerBenchmark]. ExuperyBenchmarks new compilerBenchmark Exupery dynamicallyInline. Which is what the last two benchmarks call. #optimise: profiles the block then compiles the most promising methods. #dynamicallyInline reads the polymorphic inline caches then dynamically inlines and compiles any primitives that were called (and Exupery knows how to compile). Exupery compileMethod: #benchmark class: SmallInteger inlining: {{43. Array}. {62. Array}}. Exupery compileMethod: #benchFib class: SmallInteger. Will manually compile the methods used by the bytecode benchmark. Exupery compiles a version of each method for each individual receiver. David calls this method copy-down. At the moment, except for the #at: and #at:put: primitives which are specialised for each receiver it's probably not providing much value in Exupery. Bryce _______________________________________________ Exupery mailing list [hidden email] http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/exupery |
Free forum by Nabble | Edit this page |