partcl pmc usage.

Will Coleda will at coleda.com
Tue Dec 30 17:00:26 UTC 2008


On Tue, Dec 30, 2008 at 11:45 AM, Geoffrey Broadwell
<geoff at broadwell.org> wrote:
> On Tue, 2008-12-30 at 11:28 -0500, Will Coleda wrote:
>> On Tue, Dec 30, 2008 at 11:24 AM, Will Coleda <will at coleda.com> wrote:
>> >    TOTAL_MEM_ALLOC............: 8266564
>> >    ACTIVE_PMCS................: 2871369
>> >    ACTIVE_BUFFERS.............: 2807713
>> >    TOTAL_PMCS.................: 3096542
>> >    TOTAL_BUFFERS..............: 2812089
>> >    TOTAL_COPIED...............: 142490896
>> >    EXTENDED_PMCS..............: 6506
>>
>> For comparison, here's the sole run from the script [puts hi] :
>>
>>     TOTAL_MEM_ALLOC............: 4350628
>>     ACTIVE_PMCS................: 13046
>>     ACTIVE_BUFFERS.............: 12811
>>     TOTAL_PMCS.................: 23931
>>     TOTAL_BUFFERS..............: 34053
>>     TOTAL_COPIED...............: 4196048
>>     EXTENDED_PMCS..............: 4742
>
> I'm surprised that the ratio of TOTAL_MEM_ALLOC between the two cases is
> much smaller than any other ratio, except EXTENDED_PMCS.  Just dividing
> through, it looks like PMCs only are counting for a byte or two each,
> which seems way off; are you sure they are not being multiply counted?
> Or does TOTAL_MEM_ALLOC only include the PMC and BUFFER bodies and not
> the headers?
>
> What *is* an EXTENDED_PMC anyway?
>
> Also, what is the unit for TOTAL_COPIED?  Is it a count of copy
> operations, or of bytes, or ...?

Those are all good questions. =-)

I thought to double check my while loop logic since [while] is getting
invoked quite a bit here; there was a ExceptionHandler PMC being
created every time through the loop which I'm guessing was not being
freed. Creating the EH object once before each time through the while
is a definite improvement:

    TOTAL_MEM_ALLOC............: 8057708
    DOD_RUNS...................: 115
    COLLECT_RUNS...............: 115
    ACTIVE_PMCS................: 2287221
    ACTIVE_BUFFERS.............: 2439141
    TOTAL_PMCS.................: 3096542
    TOTAL_BUFFERS..............: 3045105
    HEADER_ALLOCS_SINCE_COLLECT: 0
    MEM_ALLOCS_SINCE_COLLECT...: 0
    TOTAL_COPIED...............: 145109216
    IMPATIENT_PMCS.............: 0
    LAZY_DOD_RUNS..............: 0
    EXTENDED_PMCS..............: 6332

-- 
Will "Coke" Coleda


More information about the parrot-dev mailing list