mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2025-01-13 19:50:25 +03:00
1eeb4562a7
New functionality: - Preserves existing scalar implementation. - Adds AVX2 optimized Fletcher-4 computation. - Fastest routines selected on module load (benchmark). - Test case for Fletcher-4 added to ztest. New zcommon module parameters: - zfs_fletcher_4_impl (str): selects the implementation to use. "fastest" - use the fastest version available "cycle" - cycle trough all available impl for ztest "scalar" - use the original version "avx2" - new AVX2 implementation if available Performance comparison (Intel i7 CPU, 1MB data buffers): - Scalar: 4216 MB/s - AVX2: 14499 MB/s See contents of `/sys/module/zcommon/parameters/zfs_fletcher_4_impl` to get list of supported values. If an implementation is not supported on the system, it will not be shown. Currently selected option is enclosed in `[]`. Signed-off-by: Jinshan Xiong <jinshan.xiong@intel.com> Signed-off-by: Andreas Dilger <andreas.dilger@intel.com> Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov> Closes #4330
129 lines
1.9 KiB
Makefile
129 lines
1.9 KiB
Makefile
include $(top_srcdir)/config/Rules.am
|
|
|
|
VPATH = \
|
|
$(top_srcdir)/module/zfs \
|
|
$(top_srcdir)/module/zcommon \
|
|
$(top_srcdir)/lib/libzpool
|
|
|
|
AM_CFLAGS += $(DEBUG_STACKFLAGS) $(FRAME_LARGER_THAN)
|
|
|
|
DEFAULT_INCLUDES += \
|
|
-I$(top_srcdir)/include \
|
|
-I$(top_srcdir)/lib/libspl/include
|
|
|
|
lib_LTLIBRARIES = libzpool.la
|
|
|
|
USER_C = \
|
|
kernel.c \
|
|
taskq.c \
|
|
util.c
|
|
|
|
KERNEL_C = \
|
|
zfs_comutil.c \
|
|
zfs_deleg.c \
|
|
zfs_fletcher.c \
|
|
zfs_fletcher_intel.c \
|
|
zfs_namecheck.c \
|
|
zfs_prop.c \
|
|
zfs_uio.c \
|
|
zpool_prop.c \
|
|
zprop_common.c \
|
|
arc.c \
|
|
blkptr.c \
|
|
bplist.c \
|
|
bpobj.c \
|
|
bptree.c \
|
|
bqueue.c \
|
|
dbuf.c \
|
|
dbuf_stats.c \
|
|
ddt.c \
|
|
ddt_zap.c \
|
|
dmu.c \
|
|
dmu_diff.c \
|
|
dmu_object.c \
|
|
dmu_objset.c \
|
|
dmu_send.c \
|
|
dmu_traverse.c \
|
|
dmu_tx.c \
|
|
dmu_zfetch.c \
|
|
dnode.c \
|
|
dnode_sync.c \
|
|
dsl_bookmark.c \
|
|
dsl_dataset.c \
|
|
dsl_deadlist.c \
|
|
dsl_deleg.c \
|
|
dsl_dir.c \
|
|
dsl_pool.c \
|
|
dsl_prop.c \
|
|
dsl_scan.c \
|
|
dsl_synctask.c \
|
|
dsl_destroy.c \
|
|
dsl_userhold.c \
|
|
fm.c \
|
|
gzip.c \
|
|
lzjb.c \
|
|
lz4.c \
|
|
metaslab.c \
|
|
multilist.c \
|
|
pathname.c \
|
|
range_tree.c \
|
|
refcount.c \
|
|
rrwlock.c \
|
|
sa.c \
|
|
sha256.c \
|
|
spa.c \
|
|
spa_boot.c \
|
|
spa_config.c \
|
|
spa_errlog.c \
|
|
spa_history.c \
|
|
spa_misc.c \
|
|
spa_stats.c \
|
|
space_map.c \
|
|
space_reftree.c \
|
|
txg.c \
|
|
trace.c \
|
|
uberblock.c \
|
|
unique.c \
|
|
vdev.c \
|
|
vdev_cache.c \
|
|
vdev_file.c \
|
|
vdev_label.c \
|
|
vdev_mirror.c \
|
|
vdev_missing.c \
|
|
vdev_queue.c \
|
|
vdev_raidz.c \
|
|
vdev_root.c \
|
|
zap.c \
|
|
zap_leaf.c \
|
|
zap_micro.c \
|
|
zfeature.c \
|
|
zfeature_common.c \
|
|
zfs_byteswap.c \
|
|
zfs_debug.c \
|
|
zfs_fm.c \
|
|
zfs_fuid.c \
|
|
zfs_sa.c \
|
|
zfs_znode.c \
|
|
zfs_rlock.c \
|
|
zil.c \
|
|
zio.c \
|
|
zio_checksum.c \
|
|
zio_compress.c \
|
|
zio_inject.c \
|
|
zle.c \
|
|
zrlock.c
|
|
|
|
nodist_libzpool_la_SOURCES = \
|
|
$(USER_C) \
|
|
$(KERNEL_C)
|
|
|
|
libzpool_la_LIBADD = \
|
|
$(top_builddir)/lib/libunicode/libunicode.la \
|
|
$(top_builddir)/lib/libuutil/libuutil.la \
|
|
$(top_builddir)/lib/libnvpair/libnvpair.la
|
|
|
|
libzpool_la_LIBADD += $(ZLIB)
|
|
libzpool_la_LDFLAGS = -version-info 2:0:0
|
|
|
|
EXTRA_DIST = $(USER_C)
|