[Vm-dev] CogVM performance
Henrik Johansen
henrik.s.johansen at veloxit.no
Wed May 20 12:41:45 UTC 2015
Could it be related to the change in 1166 to use XCHG between register/mem locations instead of a MOV to a (now unavailable) temp register in genPushRegisterArgsForNumArgs:?
According to http://www.agner.org/optimize/instruction_tables.pdf <http://www.agner.org/optimize/instruction_tables.pdf> , XCHG with m/r operands has major penalties on most platforms compared to m/r MOV, which would be a problem if it's used for a large percent of sends...
Cheers,
Henry
> On 20 May 2015, at 3:07 , David T. Lewis <lewis at mail.msen.com> wrote:
>
>
> The generated source files have a comment block that indicate the VMMaker
> sources from which they were generated. The SVN 3306 src files came from
> VMMaker.oscog-eem.1155, and the SVN 3308 src files were generated from
> VMMaker.oscog-eem.1178. The changes that produce the performances difference
> will be found somewhere in the VMMaker commits it that range.
>
> Dave
>
>
> On Tue, May 19, 2015 at 10:40:15PM +0200, Levente Uzonyi wrote:
>>
>> And after that I checked out 3308 of src, and rebuilt the VM again:
>>
>> '934306569 bytecodes/sec; 46368169 sends/sec'
>>
>> The files which were changed from 3306 to 3308 are:
>>
>> U src/vm/cointerp.c
>> U src/vm/cointerpmt.c
>> U src/vm/cogit.c
>> U src/vm/cointerp.h
>> U src/vm/gcc3x-cointerp.c
>> U src/vm/cointerpmt.h
>> U src/vm/gcc3x-cointerpmt.c
>> U src/vm/cogit.h
>> U src/plugins/QuicktimePlugin/QuicktimePlugin.c
>>
>> Levente
>>
>> On Tue, 19 May 2015, Levente Uzonyi wrote:
>>
>>>
>>> The difference is somewhere in the sources. I just checked out revision
>>> 3306 of the src directory, and rebuilt a CogVM (ht one, and kept the
>>> platform files at 3345. I used some extra CFLAGS which are responsible for
>>> the higher bytecodes/sec, ignore that.). It gives the following:
>>>
>>> '941176470 bytecodes/sec; 122927085 sends/sec'
>>>
>>> While 3343 gives:
>>>
>>> '896672504 bytecodes/sec; 46102703 sends/sec'
>>>
>>> Levente
>>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/vm-dev/attachments/20150520/49119aa3/attachment.htm
More information about the Vm-dev
mailing list