[Vm-dev] Re: GCC 4.1
John M McIntosh
johnmci at smalltalkconsulting.com
Mon Jan 15 15:22:23 UTC 2007
I think because of my work fiddling on gcc parms/registers or not for
macintel that Ian had incorporated those
changes into the unix vm build last dec which affects the compare of
although I've not checked to see if that applies to outside of the
darwin build logic.
For the bytecode and send/sec the difference is quite large. However
which gcc version you use plus options plus
hardware can make quite a difference. The clue to the better rates
is if the assembler to support the first couple of byte codes
in the interpret() loop looks like below. Poorer optimizations can
have 12 or more instructions, verus the more optimum 9.
after the jump tables
you should see something like:
addl $1, %esi
movzbl (%esi), %ebx
addl $4, %edi
movl _foo, %eax
movl 84(%eax), %eax
movl 4(%eax), %eax
movl %eax, (%edi)
movl 512(%esp,%ebx,4), %eax
On Jan 15, 2007, at 2:37 AM, goran at krampe.se wrote:
> Hi Ian and all!
> "Philippe Marschall" <philippe.marschall at gmail.com> wrote:
>> 2007/1/15, goran at krampe.se <goran at krampe.se>:
>>> My guess is that the combo you compiled (3.9-9, 4.0.3) that
>>> turned slow
>>> somehow failed to get gnuified. Just a wild guess.
>> Wasn't me. It's the stock from squeakvm.org
> Ah... Ian, could you perhaps check the performance of the binary 3.9-9
> VM on squeakvm.org? As per this posting:
> I presume this is the intel binary we are talking about. Did something
> go wrong with gnuify or so?
> I don't have a box handy to look into this right now.
> regards, Göran
John M. McIntosh <johnmci at smalltalkconsulting.com>
Corporate Smalltalk Consulting Ltd. http://www.smalltalkconsulting.com
More information about the Vm-dev