http://qs1969.pair.com?node_id=32049


in reply to RE (tilly) 3: sort performance
in thread sort performance

I suspect that the optimizer is just removing the whole $foo bit from "stupid" for you.

I was wondering if $a->[1] would be much faster than $hash{$a}{this}. I didn't think it would be by a big enough factor.

If you want raw speed here, create a side array for comparison and sort a list of indices:

my @list= keys %hash; my @sort= map { $hash{$_}{this} } @list; my @sorted= @list[ sort { $sort[$a] cmp $sort[$b] } 0..$#sort ];
        - tye (but my friends call me "Tye")

Replies are listed 'Best First'.
RE (tilly) 5: sort performance
by tilly (Archbishop) on Sep 12, 2000 at 07:05 UTC
    I suspected that, but it cannot be because the straight method without that line is much faster, and as you change the $foo line you see the speed of the stupid sort change.

    I suspect a more fundamental issue with how map and grep are implemented, and it should IMO be fixable.