hi, Yi,
On Wed, Jan 03, 2024 at 11:31:39AM +0800, Zhang Yi wrote:
> On 2024/1/2 15:31, kernel test robot wrote:
> >
> >
> > Hello,
> >
> > kernel test robot noticed a 92.5% regression of fileio.latency_95th_ms on:
>
> Hello,
>
> This seems a little weird, the tests doesn't use blk-cgroup, and the patch
> increase IO priority in WBT, so there shouldn't be any negative influence in
> theory. I've tested sysbench on my machine with Intel Xeon Gold 6240 CPU,
> 400GB memory with HDD disk, and couldn't reproduce this regression.
we double confirmed the latency_95th_ms data is stable in multi runs on our
test platform (Ice Lake).
however, we cannot gurantee the regression could be reproduced on another test
machine.
our team's goal is to report issues (both performance and func) we observed in
our tests to community to help author/community to review then improve code
quality if possible. so just FYI. it's up to author/community to judge the next
step.
regarding this report, if you want to dig further, we will be very happen to
do further tests if you give us some debug patches. Thanks a lot!
>
> ==
> Without 6a3afb6ac6 ("jbd2: increase the journal IO's priority")
> ==
>
> $ sysbench fileio --events=0 --threads=128 --time=600 --file-test-mode=seqwr --file-total-size=68719476736 --file-io-mode=sync --file-num=1024 run
>
> sysbench 1.1.0-df89d34 (using bundled LuaJIT 2.1.0-beta3)
>
> Running the test with following options:
> Number of threads: 128
> Initializing random number generator from current time
>
>
> Extra file open flags: (none)
> 1024 files, 64MiB each
> 64GiB total file size
> Block size 16KiB
> Periodic FSYNC enabled, calling fsync() each 100 requests.
> Calling fsync() at the end of test, Enabled.
> Using synchronous I/O mode
> Doing sequential write (creation) test
> Initializing worker threads...
>
> Threads started!
>
>
> Throughput:
> read: IOPS=0.00 0.00 MiB/s (0.00 MB/s)
> write: IOPS=31961.19 499.39 MiB/s (523.65 MB/s)
> fsync: IOPS=327500.24
>
> Latency (ms):
> min: 0.00
> avg: 0.33
> max: 920.89
> 95th percentile: 0.33
> sum: 71212319.19
>
> ==
> With 6a3afb6ac6 ("jbd2: increase the journal IO's priority")
> ==
>
> $ sysbench fileio --events=0 --threads=128 --time=600 --file-test-mode=seqwr --file-total-size=68719476736 --file-io-mode=sync --file-num=1024 run
>
> sysbench 1.1.0-df89d34 (using bundled LuaJIT 2.1.0-beta3)
>
> Running the test with following options:
> Number of threads: 128
> Initializing random number generator from current time
>
>
> Extra file open flags: (none)
> 1024 files, 64MiB each
> 64GiB total file size
> Block size 16KiB
> Periodic FSYNC enabled, calling fsync() each 100 requests.
> Calling fsync() at the end of test, Enabled.
> Using synchronous I/O mode
> Doing sequential write (creation) test
> Initializing worker threads...
>
> Threads started!
>
>
> Throughput:
> read: IOPS=0.00 0.00 MiB/s (0.00 MB/s)
> write: IOPS=31710.38 495.47 MiB/s (519.54 MB/s)
> fsync: IOPS=324931.88
>
> Latency (ms):
> min: 0.00
> avg: 0.33
> max: 1051.69
> 95th percentile: 0.32
> sum: 71309894.62
>
> Thanks,
> Yi.
>
> >
> >
> > commit: 6a3afb6ac6dfab158ebdd4b87941178f58c8939f ("jbd2: increase the journal IO's priority")
> > https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git master
> >
> > testcase: fileio
> > test machine: 128 threads 2 sockets Intel(R) Xeon(R) Platinum 8358 CPU @ 2.60GHz (Ice Lake) with 128G memory
> > parameters:
> >
> > period: 600s
> > nr_threads: 100%
> > disk: 1HDD
> > fs: ext4
> > size: 64G
> > filenum: 1024f
> > rwmode: seqwr
> > iomode: sync
> > cpufreq_governor: performance
> >