On Fri, Sep 27, 2013 at 05:51:33PM -0400, Bob Arning wrote: > I thought I'd extend the test to an older squeak&vm > > ---interpreter vm (3.8.12) squeak 3.2 --------- > Float compareTiming: 1 to: 1.0 ==> 496 > Float compareTiming: 1.0 to: 1.0 ==> 761 > Float compareTiming: 1 to: 1 ==> 225 > Float compareTiming: 1.0 to: 1 ==> 494 > ---interpreter vm (5.7.4.1) squeak 4.5 --------- > Float compareTiming: 1 to: 1.0 ==> 719 > Float compareTiming: 1.0 to: 1.0 ==> 991 > Float compareTiming: 1 to: 1 ==> 312 > Float compareTiming: 1.0 to: 1 ==> 686 > > The old one wins. > > Cheers, > Bob (CC to vm-dev list) I get different results on my Linux PC. - Squeak 3.2 with interpreter VM compiled by Ian, circa 2006: Float compareTiming: 1 to: 1.0 ==> 1041 Float compareTiming: 1.0 to: 1.0 ==> 1432 Float compareTiming: 1 to: 1 ==> 390 Float compareTiming: 1.0 to: 1 ==> 1108 - Squeak 4.4 with Ian's 4.4.7-2357 VM, circa 2012: Float compareTiming: 1 to: 1.0 ==> 840 Float compareTiming: 1.0 to: 1.0 ==> 1176 Float compareTiming: 1 to: 1 ==> 420 Float compareTiming: 1.0 to: 1 ==> 836 - Squeak 4.4 with my locally compiled 4.12.6.2787 VM (because I cannot use Ian's 4.10.2.2614 from squeakvm.org due to a Linux glib compatibility problem for the outdated Linux on my PC): Float compareTiming: 1 to: 1.0 ==> 782 Float compareTiming: 1.0 to: 1.0 ==> 1077 Float compareTiming: 1 to: 1 ==> 461 Float compareTiming: 1.0 to: 1 ==> 789 Perhaps there are other factors on the Mac platform (compiler changes, etc) that are affecting the performance. Could you try Squeak 4.4 with Ian's unix Mac VM from squeakvm.org and see if you get different results? http://squeakvm.org/unix/release/Squeak-4.10.2.2614-darwin10.8.0_i386.tar.gz Dave > On 9/27/13 2:12 PM, Bob Arning wrote: > >Following up Herbert's question, I wrote: > > > >compareTiming: a to: b > >" > >---interpreter vm (5.7.4.1) --------- > >Float compareTiming: 1 to: 1.0 ==> 719 > >Float compareTiming: 1.0 to: 1.0 ==> 991 > >Float compareTiming: 1 to: 1 ==> 312 > >Float compareTiming: 1.0 to: 1 ==> 686 > >---cog vm (2749)--------- > >*Float compareTiming: 1 to: 1.0 ==> 28162* > >Float compareTiming: 1.0 to: 1.0 ==> 148 > >Float compareTiming: 1 to: 1 ==> 97 > >Float compareTiming: 1.0 to: 1 ==> 179 > >" > > > >^[1000000 timesRepeat: [ > > a < b. > > a < b. > > a < b. > > a < b. > > a < b. > > a < b. > > a < b. > > a < b. > > a < b. > > a < b. > > a < b. > > a < b. > > a < b. > > a < b. > > a < b. > > a < b. > > a < b. > > a < b. > > a < b. > > a < b. > > a < b. > > a < b. > > a < b. > > a < b. > > a < b. > > a < b. > > a < b. > > a < b. > > a < b. > > a < b. > >]] timeToRun > > > >So, some obvious questions: > >- in the interpreter vm, why is comparing two floats slower that an > >integer and a float? > >- what's up with Cog? Three tests are faster by the expected ratio and > >one took a real dive. > > > >Also, the profiler Herbert used could use some attention to the > >NewFloat printing: > > > >99.9 (898,069) Multiline1 doOneStep: > >*77.30000000000001* (694,902) Multiline1 [HkTestLine] doTests: > > 73.8 (663,438) HkRunin [HkTestStation] canStartNextTest: > > > >Cheers, > >Bob > > > > |
Free forum by Nabble | Edit this page |