perf: cleanup cmdline params for consistency
'-s' option is usually associated with the memory size, but our ioat/perf and nvme/perf use it for io size. To keep those consistent: '-s' option (io size) was be changed to '-o' '-d' option (mem size) was be changed to '-s' Change-Id: I97cef4c0a4e6e902277dd50dfb43bde420a6427e Signed-off-by: Dariusz Stojaczyk <dariuszx.stojaczyk@intel.com> Reviewed-on: https://review.gerrithub.io/422654 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Chandler-Test-Pool: SPDK Automated Test System <sys_sgsw@intel.com> Reviewed-by: Jim Harris <james.r.harris@intel.com> Reviewed-by: Ben Walker <benjamin.walker@intel.com>
This commit is contained in:
parent
39592d7b20
commit
b5616804dc
14
doc/nvme.md
14
doc/nvme.md
@ -58,24 +58,24 @@ demonstrate how to use perf.
|
||||
|
||||
Example: Using perf for 4K 100% Random Read workload to a local NVMe SSD for 300 seconds
|
||||
~~~{.sh}
|
||||
perf -q 128 -s 4096 -w randread -r 'trtype:PCIe traddr:0000:04:00.0' -t 300
|
||||
perf -q 128 -o 4096 -w randread -r 'trtype:PCIe traddr:0000:04:00.0' -t 300
|
||||
~~~
|
||||
|
||||
Example: Using perf for 4K 100% Random Read workload to a remote NVMe SSD exported over the network via NVMe-oF
|
||||
~~~{.sh}
|
||||
perf -q 128 -s 4096 -w randread -r 'trtype:RDMA adrfam:IPv4 traddr:192.168.100.8 trsvcid:4420' -t 300
|
||||
perf -q 128 -o 4096 -w randread -r 'trtype:RDMA adrfam:IPv4 traddr:192.168.100.8 trsvcid:4420' -t 300
|
||||
~~~
|
||||
|
||||
Example: Using perf for 4K 70/30 Random Read/Write mix workload to all local NVMe SSDs for 300 seconds
|
||||
~~~{.sh}
|
||||
perf -q 128 -s 4096 -w randrw -M 70 -t 300
|
||||
perf -q 128 -o 4096 -w randrw -M 70 -t 300
|
||||
~~~
|
||||
|
||||
Example: Using perf for extended LBA format CRC guard test to a local NVMe SSD,
|
||||
users must write to the SSD before reading the LBA from SSD
|
||||
~~~{.sh}
|
||||
perf -q 1 -s 4096 -w write -r 'trtype:PCIe traddr:0000:04:00.0' -t 300 -e 'PRACT=0,PRCKH=GUARD'
|
||||
perf -q 1 -s 4096 -w read -r 'trtype:PCIe traddr:0000:04:00.0' -t 200 -e 'PRACT=0,PRCKH=GUARD'
|
||||
perf -q 1 -o 4096 -w write -r 'trtype:PCIe traddr:0000:04:00.0' -t 300 -e 'PRACT=0,PRCKH=GUARD'
|
||||
perf -q 1 -o 4096 -w read -r 'trtype:PCIe traddr:0000:04:00.0' -t 200 -e 'PRACT=0,PRCKH=GUARD'
|
||||
~~~
|
||||
|
||||
# Public Interface {#nvme_interface}
|
||||
@ -227,8 +227,8 @@ Example: identical shm_id and non-overlapping core masks
|
||||
[-c core mask for I/O submission/completion]
|
||||
[-i shared memory group ID]
|
||||
|
||||
./perf -q 1 -s 4096 -w randread -c 0x1 -t 60 -i 1
|
||||
./perf -q 8 -s 131072 -w write -c 0x10 -t 60 -i 1
|
||||
./perf -q 1 -o 4096 -w randread -c 0x1 -t 60 -i 1
|
||||
./perf -q 8 -o 131072 -w write -c 0x10 -t 60 -i 1
|
||||
~~~
|
||||
|
||||
## Limitations {#nvme_multi_process_limitations}
|
||||
|
@ -250,7 +250,7 @@ usage(char *program_name)
|
||||
printf("\t[-c core mask for distributing I/O submission/completion work]\n");
|
||||
printf("\t[-q queue depth]\n");
|
||||
printf("\t[-n number of channels]\n");
|
||||
printf("\t[-s transfer size in bytes]\n");
|
||||
printf("\t[-o transfer size in bytes]\n");
|
||||
printf("\t[-t time in seconds]\n");
|
||||
printf("\t[-v verify copy result if this switch is on]\n");
|
||||
}
|
||||
@ -261,9 +261,9 @@ parse_args(int argc, char **argv)
|
||||
int op;
|
||||
|
||||
construct_user_config(&g_user_config);
|
||||
while ((op = getopt(argc, argv, "c:hn:q:s:t:v")) != -1) {
|
||||
while ((op = getopt(argc, argv, "c:hn:o:q:t:v")) != -1) {
|
||||
switch (op) {
|
||||
case 's':
|
||||
case 'o':
|
||||
g_user_config.xfer_size_bytes = atoi(optarg);
|
||||
break;
|
||||
case 'n':
|
||||
|
@ -911,7 +911,7 @@ static void usage(char *program_name)
|
||||
#endif
|
||||
printf("\n");
|
||||
printf("\t[-q io depth]\n");
|
||||
printf("\t[-s io size in bytes]\n");
|
||||
printf("\t[-o io size in bytes]\n");
|
||||
printf("\t[-w io pattern type, must be one of\n");
|
||||
printf("\t\t(read, write, randread, randwrite, rw, randrw)]\n");
|
||||
printf("\t[-M rwmixread (100 for reads, 0 for writes)]\n");
|
||||
@ -938,7 +938,7 @@ static void usage(char *program_name)
|
||||
printf("\t PRCHK Control of Protection Information Checking (PRCHK=GUARD|REFTAG|APPTAG)\n");
|
||||
printf("\t Example: -e 'PRACT=0,PRCHK=GUARD|REFTAG|APPTAG'\n");
|
||||
printf("\t -e 'PRACT=1,PRCHK=GUARD'\n");
|
||||
printf("\t[-d DPDK huge memory size in MB.]\n");
|
||||
printf("\t[-s DPDK huge memory size in MB.]\n");
|
||||
printf("\t[-m max completions per poll]\n");
|
||||
printf("\t\t(default: 0 - unlimited)\n");
|
||||
printf("\t[-i shared memory group ID]\n");
|
||||
@ -1280,14 +1280,11 @@ parse_args(int argc, char **argv)
|
||||
g_core_mask = NULL;
|
||||
g_max_completions = 0;
|
||||
|
||||
while ((op = getopt(argc, argv, "c:d:e:i:lm:q:r:s:t:w:DLM:")) != -1) {
|
||||
while ((op = getopt(argc, argv, "c:e:i:lm:o:q:r:s:t:w:DLM:")) != -1) {
|
||||
switch (op) {
|
||||
case 'c':
|
||||
g_core_mask = optarg;
|
||||
break;
|
||||
case 'd':
|
||||
g_dpdk_mem = atoi(optarg);
|
||||
break;
|
||||
case 'e':
|
||||
if (parse_metadata(optarg)) {
|
||||
usage(argv[0]);
|
||||
@ -1303,6 +1300,9 @@ parse_args(int argc, char **argv)
|
||||
case 'm':
|
||||
g_max_completions = atoi(optarg);
|
||||
break;
|
||||
case 'o':
|
||||
g_io_size_bytes = atoi(optarg);
|
||||
break;
|
||||
case 'q':
|
||||
g_queue_depth = atoi(optarg);
|
||||
break;
|
||||
@ -1313,7 +1313,7 @@ parse_args(int argc, char **argv)
|
||||
}
|
||||
break;
|
||||
case 's':
|
||||
g_io_size_bytes = atoi(optarg);
|
||||
g_dpdk_mem = atoi(optarg);
|
||||
break;
|
||||
case 't':
|
||||
g_time_in_sec = atoi(optarg);
|
||||
|
@ -111,10 +111,10 @@ done
|
||||
timing_exit identify
|
||||
|
||||
timing_enter perf
|
||||
$rootdir/examples/nvme/perf/perf -q 128 -w read -s 12288 -t 1 -LL -i 0
|
||||
$rootdir/examples/nvme/perf/perf -q 128 -w read -o 12288 -t 1 -LL -i 0
|
||||
if [ -b /dev/ram0 ]; then
|
||||
# Test perf with AIO device
|
||||
$rootdir/examples/nvme/perf/perf /dev/ram0 -q 128 -w read -s 12288 -t 1 -LL -i 0
|
||||
$rootdir/examples/nvme/perf/perf /dev/ram0 -q 128 -w read -o 12288 -t 1 -LL -i 0
|
||||
report_test_completion "nvme_perf"
|
||||
fi
|
||||
timing_exit perf
|
||||
@ -153,11 +153,11 @@ timing_exit arbitration
|
||||
|
||||
if [ `uname` = Linux ]; then
|
||||
timing_enter multi_secondary
|
||||
$rootdir/examples/nvme/perf/perf -i 0 -q 16 -w read -s 4096 -t 3 -c 0x1 &
|
||||
$rootdir/examples/nvme/perf/perf -i 0 -q 16 -w read -o 4096 -t 3 -c 0x1 &
|
||||
pid0=$!
|
||||
$rootdir/examples/nvme/perf/perf -i 0 -q 16 -w read -s 4096 -t 3 -c 0x2 &
|
||||
$rootdir/examples/nvme/perf/perf -i 0 -q 16 -w read -o 4096 -t 3 -c 0x2 &
|
||||
pid1=$!
|
||||
$rootdir/examples/nvme/perf/perf -i 0 -q 16 -w read -s 4096 -t 3 -c 0x4
|
||||
$rootdir/examples/nvme/perf/perf -i 0 -q 16 -w read -o 4096 -t 3 -c 0x4
|
||||
wait $pid0
|
||||
wait $pid1
|
||||
report_test_completion "nvme_multi_secondary"
|
||||
|
@ -44,10 +44,10 @@ $rpc_py construct_nvmf_subsystem nqn.2016-06.io.spdk:cnode1 "trtype:RDMA traddr:
|
||||
|
||||
# Test multi-process access to local NVMe device
|
||||
if [ -n "$local_nvme_trid" ]; then
|
||||
$rootdir/examples/nvme/perf/perf -i 0 -q 32 -s 4096 -w randrw -M 50 -t 1 -r "$local_nvme_trid"
|
||||
$rootdir/examples/nvme/perf/perf -i 0 -q 32 -o 4096 -w randrw -M 50 -t 1 -r "$local_nvme_trid"
|
||||
fi
|
||||
|
||||
$rootdir/examples/nvme/perf/perf -q 32 -s 4096 -w randrw -M 50 -t 1 -r "trtype:RDMA adrfam:IPv4 traddr:$NVMF_FIRST_TARGET_IP trsvcid:4420"
|
||||
$rootdir/examples/nvme/perf/perf -q 32 -o 4096 -w randrw -M 50 -t 1 -r "trtype:RDMA adrfam:IPv4 traddr:$NVMF_FIRST_TARGET_IP trsvcid:4420"
|
||||
sync
|
||||
$rpc_py delete_nvmf_subsystem nqn.2016-06.io.spdk:cnode1
|
||||
|
||||
@ -63,8 +63,8 @@ if [ $RUN_NIGHTLY -eq 1 ]; then
|
||||
qd_depth=("1" "128")
|
||||
io_size=("512" "131072")
|
||||
for qd in ${qd_depth[@]}; do
|
||||
for s in ${io_size[@]}; do
|
||||
$rootdir/examples/nvme/perf/perf -q $qd -s $s -w randrw -M 50 -t 10 -r "trtype:RDMA adrfam:IPv4 traddr:$NVMF_FIRST_TARGET_IP trsvcid:4420"
|
||||
for o in ${io_size[@]}; do
|
||||
$rootdir/examples/nvme/perf/perf -q $qd -o $o -w randrw -M 50 -t 10 -r "trtype:RDMA adrfam:IPv4 traddr:$NVMF_FIRST_TARGET_IP trsvcid:4420"
|
||||
done
|
||||
done
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user