use Data::Dumper; use strict; use constant MAX_TOUCH => 30; use constant MAX_EXP => 30; use constant MAX_ROW => 20000; my $hash; my $exp; my $row; for ($exp = 0; $exp < MAX_EXP; $exp ++) { print "exp = $exp\n"; $hash->{$exp} = {}; for ($row = 0; $row < MAX_ROW; $row ++) { my $array = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0]; $hash->{$exp}->{$row} = $array; } } my $test; for (0 .. MAX_TOUCH) { print "touch = $_\n"; for ($exp = 0; $exp < MAX_EXP; $exp ++) { for ($row = 0; $row < MAX_ROW; $row ++) { $hash->{$exp}->{$row}[0] ++; } } } #print Dumper $hash; print "about to exit\n"; exit;