| 6addb781 | 24-Oct-2024 |
Vladimir Medvedkin <vladimir.medvedkin@intel.com> |
hash: add RSS hash key generation
Currently the only way to have non static Toeplitz hash key is to generate it randomly. Such a key may not guarantee good packets distribution, especially if there
hash: add RSS hash key generation
Currently the only way to have non static Toeplitz hash key is to generate it randomly. Such a key may not guarantee good packets distribution, especially if there are small number of flows.
This patch implements Toeplitz hash key generation function using the new polynomial generation function. It may improve Toeplitz hash key with respect to hash values distribution.
Signed-off-by: Vladimir Medvedkin <vladimir.medvedkin@intel.com> Acked-by: Stephen Hemminger <stephen@networkplumber.org>
show more ...
|
| a40ac9bc | 08-Jul-2024 |
Yoan Picchi <yoan.picchi@arm.com> |
hash: add SVE support for bulk key lookup
Implemented SVE code for comparing signatures in bulk lookup.
New SVE code is ~5% slower than optimized NEON for N2 processor for 128b vectors.
Signed-off
hash: add SVE support for bulk key lookup
Implemented SVE code for comparing signatures in bulk lookup.
New SVE code is ~5% slower than optimized NEON for N2 processor for 128b vectors.
Signed-off-by: Yoan Picchi <yoan.picchi@arm.com> Signed-off-by: Harjot Singh <harjot.singh@arm.com> Reviewed-by: Nathan Brown <nathan.brown@arm.com> Reviewed-by: Ruifeng Wang <ruifeng.wang@arm.com>
show more ...
|
| 141b7947 | 08-Jul-2024 |
Yoan Picchi <yoan.picchi@arm.com> |
hash: hide compare signature function enum
enum rte_hash_sig_compare_function is only used internally. This patch moves it out of the public API. Doing so, there is no reason to keep RTE_HASH_COMPAR
hash: hide compare signature function enum
enum rte_hash_sig_compare_function is only used internally. This patch moves it out of the public API. Doing so, there is no reason to keep RTE_HASH_COMPARE_NUM.
Signed-off-by: Yoan Picchi <yoan.picchi@arm.com>
show more ...
|
| cf566e26 | 08-Jul-2024 |
Yoan Picchi <yoan.picchi@arm.com> |
hash: optimize compare signature for NEON
Upon a successful comparison, NEON sets all the bits in the lane to 1. We can skip shifting by simply masking with specific masks.
Signed-off-by: Yoan Picc
hash: optimize compare signature for NEON
Upon a successful comparison, NEON sets all the bits in the lane to 1. We can skip shifting by simply masking with specific masks.
Signed-off-by: Yoan Picchi <yoan.picchi@arm.com> Reviewed-by: Ruifeng Wang <ruifeng.wang@arm.com> Reviewed-by: Nathan Brown <nathan.brown@arm.com>
show more ...
|
| ef801b59 | 08-Jul-2024 |
Yoan Picchi <yoan.picchi@arm.com> |
hash: pack the hitmask for hash in bulk lookup
Current hitmask includes padding due to Intel's SIMD implementation detail. This patch allows non Intel SIMD implementations to benefit from a dense hi
hash: pack the hitmask for hash in bulk lookup
Current hitmask includes padding due to Intel's SIMD implementation detail. This patch allows non Intel SIMD implementations to benefit from a dense hitmask. In addition, the new dense hitmask interweaves the primary and secondary matches which allows a better cache usage and enables future improvements for the SIMD implementations. The default non SIMD path now uses this dense mask.
Signed-off-by: Yoan Picchi <yoan.picchi@arm.com> Reviewed-by: Ruifeng Wang <ruifeng.wang@arm.com> Reviewed-by: Nathan Brown <nathan.brown@arm.com>
show more ...
|
| 567bb951 | 15-May-2024 |
Abdullah Ömer Yamaç <aomeryamac@gmail.com> |
hash: reclaim RCU defer queue
This patch adds a new feature to the hash library to allow the user to reclaim the defer queue. This is useful when the user wants to force reclaim resources that are n
hash: reclaim RCU defer queue
This patch adds a new feature to the hash library to allow the user to reclaim the defer queue. This is useful when the user wants to force reclaim resources that are not being used. This API is only available if the RCU is enabled.
Signed-off-by: Abdullah Ömer Yamaç <aomeryamac@gmail.com> Reviewed-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
show more ...
|
| 8f36e533 | 06-Jul-2023 |
Conor Fogarty <conor.fogarty@intel.com> |
hash: check name when creating a hash
Add NULL pointer check to params->name, which is later copied into the hash datastructure. Without this check the code segfaults on the strlcpy() of a NULL poin
hash: check name when creating a hash
Add NULL pointer check to params->name, which is later copied into the hash datastructure. Without this check the code segfaults on the strlcpy() of a NULL pointer.
Fixes: 48a399119619 ("hash: replace with cuckoo hash implementation") Cc: stable@dpdk.org
Signed-off-by: Conor Fogarty <conor.fogarty@intel.com> Acked-by: Vladimir Medvedkin <vladimir.medvedkin@intel.com>
show more ...
|
| 77e63757 | 22-May-2024 |
Tyler Retzlaff <roretzla@linux.microsoft.com> |
hash: provide CRC32 functions based on intrinsics
MSVC does not support inline ASM so replace CRC32 inline function implementations with intrinsics compatible with all toolchains.
Signed-off-by: Ty
hash: provide CRC32 functions based on intrinsics
MSVC does not support inline ASM so replace CRC32 inline function implementations with intrinsics compatible with all toolchains.
Signed-off-by: Tyler Retzlaff <roretzla@linux.microsoft.com> Acked-by: Stephen Hemminger <stephen@networkplumber.org> Acked-by: Morten Brørup <mb@smartsharesystems.com>
show more ...
|