numam-dpdk/app
Pablo de Lara 5915699153 hash: fix scaling by reducing contention
If using multiple cores on a system with hardware transactional
memory support, thread scaling does not work, as there was a single
point in the hash library which is a bottleneck for all threads,
which is the "free_slots" ring, which stores all the indices of
the free slots in the table.

This patch fixes the problem, by creating a local cache per logical core,
which stores locally indices of free slots,
so most times, writer threads will not interfere each other.

Fixes: 48a3991196 ("hash: replace with cuckoo hash implementation")

Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
Acked-by: Bruce Richardson <bruce.richardson@intel.com>
2015-11-04 01:04:10 +01:00
..
cmdline_test app: fix whitespace 2015-06-12 11:10:10 +02:00
proc_info app: replace dump_cfg by proc_info 2015-07-17 02:26:38 +02:00
test hash: fix scaling by reducing contention 2015-11-04 01:04:10 +01:00
test-acl acl: remove old API 2015-09-03 19:22:48 +02:00
test-pipeline port: move metadata offset reference at mbuf head 2015-10-19 17:00:36 +02:00
test-pmd app/testpmd: add command to select filtering GRE key size 2015-11-04 00:45:54 +01:00
Makefile app: replace dump_cfg by proc_info 2015-07-17 02:26:38 +02:00