diff options
author | Gayatri Kammela <gayatri.kammela@intel.com> | 2016-08-12 18:03:20 -0700 |
---|---|---|
committer | Shaohua Li <shli@fb.com> | 2016-09-21 09:09:44 -0700 |
commit | 13c520b2993c9faae6770264d33ff1e1ea4c2ceb (patch) | |
tree | a366455fe39c82e9c522151fbcd8c73c1636d65e /lib/raid6/algos.c | |
parent | e0a491c1296874a1aca51cc68452f12a4d950029 (diff) |
lib/raid6: Add AVX512 optimized recovery functions
Optimize RAID6 recovery functions to take advantage of
the 512-bit ZMM integer instructions introduced in AVX512.
AVX512 optimized recovery functions, which is simply based
on recov_avx2.c written by Jim Kukunas
This patch was tested and benchmarked before submission on
a hardware that has AVX512 flags to support such instructions
Cc: Jim Kukunas <james.t.kukunas@linux.intel.com>
Cc: H. Peter Anvin <hpa@zytor.com>
Cc: Fenghua Yu <fenghua.yu@intel.com>
Signed-off-by: Megha Dey <megha.dey@linux.intel.com>
Signed-off-by: Gayatri Kammela <gayatri.kammela@intel.com>
Reviewed-by: Fenghua Yu <fenghua.yu@intel.com>
Signed-off-by: Shaohua Li <shli@fb.com>
Diffstat (limited to 'lib/raid6/algos.c')
-rw-r--r-- | lib/raid6/algos.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/raid6/algos.c b/lib/raid6/algos.c index f5f090c52dd9..149d947a4fec 100644 --- a/lib/raid6/algos.c +++ b/lib/raid6/algos.c @@ -98,6 +98,9 @@ void (*raid6_datap_recov)(int, size_t, int, void **); EXPORT_SYMBOL_GPL(raid6_datap_recov); const struct raid6_recov_calls *const raid6_recov_algos[] = { +#ifdef CONFIG_AS_AVX512 + &raid6_recov_avx512, +#endif #ifdef CONFIG_AS_AVX2 &raid6_recov_avx2, #endif |