vlib_buffer_validate_alloc_free() should only be called with debug builds to 
debug buffer allocation issues.
Debug builds are slow, because there is no optimizations and lots of additional 
checks.
Please make sure you are using a release build before benchmarking (eg. make 
build-release).

Best
ben

> -----Original Message-----
> From: vpp-dev@lists.fd.io <vpp-dev@lists.fd.io> On Behalf Of zheng jie
> Sent: Tuesday, August 23, 2022 9:23
> To: vpp-dev@lists.fd.io
> Subject: [vpp-dev] vlib buffer allocate/free consumes too many CPU cycles
> 
> hi team,
> 
> recently I am doing plugin dev with VPP,  I found all threads are spending
> too many CPU cycles with locking/unlocking (with one numa
> node)buffer_main's buffer_known_hash_lockp,  it hinders burst performance.
> 
> ```
> +    6.00%  vpp_wk_4         libvlib.so.22.02.0        [.]
> clib_spinlock_lock
> +    5.33%  vpp_wk_7         libvlib.so.22.02.0        [.]
> clib_spinlock_lock
> +    5.29%  vpp_wk_9         libvlib.so.22.02.0        [.]
> clib_spinlock_lock
> +    5.18%  vpp_wk_2         libvlib.so.22.02.0        [.]
> clib_spinlock_lock
> +    5.05%  vpp_wk_0         libvlib.so.22.02.0        [.]
> clib_spinlock_lock
> +    4.95%  vpp_wk_10        libvlib.so.22.02.0        [.]
> clib_spinlock_lock
> +    4.92%  vpp_wk_6         libvlib.so.22.02.0        [.]
> clib_spinlock_lock
> +    4.90%  vpp_wk_3         libvlib.so.22.02.0        [.]
> clib_spinlock_lock
> +    4.63%  vpp_wk_8         libvlib.so.22.02.0        [.]
> clib_spinlock_lock
> +    4.41%  vpp_wk_5         libvlib.so.22.02.0        [.]
> clib_spinlock_lock
> +    4.33%  vpp_wk_1         libvlib.so.22.02.0        [.]
> clib_spinlock_lock
> +    4.24%  vpp_wk_11        libvlib.so.22.02.0        [.]
> clib_spinlock_lock
> +    2.27%  vpp_main         libvlib.so.22.02.0        [.] dispatch_node
> +    0.89%  vpp_main         libvlib.so.22.02.0        [.]
> vlib_main_or_worker_loop
> +    0.85%  vpp_main         libvlib.so.22.02.0        [.] vlib_get_node
> +    0.83%  vpp_wk_11        libvlib.so.22.02.0        [.] vlib_frame_free
> +    0.78%  vpp_wk_1         libvlib.so.22.02.0        [.] vlib_frame_free
> +    0.65%  vpp_wk_5         libvlib.so.22.02.0        [.] vlib_frame_free
> +    0.51%  vpp_main         vcgnat_dp_plugin.so       [.]
> node_channel_tx_process
> 
> 
> ```
> 
> the calling graph:
> 
> -    5.33%  vpp_wk_7         libvlib.so.22.02.0        [.]
> clib_spinlock_lock
>    - clib_spinlock_lock
>       - 4.89% vlib_buffer_is_known
>          - vlib_buffer_validate_alloc_free
>             + 1.94% vlib_buffer_alloc_from_pool
>             + 1.45% vlib_buffer_pool_put
>             + 1.42% vlib_buffer_alloc_from_pool
> -    5.29%  vpp_wk_9         libvlib.so.22.02.0        [.]
> clib_spinlock_lock
>    - clib_spinlock_lock
>       - 4.89% vlib_buffer_is_known
>          - vlib_buffer_validate_alloc_free
>             + 2.14% vlib_buffer_alloc_from_pool
>             + 1.40% vlib_buffer_alloc_from_pool
>             + 1.28% vlib_buffer_pool_put
> +    5.18%  vpp_wk_2         libvlib.so.22.02.0        [.]
> clib_spinlock_lock
> -    5.05%  vpp_wk_0         libvlib.so.22.02.0        [.]
> clib_spinlock_lock
>    - clib_spinlock_lock
>       - 4.57% vlib_buffer_is_known
>          - vlib_buffer_validate_alloc_free
>             + 2.25% vlib_buffer_alloc_from_pool
>             + 1.20% vlib_buffer_pool_put
>             + 1.03% vlib_buffer_alloc_from_pool
> 
> 
> 
> thanks,
> Looking forward to your help.
> 

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#21811): https://lists.fd.io/g/vpp-dev/message/21811
Mute This Topic: https://lists.fd.io/mt/93199622/21656
Group Owner: vpp-dev+ow...@lists.fd.io
Unsubscribe: https://lists.fd.io/g/vpp-dev/leave/1480452/21656/631435203/xyzzy 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to