numam-dpdk/lib
Konstantin Ananyev 5dd71363bf acl: add AVX2 classify method
Introduce new classify() method that uses AVX2 instructions.

>From my measurements:
On HSW boards when processing >= 16 packets per call,
AVX2 method outperforms it's SSE counterpart by 10-25%,
(depending on the ruleset).

When build with the compilers that don't support AVX2 instructions,
make rte_acl_classify_avx2() do nothing and return an error.
At runtime, if librte_acl was build with the compiler that supports AVX2,
this method is selected as default one on HW that supports AVX2.

Signed-off-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
Acked-by: Neil Horman <nhorman@tuxdriver.com>
2015-01-28 17:11:25 +01:00
..
librte_acl acl: add AVX2 classify method 2015-01-28 17:11:25 +01:00
librte_cfgfile cfgfile: fix read of empty file 2014-12-17 00:40:37 +01:00
librte_cmdline cmdline: fix overflow on bsd 2014-12-05 16:54:53 +01:00
librte_distributor lib: fix cache alignment of structures 2014-12-11 01:42:02 +01:00
librte_eal eal: introduce ymm type for AVX 256-bit 2015-01-28 17:11:25 +01:00
librte_ether ethdev: remove old ethertype filter 2015-01-20 09:14:53 +01:00
librte_hash add prefix to cache line macros 2014-11-27 16:21:11 +01:00
librte_ip_frag ip_frag: fix header for C++ 2015-01-27 12:32:45 +01:00
librte_ivshmem eal: deprecate rte_snprintf 2014-06-27 02:31:24 +02:00
librte_kni kni: add build-time checks for mbuf mapping 2014-11-10 10:28:46 +01:00
librte_kvargs kvargs: fix build with gcc 4.5.1 2014-06-17 19:01:59 +02:00
librte_lpm eal: introduce ymm type for AVX 256-bit 2015-01-28 17:11:25 +01:00
librte_malloc mem: fix alignment parameter check 2015-01-19 09:36:55 +01:00
librte_mbuf lib: fix cache alignment of structures 2014-12-11 01:42:02 +01:00
librte_mempool mempool: avoid dump crash with null pointer 2014-11-27 17:30:20 +01:00
librte_meter remove trailing whitespaces 2014-06-11 00:29:34 +02:00
librte_net bond: fix vlan flag interpretation 2015-01-15 13:41:39 +01:00
librte_pipeline add prefix to cache line macros 2014-11-27 16:21:11 +01:00
librte_pmd_af_packet ethdev: remove useless stats zeroing in drivers 2015-01-27 12:36:23 +01:00
librte_pmd_bond ethdev: remove useless stats zeroing in drivers 2015-01-27 12:36:23 +01:00
librte_pmd_e1000 ethdev: remove useless stats zeroing in drivers 2015-01-27 12:36:23 +01:00
librte_pmd_enic ethdev: remove useless stats zeroing in drivers 2015-01-27 12:36:23 +01:00
librte_pmd_i40e ethdev: remove useless stats zeroing in drivers 2015-01-27 12:36:23 +01:00
librte_pmd_ixgbe ixgbe: add queue start failure check 2015-01-27 15:09:29 +01:00
librte_pmd_pcap ethdev: remove useless stats zeroing in drivers 2015-01-27 12:36:23 +01:00
librte_pmd_ring ethdev: remove useless stats zeroing in drivers 2015-01-27 12:36:23 +01:00
librte_pmd_virtio add prefix to cache line macros 2014-11-27 16:21:11 +01:00
librte_pmd_vmxnet3 vmxnet3: fix default Tx configuration 2014-12-17 01:04:06 +01:00
librte_pmd_xenvirt xenvirt: fix build break on ethernet address parsing 2014-12-18 22:52:39 +01:00
librte_port lib: fix cache alignment of structures 2014-12-11 01:42:02 +01:00
librte_power power: fix link with application 2015-01-27 12:30:36 +01:00
librte_ring ring: fix return type in enqueue and dequeue burst functions 2014-12-17 00:40:37 +01:00
librte_sched add prefix to cache line macros 2014-11-27 16:21:11 +01:00
librte_table lib: fix cache alignment of structures 2014-12-11 01:42:02 +01:00
librte_timer fix unix permissions for source files 2014-08-28 17:04:01 +02:00
librte_vhost vhost: add interface name for virtio 2014-12-18 22:52:38 +01:00
Makefile eal: no more bare metal environment 2014-11-27 13:09:51 +01:00