Refactored v1 into more smaller bits and fixed a bunch of bugs alongside. For example the fio jobs size for rand rw used --jobs=$(nproc) which needs to fit with the test device size. The loop transport runs a few more test but the largest contributer why it runs so much longer are the iteratons in 002. So I made them also configurable. nvme_num_iter=100 nvme_img_size=350M (new defaults) loop real 4m3.524s user 0m7.931s sys 1m35.871s rdma real 4m20.559s user 0m8.895s sys 1m5.714s tcp real 3m55.292s user 0m8.654s sys 1m15.314s fc real 3m18.977s user 0m8.868s sys 0m58.655s nvme_num_iter=1000 nvme_img_size=1G (previous/ defaults) loop real 8m22.109s user 0m27.582s sys 3m0.484s rdma real 9m1.784s user 0m14.274s sys 2m5.479s tcp real 8m28.443s user 0m13.952s sys 2m55.544s fc real 6m24.426s user 0m13.944s sys 2m2.489s The fc tests are bit faster because some of them are failing. changes: v2: - made image size configurable via nvme_img_size env - make number of iteration configurable via nvme_num_iter - do not hard code test values - calculate job size - use runtime for fio background jobs v1: - initial version - https://lore.kernel.org/linux-nvme/20230419085643.25714-1-dwagner@xxxxxxx/ Daniel Wagner (9): nvme-rc: Auto convert test device size info nvme: Do not hard code device size for dd test common-xfs: Make size argument optional for _xfs_run_fio_verify_io nvme: Use runtime fio background jobs nvme: Make test image size configurable nvme-rc: Add minimal test image size requirement nvme-rc: Calculate IO size for fio jobs nvme-rc: Move discovery generation counter code to rc nvme: Make the number iterations configurable common/rc | 30 +- common/xfs | 6 + tests/nvme/002 | 6 +- tests/nvme/002.out | 3004 -------------------------------------------- tests/nvme/004 | 2 +- tests/nvme/005 | 2 +- tests/nvme/006 | 2 +- tests/nvme/007 | 2 +- tests/nvme/008 | 2 +- tests/nvme/009 | 2 +- tests/nvme/010 | 6 +- tests/nvme/011 | 6 +- tests/nvme/012 | 5 +- tests/nvme/013 | 5 +- tests/nvme/014 | 12 +- tests/nvme/015 | 12 +- tests/nvme/016 | 2 +- tests/nvme/017 | 4 +- tests/nvme/018 | 2 +- tests/nvme/019 | 2 +- tests/nvme/020 | 2 +- tests/nvme/021 | 2 +- tests/nvme/022 | 2 +- tests/nvme/023 | 2 +- tests/nvme/024 | 2 +- tests/nvme/025 | 2 +- tests/nvme/026 | 2 +- tests/nvme/027 | 2 +- tests/nvme/028 | 2 +- tests/nvme/029 | 2 +- tests/nvme/030 | 22 +- tests/nvme/031 | 2 +- tests/nvme/032 | 6 +- tests/nvme/034 | 4 +- tests/nvme/035 | 4 +- tests/nvme/040 | 9 +- tests/nvme/041 | 2 +- tests/nvme/042 | 2 +- tests/nvme/043 | 2 +- tests/nvme/044 | 2 +- tests/nvme/045 | 6 +- tests/nvme/047 | 8 +- tests/nvme/048 | 2 +- tests/nvme/rc | 50 + 44 files changed, 176 insertions(+), 3079 deletions(-) -- 2.40.0