in reply to Re^10: Avoid Locking Entire Hashes
in thread Avoid Locking Entire Hashes

Oh, you're surprised my slow results are much faster than yours. Core i7 720QM @ 1.66MHz (a quad core), 64-bit Windows 7 Pro, 32-bit ActivePerl 5.14. Here are my full hash locking figures:

>perl a.pl Lock hash took 0.724 seconds >perl a.pl Lock hash took 0.750 seconds >perl a.pl Lock hash took 0.619 seconds

Replies are listed 'Best First'.
Re^12: Avoid Locking Entire Hashes
by BrowserUk (Patriarch) on Jun 15, 2011 at 10:34 UTC
    my slow results are much faster than yours

    Yes. This is 32-bit 5.8.9 on 64-bit Vista on Core 2 Quad @2.4GHz:

    ## full hash C:\test>\perl32\bin\perl.exe 909437-1.pl Lock hash took 1.153 seconds ## refs my way C:\test>\perl32\bin\perl.exe 909437-2.pl Lock scalar ref took 3.057 seconds ## refs your way C:\test>\perl32\bin\perl.exe 909437-3.pl Lock scalars ref took 3.473 seconds

    And 64-bit 5.10.1:

    C:\test>909437-1 Lock hash took 1.189 seconds C:\test>909437-2 Lock scalar ref took 3.285 seconds C:\test>909437-3 Lock scalars ref took 3.434 seconds

    Maybe the internal semaphoring has improved substantially in 5.14? Time to consider an upgrade.

    Does 5.14 have much else to make the pain worth while?


    Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
    "Science is about questioning the status quo. Questioning authority".
    In the absence of evidence, opinion is indistinguishable from prejudice.

        I meant anything that has specifically stood out for you.

        With regard to the disparity between our timings, they aren't down to 5.14 per se.

        They are noticeably quicker on 5.14, but the delta remains the same (for me):

        C:\test>\perl5.14-64\bin\perl.exe 909437-1.pl Lock hash took 0.904 seconds C:\test>\perl5.14-64\bin\perl.exe 909437-2.pl Lock scalar ref took 2.482 seconds C:\test>\perl5.14-64\bin\perl.exe 909437-3.pl Lock scalars ref took 2.951 seconds

        Are you using AS, or other?


        Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
        "Science is about questioning the status quo. Questioning authority".
        In the absence of evidence, opinion is indistinguishable from prejudice.