1.\" 2.\" CDDL HEADER START 3.\" 4.\" The contents of this file are subject to the terms of the 5.\" Common Development and Distribution License (the "License"). 6.\" You may not use this file except in compliance with the License. 7.\" 8.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9.\" or http://www.opensolaris.org/os/licensing. 10.\" See the License for the specific language governing permissions 11.\" and limitations under the License. 12.\" 13.\" When distributing Covered Code, include this CDDL HEADER in each 14.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15.\" If applicable, add the following below this CDDL HEADER, with the 16.\" fields enclosed by brackets "[]" replaced with your own identifying 17.\" information: Portions Copyright [yyyy] [name of copyright owner] 18.\" 19.\" CDDL HEADER END 20.\" 21.\" Copyright (c) 2016 Gvozden Nešković. All rights reserved. 22.\" 23.Dd May 26, 2021 24.Dt RAIDZ_TEST 1 25.Os 26. 27.Sh NAME 28.Nm raidz_test 29.Nd raidz implementation verification and benchmarking tool 30.Sh SYNOPSIS 31.Nm 32.Op Fl StBevTD 33.Op Fl a Ar ashift 34.Op Fl o Ar zio_off_shift 35.Op Fl d Ar raidz_data_disks 36.Op Fl s Ar zio_size_shift 37.Op Fl r Ar reflow_offset 38. 39.Sh DESCRIPTION 40The purpose of this tool is to run all supported raidz implementation and verify 41the results of all methods. 42It also contains a parameter sweep option where all 43parameters affecting a RAIDZ block are verified (like ashift size, data offset, 44data size, etc.). 45The tool also supports a benchmarking mode using the 46.Fl B 47option. 48. 49.Sh OPTION 50.Bl -tag -width "-B(enchmark)" 51.It Fl h 52Print a help summary. 53.It Fl a Ar ashift No (default: Sy 9 ) 54Ashift value. 55.It Fl o Ar zio_off_shift No (default: Sy 0 ) 56ZIO offset for each raidz block. 57The offset's value is 58.Sy 1 << zio_off_shift . 59.It Fl d Ar raidz_data_disks No (default: Sy 8 ) 60Number of raidz data disks to use. 61Additional disks will be used for parity. 62.It Fl s Ar zio_size_shift No (default: Sy 19 ) 63Size of data for raidz block. 64The real size is 65.Sy 1 << zio_size_shift . 66.It Fl r Ar reflow_offset No (default: Sy uint max ) 67Set raidz expansion offset. 68The expanded raidz map allocation function will 69produce different map configurations depending on this value. 70.It Fl S Ns No (weep) 71Sweep parameter space while verifying the raidz implementations. 72This option 73will exhaust all most of valid values for the 74.Fl aods 75options. 76Runtime using this option will be long. 77.It Fl t Ns No (imeout) 78Wall time for sweep test in seconds. 79The actual runtime could be longer. 80.It Fl B Ns No (enchmark) 81All implementations are benchmarked using increasing per disk data size. 82Results are given as throughput per disk, measured in MiB/s. 83.It Fl e Ns No (xpansion) 84Use expanded raidz map allocation function. 85.It Fl v Ns No (erbose) 86Increase verbosity. 87.It Fl T Ns No (est the test) 88Debugging option: fail all tests. 89This is to check if tests would properly verify bit-exactness. 90.It Fl D Ns No (ebug) 91Debugging option: attach 92.Xr gdb 1 93when 94.Sy SIGSEGV 95or 96.Sy SIGABRT 97are received. 98.El 99. 100.Sh "SEE ALSO" 101.Xr ztest 1 102