pmc2c-multi-nativepccmethod branch ready for testing

Peter Lobsinger plobsing at gmail.com
Fri Mar 11 23:17:52 UTC 2011


On Fri, Mar 11, 2011 at 5:57 PM, Jonathan "Duke" Leto <jonathan at leto.net> wrote:
> Howdy,
>
> Peter, can you comment on the possible performance-related changes
> that this branch could cause?

We took a small hit for the indirection NCI caused. We're not doing
that anymore, so it should be a little faster.

MULTIs that aliased vtables used switch statements to dispatch based
on their second argument. This optimization was not faithful to the
MMD algorithm, leading to slight discrepancies (and outright wrong
code in some corner cases). So while this aspect may have gotten
slower, it was a change from fast and wrong to slow and correct. If
the switch behaviour is desired, it should be made explicit, in stead
of pretending to be MMD when it is not.

> Have you done any benchmarks?

No. The focus of this branch was correctness and decoupling.
Performance was not of primary concern and is unlikely to be affected
in any major way.

> Duke
>
> On Fri, Mar 11, 2011 at 2:35 PM, Peter Lobsinger <plobsing at gmail.com> wrote:
>> The pmc2c-multi-nativepccmethod branch changes the implementation of
>> MULTIs in .pmc files from NCI to NativePCCMethod. This means that
>> these now handle their own PCC, in stead of rellying on NCI thunks to
>> accomplish this. These can now be modified to access a more broad
>> range of PCC functionality. On the NCI side of things, this
>> unentangles NCI from Pmc2c, allowing for changes to proceed.
>>
>> At the current time, the branch passes all tests in core and I am
>> testing HLLs. Please test this with whatever you see fit.
>> _______________________________________________
>> http://lists.parrot.org/mailman/listinfo/parrot-dev
>>
>
>
>
> --
> Jonathan "Duke" Leto
> jonathan at leto.net
> http://leto.net
>


More information about the parrot-dev mailing list