> 
> Use rte_ring_xxx_elem_xxx APIs to replace legacy API implementation.
> This reduces code duplication and improves code maintenance.
> 
> aarch64:
> HW:N1sdp, 1 socket, 4 cores, 1 thread/core, 2.6GHz
> OS:Ubuntu 18.04.1 LTS, Kernel: 5.4.0+
> DPDK: 20.05-rc3, Configuration: arm64-n1sdp-linux-gcc
> gcc:9.2.1
> 
> $sudo ./arm64-n1sdp-linux-gcc/app/test -l 1-2
> RTE>>ring_perf_autotest
> 
> test results on aarch64 in the case of esize 4:
> 
>                                      without this patch   with this patch
> Testing burst enq/deq
> legacy APIs: SP/SC: burst (size: 8):          1.11              1.10
> legacy APIs: SP/SC: burst (size: 32):         1.95              1.97
> legacy APIs: MP/MC: burst (size: 8):          1.86              1.94
> legacy APIs: MP/MC: burst (size: 32):         2.65              2.69
> Testing bulk enq/deq
> legacy APIs: SP/SC: bulk (size: 8):           1.08              1.09
> legacy APIs: SP/SC: bulk (size: 32):          1.89              1.90
> legacy APIs: MP/MC: bulk (size: 8):           1.85              1.98
> legacy APIs: MP/MC: bulk (size: 32):          2.65              2.69
> 
> x86:
> HW: dell, CPU Intel(R) Xeon(R) Gold 6240, 2 sockets, 18 cores/socket,
> 1 thread/core, 3.3GHz
> OS: Ubuntu 20.04 LTS, Kernel: 5.4.0-37-generic
> DPDK: 20.05-rc3, Configuration: x86_64-native-linuxapp-gcc
> gcc: 9.3.0
> 
> $sudo ./x86_64-native-linuxapp-gcc/app/test -l 14,16
> RTE>>ring_perf_autotest
> 
> test results on x86 in the case of esize 4:
> 
>                                      without this patch   with this patch
> Testing burst enq/deq
> legacy APIs: SP/SC: burst (size: 8):          29.35             27.78
> legacy APIs: SP/SC: burst (size: 32):         73.11             73.39
> legacy APIs: MP/MC: burst (size: 8):          62.36             62.37
> legacy APIs: MP/MC: burst (size: 32):         101.01            101.03
> Testing bulk enq/deq
> legacy APIs: SP/SC: bulk (size: 8):           25.94             29.55
> legacy APIs: SP/SC: bulk (size: 32):          70.00             78.87
> legacy APIs: MP/MC: bulk (size: 8):           63.41             62.48
> legacy APIs: MP/MC: bulk (size: 32):          105.86            103.84
> 
> Summary:
> In aarch64 server with this patch, there is almost no performance
> difference.
> In x86 server with this patch, in some cases, the performance slightly
> improve, in other cases, the performance slightly drop.
> 
> Signed-off-by: Feifei Wang <feifei.wa...@arm.com>
> Reviewed-by: Honnappa Nagarahalli <honnappa.nagaraha...@arm.com>
> Reviewed-by: Ruifeng Wang <ruifeng.w...@arm.com>
> ---

Acked-by: Konstantin Ananyev <konstantin.anan...@intel.com>

> 2.17.1

Reply via email to