Skip to content

Instantly share code, notes, and snippets.

@protospork
Created May 30, 2014 20:59
Show Gist options
  • Save protospork/e4ab25359eaa37a987ca to your computer and use it in GitHub Desktop.
Save protospork/e4ab25359eaa37a987ca to your computer and use it in GitHub Desktop.
hi I did a thing
J:\TV\Firefly>perl "X:\My Dropbox\Public\misc\perl\TEST\hash_race.pl"
Firefly 01e01 - Serenity.mkv:
umVYlZ3zaRKC4roLsZNBuw || 7 secs
21C77314 || 3 secs
umVYlZ3zaRKC4roLsZNBuw || 2 secs
21C77314 || 2 secs
Firefly 01e02 - The Train Job.mkv:
BN9w8Ybicy+4CEqXVJYImg || 4 secs
A64E6AE5 || 2 secs
BN9w8Ybicy+4CEqXVJYImg || 1 secs
A64E6AE5 || 1 secs
Firefly 01e03 - Bushwhacked.mkv:
s738z3H5m6XzCfyiQvq1Mg || 4 secs
DAA16332 || 1 secs
s738z3H5m6XzCfyiQvq1Mg || 1 secs
DAA16332 || 1 secs
Firefly 01e04 - Shindig.mkv:
i6OkpRd/WbRlwcCfiM4VZw || 4 secs
05E3B1E3 || 1 secs
i6OkpRd/WbRlwcCfiM4VZw || 2 secs
05E3B1E3 || 1 secs
Firefly 01e05 - Safe.mkv:
6ZbzdWE3kJOs+KLQDRK9HQ || 3 secs
90C6CDBE || 2 secs
6ZbzdWE3kJOs+KLQDRK9HQ || 1 secs
90C6CDBE || 1 secs
Firefly 01e06 - Our Mrs. Reynolds.mkv:
9kQUf/qH2Bwzflgx+yC4Qg || 4 secs
4AECEA5D || 1 secs
9kQUf/qH2Bwzflgx+yC4Qg || 1 secs
4AECEA5D || 1 secs
Firefly 01e07 - Jaynestown.mkv:
Dc8wfqqGacOMCnedUTKirQ || 4 secs
A8AB2A0E || 1 secs
Dc8wfqqGacOMCnedUTKirQ || 1 secs
A8AB2A0E || 1 secs
Firefly 01e08 - Out of Gas.mkv:
+cjfExEfwcH6DwmeHKprbQ || 7 secs
9AE4BE84 || 2 secs
+cjfExEfwcH6DwmeHKprbQ || 3 secs
9AE4BE84 || 2 secs
Firefly 01e09 - Ariel.mkv:
ByMANR2TyL8JJOlXfco4Ww || 3 secs
9F3C293A || 1 secs
ByMANR2TyL8JJOlXfco4Ww || 2 secs
9F3C293A || 1 secs
Firefly 01e10 - War Stories.mkv:
Usz3fso2Ts+fSfgFbTwaUw || 4 secs
03C86F91 || 1 secs
Usz3fso2Ts+fSfgFbTwaUw || 1 secs
03C86F91 || 1 secs
Firefly 01e11 - Trash.mkv:
4RL81UpxVlCDDVV1SsuoQA || 4 secs
1560E63A || 1 secs
4RL81UpxVlCDDVV1SsuoQA || 1 secs
1560E63A || 1 secs
Firefly 01e12 - The Message.mkv:
VoE4KK+HjlvoRz6613atRw || 5 secs
7D3B7BBF || 1 secs
VoE4KK+HjlvoRz6613atRw || 1 secs
7D3B7BBF || 1 secs
Firefly 01e13 - Heart of Gold.mkv:
FSmaxcY7DH9UYkLJ1B1LPA || 4 secs
E843DBA6 || 1 secs
FSmaxcY7DH9UYkLJ1B1LPA || 1 secs
E843DBA6 || 1 secs
Firefly 01e14 - Objects in Space.mkv:
JrXRJY83vCoRfSWoxLVbOA || 4 secs
7809BDBB || 2 secs
JrXRJY83vCoRfSWoxLVbOA || 1 secs
7809BDBB || 1 secs
use Digest::MD5;
use String::CRC32;
use Modern::Perl;
$|++;
my @files = glob "*.*";
for (@files){
say "$_:";
md5_test($_);
crc_test($_);
md5_test($_);
crc_test($_);
}
sub crc_test {
my $start = time;
open my $file, $_[0] || die $!;
binmode($file);
my $hash = crc32(*$file);
close $file;
$hash =~ s/^(.+)$/uc sprintf "%08x", $1/eg;
my $elapsed = time - $start;
say "$hash || $elapsed secs";
return;
}
sub md5_test {
my $start = time;
open my $file, $_[0] || die $!;
binmode($file);
my $md5 = Digest::MD5->new;
# while(<$file>){ $md5->add($_); }
$md5->addfile($file);
my $hash = $md5->b64digest;
close $file;
my $elapsed = time - $start;
say "$hash || $elapsed secs";
return;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment