zfs/lib
Tyler J. Stachecki 35a76a0366 Implementation of SSE optimized Fletcher-4
Builds off of 1eeb4562 (Implementation of AVX2 optimized Fletcher-4)
This commit adds another implementation of the Fletcher-4 algorithm.
It is automatically selected at module load if it benchmarks higher
than all other available implementations.

The module benchmark was also amended to analyze the performance of
the byteswap-ed version of Fletcher-4, as well as the non-byteswaped
version. The average performance of the two is used to select the
the fastest implementation available on the host system.

Adds a pair of fields to an existing zcommon module parameter:
-  zfs_fletcher_4_impl (str)
    "sse2"    - new SSE2 implementation if available
    "ssse3"   - new SSSE3 implementation if available

Signed-off-by: Tyler J. Stachecki <stachecki.tyler@gmail.com>
Signed-off-by: Gvozden Neskovic <neskovic@gmail.com>
Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Closes #4789
2016-07-15 10:42:35 -07:00
..
libavl Support parallel build trees (VPATH builds) 2015-07-17 13:42:51 -07:00
libefi Add isa_defs for MIPS 2016-05-31 09:05:40 -07:00
libnvpair Add support for libtirpc 2016-04-28 09:27:40 -07:00
libshare Support parallel build trees (VPATH builds) 2015-07-17 13:42:51 -07:00
libspl Add `zfs allow` and `zfs unallow` support 2016-06-07 09:16:52 -07:00
libunicode Support parallel build trees (VPATH builds) 2015-07-17 13:42:51 -07:00
libuutil Support parallel build trees (VPATH builds) 2015-07-17 13:42:51 -07:00
libzfs OpenZFS 6876 - Stack corruption after importing a pool with a too-long name 2016-06-28 13:47:04 -07:00
libzfs_core OpenZFS 6314 - buffer overflow in dsl_dataset_name 2016-06-28 13:47:03 -07:00
libzpool Implementation of SSE optimized Fletcher-4 2016-07-15 10:42:35 -07:00
Makefile.am Illumos #2882, #2883, #2900 2013-09-04 15:49:00 -07:00