[dts] [PATCH v1] test_plans: add packed ring vectorized case for loopback_virtio_user_server_mode test

Tu, Lijuan lijuan.tu at intel.com
Mon Apr 20 04:17:51 CEST 2020


Applied, thanks

> -----Original Message-----
> From: dts [mailto:dts-bounces at dpdk.org] On Behalf Of Yinan
> Sent: Friday, April 10, 2020 4:31 AM
> To: dts at dpdk.org
> Cc: Wang, Yinan <yinan.wang at intel.com>
> Subject: [dts] [PATCH v1] test_plans: add packed ring vectorized case for
> loopback_virtio_user_server_mode test
> 
> From: Wang Yinan <yinan.wang at intel.com>
> 
> Signed-off-by: Wang Yinan <yinan.wang at intel.com>
> ---
>  ...back_virtio_user_server_mode_test_plan.rst | 138 ++++++++++++++----
>  1 file changed, 107 insertions(+), 31 deletions(-)
> 
> diff --git a/test_plans/loopback_virtio_user_server_mode_test_plan.rst
> b/test_plans/loopback_virtio_user_server_mode_test_plan.rst
> index ebcbacb..2716c91 100644
> --- a/test_plans/loopback_virtio_user_server_mode_test_plan.rst
> +++ b/test_plans/loopback_virtio_user_server_mode_test_plan.rst
> @@ -37,7 +37,11 @@ vhost/virtio-user loopback server mode test plan
> Virtio-user server mode is a feature to enable virtio-user as the server, vhost
> as the client, thus after vhost-user is killed then relaunched,  virtio-user can
> reconnect back to vhost-user again; at another hand, virtio-user also can
> reconnect back to vhost-user after virtio-user is killed.
>  This feature test need cover different rx/tx paths with virtio 1.0 and virtio 1.1,
> includes split ring mergeable, non-mergeable, inorder mergeable, -inorder
> non-mergeable, vector_rx path and packed ring mergeable, non-mergeable,
> inorder non-mergeable, inorder mergeable path.
> +inorder non-mergeable, vector_rx path and packed ring mergeable, non-
> mergeable, inorder non-mergeable, inorder mergeable, vectorized path.
> +Note: Packed virtqueue vectorized path need below three initial
> requirements:
> +    1. AVX512 is allowed in config file and supported by compiler
> +    2. Host cpu support AVX512F
> +    3. ring size is power of two
> 
>  Test Case 1: Basic test for packed ring server mode
> ===================================================
> @@ -442,7 +446,7 @@ Test Case 7: loopback reconnect test with split ring
> vector_rx path and server m
>        testpmd>stop
> 
>  Test Case 8: loopback reconnect test with packed ring mergeable path and
> server mode -
> ================================================================
> ====================
> +===============================================================
> ========
> +============
> 
>  1. launch vhost as client mode with 2 queues::
> 
> @@ -503,18 +507,18 @@ Test Case 8: loopback reconnect test with packed
> ring mergeable path and server
> 
>  10. Port restart at vhost side by below command and re-calculate the
> average throughput::
> 
> -     testpmd>stop
> -     testpmd>port stop 0
> -     testpmd>port start 0
> -     testpmd>start tx_first 32
> -     testpmd>show port stats all
> +    testpmd>stop
> +    testpmd>port stop 0
> +    testpmd>port start 0
> +    testpmd>start tx_first 32
> +    testpmd>show port stats all
> 
>  11. Check each RX/TX queue has packets::
> 
> -     testpmd>stop
> +    testpmd>stop
> 
>  Test Case 9: loopback reconnect test with packed ring non-mergeable path
> and server mode -
> ================================================================
> ========================
> +===============================================================
> ========
> +================
> 
>  1. launch vhost as client mode with 2 queues::
> 
> @@ -575,18 +579,18 @@ Test Case 9: loopback reconnect test with packed
> ring non-mergeable path and ser
> 
>  10. Port restart at vhost side by below command and re-calculate the
> average throughput::
> 
> -     testpmd>stop
> -     testpmd>port stop 0
> -     testpmd>port start 0
> -     testpmd>start tx_first 32
> -     testpmd>show port stats all
> +    testpmd>stop
> +    testpmd>port stop 0
> +    testpmd>port start 0
> +    testpmd>start tx_first 32
> +    testpmd>show port stats all
> 
>  11. Check each RX/TX queue has packets::
> 
> -     testpmd>stop
> +    testpmd>stop
> 
>  Test Case 10: loopback reconnect test with packed ring inorder mergeable
> path and server mode -
> ================================================================
> =============================
> +===============================================================
> ========
> +====================
> 
>  1. launch vhost as client mode with 2 queues::
> 
> @@ -647,18 +651,18 @@ Test Case 10: loopback reconnect test with packed
> ring inorder mergeable path an
> 
>  10. Port restart at vhost side by below command and re-calculate the
> average throughput::
> 
> -     testpmd>stop
> -     testpmd>port stop 0
> -     testpmd>port start 0
> -     testpmd>start tx_first 32
> -     testpmd>show port stats all
> +    testpmd>stop
> +    testpmd>port stop 0
> +    testpmd>port start 0
> +    testpmd>start tx_first 32
> +    testpmd>show port stats all
> 
>  11. Check each RX/TX queue has packets::
> 
> -     testpmd>stop
> +    testpmd>stop
> 
>  Test Case 11: loopback reconnect test with packed ring inorder non-
> mergeable path and server mode -
> ================================================================
> =================================
> +===============================================================
> ========
> +========================
> 
>  1. launch vhost as client mode with 2 queues::
> 
> @@ -671,7 +675,79 @@ Test Case 11: loopback reconnect test with packed
> ring inorder non-mergeable pat  2. Launch virtio-user as server mode with 2
> queues::
> 
>      ./testpmd -n 4 -l 5-7 --socket-mem 1024,1024 --legacy-mem --no-pci --file-
> prefix=virtio \
> -    --vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-
> net,server=1,queues=2,packed_vq=1,mrg_rxbuf=0,in_order=1 \
> +    --vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-
> net,server=1,queues=2,packed_vq=1,mrg_rxbuf=0,in_order=1,packed_vec=1
> \
> +    -- -i --rx-offloads=0x10 --enable-hw-vlan-strip --rss-ip --nb-cores=2 --rxq=2
> --txq=2
> +    >set fwd mac
> +    >start tx_first 32
> +
> +3. Quit vhost side testpmd, check the virtio-user side link status::
> +
> +    testpmd> show port info 0
> +    #it should show "down"
> +
> +4. Relaunch vhost and send packets::
> +
> +    ./testpmd -c 0xe -n 4 --socket-mem 1024,1024 --legacy-mem --no-pci --
> file-prefix=vhost \
> +    --vdev 'eth_vhost0,iface=vhost-net,client=1,queues=2' -- -i --nb-cores=2 --
> rxq=2 --txq=2
> +    >set fwd mac
> +    >start tx_first 32
> +
> +5. Check the virtio-user side link status and run below command to get
> throughput,verify the loopback throughput is not zero::
> +
> +    testpmd> show port info 0
> +    #it should show up"
> +    testpmd>show port stats all
> +
> +6. Check each RX/TX queue has packets::
> +
> +    testpmd>stop
> +
> +7. Quit virtio-user side testpmd, check the vhost side link status::
> +
> +    testpmd> show port info 0
> +    #it should show "down"
> +
> +8. Relaunch virtio-user and send packets::
> +
> +    ./testpmd -n 4 -l 5-7 --socket-mem 1024,1024 --legacy-mem --no-pci --file-
> prefix=virtio \
> +    --vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-
> net,server=1,queues=2,packed_vq=1,mrg_rxbuf=0,in_order=1,packed_vec=1
> \
> +    -- -i --rx-offloads=0x10 --enable-hw-vlan-strip --rss-ip --nb-cores=2 --rxq=2
> --txq=2
> +    >set fwd mac
> +    >start tx_first 32
> +
> +9. Check the vhost side link status and run below command to get
> throughput, verify the loopback throughput is not zero::
> +
> +    testpmd> show port info 0
> +    #it should show up"
> +    testpmd>show port stats all
> +
> +10. Port restart at vhost side by below command and re-calculate the
> average throughput::
> +
> +    testpmd>stop
> +    testpmd>port stop 0
> +    testpmd>port start 0
> +    testpmd>start tx_first 32
> +    testpmd>show port stats all
> +
> +11. Check each RX/TX queue has packets::
> +
> +    testpmd>stop
> +
> +Test Case 12: loopback reconnect test with packed ring vectorized path
> +and server mode
> +===============================================================
> ========
> +================
> +
> +1. launch vhost as client mode with 2 queues::
> +
> +    rm -rf vhost-net*
> +    ./testpmd -c 0xe -n 4 --log-level=pmd.net.vhost.driver,8 --no-pci --file-
> prefix=vhost \
> +    --vdev 'eth_vhost0,iface=vhost-net,client=1,queues=2' -- -i --nb-cores=2 --
> rxq=2 --txq=2
> +    >set fwd mac
> +    >start
> +
> +2. Launch virtio-user as server mode with 2 queues::
> +
> +    ./testpmd -n 4 -l 5-7 --log-level=pmd.net.virtio.driver,8 --no-pci --file-
> prefix=virtio \
> +
> + --vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,server=
> + 1,queues=2,packed_vq=1,mrg_rxbuf=0,in_order=1,packed_vec=1 \
>      -- -i --tx-offloads=0x0 --enable-hw-vlan-strip --rss-ip --nb-cores=2 --rxq=2 -
> -txq=2
>      >set fwd mac
>      >start tx_first 32
> @@ -706,7 +782,7 @@ Test Case 11: loopback reconnect test with packed
> ring inorder non-mergeable pat  8. Relaunch virtio-user and send packets::
> 
>      ./testpmd -n 4 -l 5-7 --socket-mem 1024,1024 --legacy-mem --no-pci --file-
> prefix=virtio \
> -    --vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-
> net,server=1,queues=2,packed_vq=1,mrg_rxbuf=0,in_order=1 \
> +
> + --vdev=net_virtio_user0,mac=00:01:02:03:04:05,path=./vhost-net,server=
> + 1,queues=2,packed_vq=1,mrg_rxbuf=0,in_order=1,packed_vec=1 \
>      -- -i --tx-offloads=0x0 --enable-hw-vlan-strip --rss-ip --nb-cores=2 --rxq=2 -
> -txq=2
>      >set fwd mac
>      >start tx_first 32
> @@ -719,12 +795,12 @@ Test Case 11: loopback reconnect test with packed
> ring inorder non-mergeable pat
> 
>  10. Port restart at vhost side by below command and re-calculate the
> average throughput::
> 
> -     testpmd>stop
> -     testpmd>port stop 0
> -     testpmd>port start 0
> -     testpmd>start tx_first 32
> -     testpmd>show port stats all
> +    testpmd>stop
> +    testpmd>port stop 0
> +    testpmd>port start 0
> +    testpmd>start tx_first 32
> +    testpmd>show port stats all
> 
>  11. Check each RX/TX queue has packets::
> 
> -     testpmd>stop
> \ No newline at end of file
> +    testpmd>stop
> \ No newline at end of file
> --
> 2.17.1



More information about the dts mailing list