#!/usr/bin/perl -w use strict; use Time::HiRes qw/gettimeofday tv_interval/; my(@data, %seen); $data[$_] = int rand 100 for 0 .. 1e6 - 1; # 1,000,000 pieces of data my $t0 = [gettimeofday]; for (@data){ 1 unless $seen{$_}++; # Perform a no-op the first time we see a given number } print "Elapsed time: ", tv_interval($t0, [gettimeofday]), " seconds\n";