Hi,

I got manifest which holds programs name and its checksum, In below code I got two hash which I build
parsing two version of manifest. I am doing below listed task to compare and findout the program changes
Manifest got: 27942 lines
Time taken: 5 min
sub compareProgram { my $manifest1HR = shift; my $manifest2HR = shift; my $main1AR = $manifest1HR->{MAIN}; my $main2AR = $manifest2HR->{MAIN}; foreach my $attr1HR(@$main1AR) { next unless($attr1HR->{Program}); foreach my $attr2HR(@$main2AR) { next unless($attr2HR->{Program}); if($attr1HR->{Program} eq $attr2HR->{Program} and $attr1HR->{File} eq $attr2HR-> +{File}) { if($attr1HR->{Size} ne $attr2HR->{Size}) { print "1: $attr1HR->{Program}\n"; print "1: $attr1HR->{File}\n"; print "1: $attr1HR->{Size}\n"; print "2: $attr2HR->{Size}\n"; } last; } } } }

Above code work perfectly but the problem is its bit slow is there any way I can change the code to make it more faster for doing same taks?
Looking forward for the suggestion.

Regards,
tart

Updates...

After parsing manifest $manifest1HR in above code contain something like this,
$VAR1 = { 'MAIN' => [ { 'Program' => 'EXECUTE', 'Size' => '1302267', 'File' => 'help.txt' }, { 'Program' => 'RUN', 'Size' => '15042454', 'File' => 'help.txt' }, { 'Program' => 'RUN', 'Size' => '387469', 'File' => 'run.exe' }, { 'Program' => 'PIPE', 'Size' => '34010402', 'File' => 'run.exe', } ] }

In reply to Slow Comparison by tart

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.