eal/x86: optimize memcpy for AVX512 platforms
authorZhihong Wang <zhihong.wang@intel.com>
Mon, 18 Jan 2016 03:05:12 +0000 (22:05 -0500)
committerThomas Monjalon <thomas.monjalon@6wind.com>
Wed, 27 Jan 2016 20:14:52 +0000 (21:14 +0100)
commit9484092baad32c5fbd181670df894c30838988b1
tree22475d8fe9d5d34812983d0abdfd4f3f5ff6873a
parent3934bb741354eb18967eb55d5cae36e0f9bc7576
eal/x86: optimize memcpy for AVX512 platforms

Implement AVX512 memcpy and choose the right implementation based on
predefined macros, to make full utilization of hardware resources and
deliver high performance.

In current DPDK, memcpy holds a large proportion of execution time in
libs like Vhost, especially for large packets, and this patch can bring
considerable benefits for AVX512 platforms.

The implementation is based on the current DPDK memcpy framework, some
background introduction can be found in these threads:
http://dpdk.org/ml/archives/dev/2014-November/008158.html
http://dpdk.org/ml/archives/dev/2015-January/011800.html

Signed-off-by: Zhihong Wang <zhihong.wang@intel.com>
lib/librte_eal/common/include/arch/x86/rte_memcpy.h