ememos / GiantVM

9 stars 9 forks source link

Direct 4k random read performance Issue #31

Open DongDongJu opened 3 years ago

DongDongJu commented 3 years ago

As well-known, direct 4k random read performance is the worst-case read performance test for the file system area. The below screenshot shows the following fio workload's result on different environments.

[global]
filename=/dev/sda
direct=1
time_based
bssplit=4K

[front]
rw=randread
ioengine=pvsync
iodepth=32
numjobs=4
runtime=60
startdelay=0

image

  1. host1,host2 can show almost the same IOPS.
  2. without the cpu-pinning result of giantvm is crazy-lower than the host's result.
  3. furthermore, giantvm with pinned remote-CPU (giantvm4-7) is also lower than local CPU pinned one.

In these simple experiments, we can find 2 ways for enhancement.

First, we need to increase the total throughput of reading and check the bottleneck during remote-CPU file I/O work.

Any opinions?

YWHyuk commented 3 years ago

It's quite interesting.

It seems like that host1, host2 results are from "real hardware" not emulated one. Is that right? Then, I'm quite curious about the result of vanilla qemu vs Giant vm.