| .\" |
| .\" CDDL HEADER START |
| .\" |
| .\" The contents of this file are subject to the terms of the |
| .\" Common Development and Distribution License (the "License"). |
| .\" You may not use this file except in compliance with the License. |
| .\" |
| .\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE |
| .\" or http://www.opensolaris.org/os/licensing. |
| .\" See the License for the specific language governing permissions |
| .\" and limitations under the License. |
| .\" |
| .\" When distributing Covered Code, include this CDDL HEADER in each |
| .\" file and include the License file at usr/src/OPENSOLARIS.LICENSE. |
| .\" If applicable, add the following below this CDDL HEADER, with the |
| .\" fields enclosed by brackets "[]" replaced with your own identifying |
| .\" information: Portions Copyright [yyyy] [name of copyright owner] |
| .\" |
| .\" CDDL HEADER END |
| .\" |
| .\" Copyright (c) 2016 Gvozden Nešković. All rights reserved. |
| .\" |
| .Dd May 26, 2021 |
| .Dt RAIDZ_TEST 1 |
| .Os |
| . |
| .Sh NAME |
| .Nm raidz_test |
| .Nd raidz implementation verification and benchmarking tool |
| .Sh SYNOPSIS |
| .Nm |
| .Op Fl StBevTD |
| .Op Fl a Ar ashift |
| .Op Fl o Ar zio_off_shift |
| .Op Fl d Ar raidz_data_disks |
| .Op Fl s Ar zio_size_shift |
| .Op Fl r Ar reflow_offset |
| . |
| .Sh DESCRIPTION |
| The purpose of this tool is to run all supported raidz implementation and verify |
| the results of all methods. |
| It also contains a parameter sweep option where all |
| parameters affecting a RAIDZ block are verified (like ashift size, data offset, |
| data size, etc.). |
| The tool also supports a benchmarking mode using the |
| .Fl B |
| option. |
| . |
| .Sh OPTION |
| .Bl -tag -width "-B(enchmark)" |
| .It Fl h |
| Print a help summary. |
| .It Fl a Ar ashift Pq default: Sy 9 |
| Ashift value. |
| .It Fl o Ar zio_off_shift Pq default: Sy 0 |
| ZIO offset for each raidz block. |
| The offset's value is |
| .Em 2^zio_off_shift . |
| .It Fl d Ar raidz_data_disks Pq default: Sy 8 |
| Number of raidz data disks to use. |
| Additional disks will be used for parity. |
| .It Fl s Ar zio_size_shift Pq default: Sy 19 |
| Size of data for raidz block. |
| The real size is |
| .Em 2^zio_size_shift . |
| .It Fl r Ar reflow_offset Pq default: Sy uint max |
| Set raidz expansion offset. |
| The expanded raidz map allocation function will |
| produce different map configurations depending on this value. |
| .It Fl S Ns Pq weep |
| Sweep parameter space while verifying the raidz implementations. |
| This option |
| will exhaust all most of valid values for the |
| .Fl aods |
| options. |
| Runtime using this option will be long. |
| .It Fl t Ns Pq imeout |
| Wall time for sweep test in seconds. |
| The actual runtime could be longer. |
| .It Fl B Ns Pq enchmark |
| All implementations are benchmarked using increasing per disk data size. |
| Results are given as throughput per disk, measured in MiB/s. |
| .It Fl e Ns Pq xpansion |
| Use expanded raidz map allocation function. |
| .It Fl v Ns Pq erbose |
| Increase verbosity. |
| .It Fl T Ns Pq est the test |
| Debugging option: fail all tests. |
| This is to check if tests would properly verify bit-exactness. |
| .It Fl D Ns Pq ebug |
| Debugging option: attach |
| .Xr gdb 1 |
| when |
| .Sy SIGSEGV |
| or |
| .Sy SIGABRT |
| are received. |
| .El |
| . |
| .Sh "SEE ALSO" |
| .Xr ztest 1 |