benchmarking - How fio benchmark tool performs sequential disk reads? -
i use fio test read/write bandwidth of disks.
even sequential read test, can let run multiple threads.
what mean running multiple threads on sequential read test?
does perform multiple sequential reads? (each thread assigned file offset start sequential scanning from)
do multiple threads share file offset? (each thread invokes sequential reads using single file offset shared multiple threads)
i tried read open source codes of fio, couldn't figure out.
can 1 give me idea?
sadly didn't include jobfile question , didn't platform you're running on. here's stab @ answers:
- yes multiple sequential reads though wouldn't have single thread?
- no each thread has own offset.
on linux fio defaults using separate processes per job , each process has own file descriptor (for ioengines use files) each file used. further, ioengines (e.g. libaio, pvsync there many others) use syscalls take offset want i/o @ request if share descriptor offset not impacted others using same descriptor.
there may problems if use sync ioengine, ask fio use threads rather process , have threads work on same file. ioengine has use lseek prior doing i/o perhaps there's chance thread's lseek sneak in before i/o submitted. note sync i/o engine not default 1 used recent fio versions.
perhaps fio mailing list can more?
Comments
Post a Comment