… | |
… | |
14 | print "$_\n"; |
14 | print "$_\n"; |
15 | open $fh, "<", $_ or die "$_: $!"; |
15 | open $fh, "<", $_ or die "$_: $!"; |
16 | push @fh, $fh; |
16 | push @fh, $fh; |
17 | } |
17 | } |
18 | |
18 | |
19 | Linux::AIO::min_parallel 8; |
19 | Linux::AIO::min_parallel 4; |
20 | $nreqs = 50; |
20 | $nreqs = 8; |
21 | |
21 | |
22 | my $lat; |
22 | my $lat; |
23 | my $cnt = 1e-36; |
23 | my $cnt = 1e-36; |
24 | |
24 | |
25 | $|=1; |
25 | $|=1; |
… | |
… | |
28 | my $fh = @fh[rand @fh]; |
28 | my $fh = @fh[rand @fh]; |
29 | my $offset = int rand 75000000; |
29 | my $offset = int rand 75000000; |
30 | my $data; |
30 | my $data; |
31 | my $start = time; |
31 | my $start = time; |
32 | #print "starting new req ($fh, $offset)\n"; |
32 | #print "starting new req ($fh, $offset)\n"; |
33 | aio_read($fh, $offset, 256*1024, $data, 0, sub { |
33 | aio_read($fh, $offset, 16*1024, $data, 0, sub { |
34 | $start = time - $start; |
34 | $start = time - $start; |
35 | $lat += $start; |
35 | $lat += $start; |
36 | $cnt++; |
36 | $cnt++; |
37 | #print "io returned ($fh, $offset, $start)\n"; |
37 | #print "io returned ($fh, $offset, $start)\n"; |
38 | }); |
38 | }); |