The partition is in RAID1 using software RAID.
Command line used: iozone -s 190g -r 300k -O -b test_file
OPS Mode. Output is in operations per second.
random random bkwd record stride
KB reclen write rewrite read reread read write read rewrite read fwrite frewrite fread freread
199229440 300 240 234 254 253 58 127 100 6539 91 234 234 254 254
so for 300K blocks random read using one thread was 58 ops/second of about 17MB/s.
But when I tried 5 threads each reading 300K blocks, unexpectedly for me it worked faster, although I'd expect more random access:
OPS Mode. Output is in operations per second.
Command line used: iozone -s 80g -r 300k -O -l5 -u 5 -F test_file1 test_file2 test_file3 test_file4 test_file5
Children see throughput for 5 random readers = 69.27 ops/sec
Parent sees throughput for 5 random readers = 69.27 ops/sec
Min throughput per process = 13.81 ops/sec
Max throughput per process = 13.89 ops/sec
Avg throughput per process = 13.85 ops/sec
Does anyone knows what reading/caching policies in Linux OS or hard drives makes 5 thread reading random 300K blocks faster than 1 thread reading random 300K blocks?