mirror_zfs/tests/zfs-tests/tests/functional
John Wren Kennedy 679d73e98b OpenZFS - Performance regression suite for zfstest
Author: John Wren Kennedy <john.kennedy@delphix.com>
Reviewed by: Prakash Surya <prakash.surya@delphix.com>
Reviewed by: Dan Kimmel <dan.kimmel@delphix.com>
Reviewed by: Matt Ahrens <mahrens@delphix.com>
Reviewed by: Paul Dagnelie <pcd@delphix.com>
Reviewed by: Don Brady <don.brady@intel.com>
Reviewed by: Richard Elling <Richard.Elling@RichardElling.com>
Reviewed by: Brian Behlendorf <behlendorf1@llnl.gov>
Reviewed-by: David Quigley <david.quigley@intel.com>
Approved by: Richard Lowe <richlowe@richlowe.net>
Ported-by: Don Brady <don.brady@intel.com>

OpenZFS-issue: https://www.illumos.org/issues/6950
OpenZFS-commit: https://github.com/openzfs/openzfs/commit/dcbf3bd6
Delphix-commit: https://github.com/delphix/delphix-os/commit/978ed49
Closes #4929

ZFS Test Suite Performance Regression Tests

This was pulled into OpenZFS via the compressed arc featureand was
separated out in zfsonlinux as a separate pull request from PR-4768.
It originally came in as QA-4903 in Delphix-OS from John Kennedy.

Expected Usage:

$ DISKS="sdb sdc sdd" zfs-tests.sh -r perf-regression.run

Porting Notes:
1. Added assertions in the setup script to make sure required tools
   (fio, mpstat, ...) are present.
2. For the config.json generation in perf.shlib used arcstats and
    other binaries instead of dtrace to query the values.
3. For the perf data collection:
   - use "zpool iostat -lpvyL" instead of the io.d dtrace script
    (currently not collecting zfs_read/write latency stats)
   - mpstat and iostat take different arguments
   - prefetch_io.sh is a placeholder that uses arcstats instead of
     dtrace
4. Build machines require fio, mdadm and sysstat pakage (YMMV).

Future Work:
   - Need a way to measure zfs_read and zfs_write latencies per pool.
   - Need tools to takes two sets of output and display/graph the
     differences
   - Bring over additional regression tests from Delphix
2016-09-08 16:18:28 -07:00
..
acl Fix ZPL miswrite of default POSIX ACL 2016-04-18 11:26:55 -07:00
atime Add zfs-tests for relatime 2016-04-05 18:56:06 -07:00
bootfs Add the ZFS Test Suite 2016-03-16 13:46:16 -07:00
cache Real disk partitioning now enabled in test suite for Linux 2016-09-08 13:45:34 -07:00
cachefile Add the ZFS Test Suite 2016-03-16 13:46:16 -07:00
casenorm Add the ZFS Test Suite 2016-03-16 13:46:16 -07:00
clean_mirror OpenZFS - Performance regression suite for zfstest 2016-09-08 16:18:28 -07:00
cli_root Real disk partitioning now enabled in test suite for Linux 2016-09-08 13:45:34 -07:00
cli_user Add zfs allow and zfs unallow support 2016-06-07 09:16:52 -07:00
compression Add the ZFS Test Suite 2016-03-16 13:46:16 -07:00
ctime Fix do_link portion of ctime test 2016-08-16 15:30:20 -07:00
delegate Implement large_dnode pool feature 2016-06-24 13:13:21 -07:00
devices Add the ZFS Test Suite 2016-03-16 13:46:16 -07:00
exec Add the ZFS Test Suite 2016-03-16 13:46:16 -07:00
features Implement large_dnode pool feature 2016-06-24 13:13:21 -07:00
grow_pool Real disk partitioning now enabled in test suite for Linux 2016-09-08 13:45:34 -07:00
grow_replicas Real disk partitioning now enabled in test suite for Linux 2016-09-08 13:45:34 -07:00
history Enable history test cases 2016-07-27 13:38:46 -07:00
inheritance Add the ZFS Test Suite 2016-03-16 13:46:16 -07:00
inuse Real disk partitioning now enabled in test suite for Linux 2016-09-08 13:45:34 -07:00
large_files Add the ZFS Test Suite 2016-03-16 13:46:16 -07:00
largest_pool Add the ZFS Test Suite 2016-03-16 13:46:16 -07:00
link_count Add the ZFS Test Suite 2016-03-16 13:46:16 -07:00
migration Real disk partitioning now enabled in test suite for Linux 2016-09-08 13:45:34 -07:00
mmap Real disk partitioning now enabled in test suite for Linux 2016-09-08 13:45:34 -07:00
mount Add the ZFS Test Suite 2016-03-16 13:46:16 -07:00
mv_files Real disk partitioning now enabled in test suite for Linux 2016-09-08 13:45:34 -07:00
nestedfs Add the ZFS Test Suite 2016-03-16 13:46:16 -07:00
no_space Real disk partitioning now enabled in test suite for Linux 2016-09-08 13:45:34 -07:00
nopwrite Add the ZFS Test Suite 2016-03-16 13:46:16 -07:00
online_offline Real disk partitioning now enabled in test suite for Linux 2016-09-08 13:45:34 -07:00
pool_names Add the ZFS Test Suite 2016-03-16 13:46:16 -07:00
poolversion Add the ZFS Test Suite 2016-03-16 13:46:16 -07:00
privilege Add the ZFS Test Suite 2016-03-16 13:46:16 -07:00
quota Expand EDQUOT variable 2016-03-31 09:48:41 -07:00
raidz SIMD implementation of vdev_raidz generate and reconstruct routines 2016-06-21 09:27:26 -07:00
redundancy Add the ZFS Test Suite 2016-03-16 13:46:16 -07:00
refquota Add the ZFS Test Suite 2016-03-16 13:46:16 -07:00
refreserv Add the ZFS Test Suite 2016-03-16 13:46:16 -07:00
rename_dirs Add the ZFS Test Suite 2016-03-16 13:46:16 -07:00
replacement remove sanity check in replacement test 2016-04-13 11:30:12 -07:00
reservation Add the ZFS Test Suite 2016-03-16 13:46:16 -07:00
rootpool Add the ZFS Test Suite 2016-03-16 13:46:16 -07:00
rsend Real disk partitioning now enabled in test suite for Linux 2016-09-08 13:45:34 -07:00
scrub_mirror Real disk partitioning now enabled in test suite for Linux 2016-09-08 13:45:34 -07:00
slog Add the ZFS Test Suite 2016-03-16 13:46:16 -07:00
snapshot Add the ZFS Test Suite 2016-03-16 13:46:16 -07:00
snapused Add the ZFS Test Suite 2016-03-16 13:46:16 -07:00
sparse Real disk partitioning now enabled in test suite for Linux 2016-09-08 13:45:34 -07:00
threadsappend Add the ZFS Test Suite 2016-03-16 13:46:16 -07:00
truncate Real disk partitioning now enabled in test suite for Linux 2016-09-08 13:45:34 -07:00
userquota Add the ZFS Test Suite 2016-03-16 13:46:16 -07:00
vdev_zaps Per-vdev ZAP tests must use $ZPOOL and $ZDB 2016-05-06 18:13:17 -07:00
write_dirs Real disk partitioning now enabled in test suite for Linux 2016-09-08 13:45:34 -07:00
xattr Add the ZFS Test Suite 2016-03-16 13:46:16 -07:00
zvol Real disk partitioning now enabled in test suite for Linux 2016-09-08 13:45:34 -07:00
Makefile.am SIMD implementation of vdev_raidz generate and reconstruct routines 2016-06-21 09:27:26 -07:00