I'm running 5.8.8 on 64-bit linux, and I have a nasty performance issue
that does not happen with the same perl program on 32-bit linux.

A small sample that exhibits the problem is:

use strict;

use Time::HiRes qw(time);
use HTTP::Request;

my %l;

    my $now = time;
    for (my $i = 0; $i < 30000; $i++) {
        my $dt = HTTP::Request->new(GET => "http://localhost/";);

        $l{$i} = $dt;
        if ($i % 1000 == 999) {
            print time - $now,"\n";
            $now = time;
        }
    }

The first few thousand iterations go quite rapidly (68ms for the first
thousand, 94 ms for the second). By the twentieth line of output, it is
take 2 seconds per thousand....  On a 32 bit platform, the time remains
(roughly) the same for each block of a thousand.

It doesn't seem to depend on the exact object that I create. My
suspicion is that the memory allocation is the issue, but I don't know.
Any thoughts on how to track this down and/or fix it?

Thanks

Philip

Attachment: smime.p7s
Description: S/MIME Cryptographic Signature

Reply via email to