70. vhost/virtio pvp multi-paths performance test plan¶
Benchmark PVP multi-paths performance with 9 tx/rx paths. Includes mergeable, non-mergeable, vector_rx, inorder mergeable, inorder non-mergeable, virtio 1.1 mergeable, virtio 1.1 non-mergeable, virtio 1.1 inorder mergeable, virtio 1.1 inorder non-mergeable path. Give 1 core for vhost and virtio respectively.
70.1. Test flow¶
TG –> NIC –> Vhost –> Virtio–> Vhost –> NIC –> TG
70.2. Test Case 1: pvp test with virtio 1.1 mergeable path¶
Bind one port to igb_uio, then launch vhost by below command:
rm -rf vhost-net* ./testpmd -n 4 -l 2-3 --socket-mem 1024,1024 --legacy-mem \ --file-prefix=vhost --vdev 'net_vhost0,iface=vhost-net,queues=1,client=0' \ -- -i --nb-cores=1 --txd=1024 --rxd=1024 testpmd>set fwd mac testpmd>start
Launch virtio-user by below command:
./testpmd -n 4 -l 5-6 --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,packed_vq=1,mrg_rxbuf=1,in_order=0 \ -- -i --tx-offloads=0x0 --enable-hw-vlan-strip --nb-cores=1 --txd=1024 --rxd=1024 >set fwd mac >start
Send packet with packet generator with different packet size,includes [64, 128, 256, 512, 1024, 1518], check the throughput with below command:
testpmd>show port stats all
70.3. Test Case 2: pvp test with virtio 1.1 non-mergeable path¶
Bind one port to igb_uio, then launch vhost by below command:
rm -rf vhost-net* ./testpmd -n 4 -l 2-3 --socket-mem 1024,1024 --legacy-mem \ --file-prefix=vhost --vdev 'net_vhost0,iface=vhost-net,queues=1,client=0' \ -- -i --nb-cores=1 --txd=1024 --rxd=1024 testpmd>set fwd mac testpmd>start
Launch virtio-user by below command:
./testpmd -n 4 -l 5-6 --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,packed_vq=1,mrg_rxbuf=0,in_order=0 \ -- -i --tx-offloads=0x0 --enable-hw-vlan-strip --nb-cores=1 --txd=1024 --rxd=1024 >set fwd mac >start
Send packet with packet generator with different packet size,includes [64, 128, 256, 512, 1024, 1518], check the throughput with below command:
testpmd>show port stats all
70.4. Test Case 3: pvp test with inorder mergeable path¶
Bind one port to igb_uio, then launch vhost by below command:
rm -rf vhost-net* ./testpmd -n 4 -l 2-3 --socket-mem 1024,1024 --legacy-mem \ --file-prefix=vhost --vdev 'net_vhost0,iface=vhost-net,queues=1,client=0' \ -- -i --nb-cores=1 --txd=1024 --rxd=1024 testpmd>set fwd mac testpmd>start
Launch virtio-user by below command:
./testpmd -n 4 -l 5-6 --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,in_order=1 \ -- -i --tx-offloads=0x0 --enable-hw-vlan-strip --nb-cores=1 --txd=1024 --rxd=1024 >set fwd mac >start
Send packet with packet generator with different packet size,includes [64, 128, 256, 512, 1024, 1518], check the throughput with below command:
testpmd>show port stats all
70.5. Test Case 4: pvp test with inorder non-mergeable path¶
Bind one port to igb_uio, then launch vhost by below command:
rm -rf vhost-net* ./testpmd -n 4 -l 2-4 --socket-mem 1024,1024 --legacy-mem \ --file-prefix=vhost --vdev 'net_vhost0,iface=vhost-net,queues=1,client=0' \ -- -i --nb-cores=1 --txd=1024 --rxd=1024 testpmd>set fwd mac testpmd>start
Launch virtio-user by below command:
./testpmd -n 4 -l 5-6 --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,in_order=1,mrg_rxbuf=0 \ -- -i --tx-offloads=0x0 --enable-hw-vlan-strip --nb-cores=1 --txd=1024 --rxd=1024 >set fwd mac >start
Send packet with packet generator with different packet size,includes [64, 128, 256, 512, 1024, 1518], check the throughput with below command:
testpmd>show port stats all
70.6. Test Case 5: pvp test with mergeable path¶
Bind one port to igb_uio, then launch vhost by below command:
rm -rf vhost-net* ./testpmd -n 4 -l 2-4 --socket-mem 1024,1024 --legacy-mem \ --file-prefix=vhost --vdev 'net_vhost0,iface=vhost-net,queues=1,client=0' \ -- -i --nb-cores=1 --txd=1024 --rxd=1024 testpmd>set fwd mac testpmd>start
Launch virtio-user by below command:
./testpmd -n 4 -l 5-6 --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,in_order=0,mrg_rxbuf=1 \ -- -i --tx-offloads=0x0 --enable-hw-vlan-strip --nb-cores=1 --txd=1024 --rxd=1024 >set fwd mac >start
Send packet with packet generator with different packet size,includes [64, 128, 256, 512, 1024, 1518], check the throughput with below command:
testpmd>show port stats all
70.7. Test Case 6: pvp test with non-mergeable path¶
Bind one port to igb_uio, then launch vhost by below command:
rm -rf vhost-net* ./testpmd -n 4 -l 2-4 --socket-mem 1024,1024 --legacy-mem \ --file-prefix=vhost --vdev 'net_vhost0,iface=vhost-net,queues=1,client=0' \ -- -i --nb-cores=1 --txd=1024 --rxd=1024 testpmd>set fwd mac testpmd>start
Launch virtio-user by below command:
./testpmd -n 4 -l 5-6 --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,in_order=0,mrg_rxbuf=0 \ -- -i --tx-offloads=0x0 --enable-hw-vlan-strip --nb-cores=1 --txd=1024 --rxd=1024 >set fwd mac >start
Send packet with packet generator with different packet size,includes [64, 128, 256, 512, 1024, 1518], check the throughput with below command:
testpmd>show port stats all
70.8. Test Case 7: pvp test with vector_rx path¶
Bind one port to igb_uio, then launch vhost by below command:
rm -rf vhost-net* ./testpmd -n 4 -l 2-4 --socket-mem 1024,1024 --legacy-mem \ --file-prefix=vhost --vdev 'net_vhost0,iface=vhost-net,queues=1,client=0' \ -- -i --nb-cores=1 --txd=1024 --rxd=1024 testpmd>set fwd mac testpmd>start
Launch virtio-user by below command:
./testpmd -n 4 -l 5-6 --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,in_order=0,mrg_rxbuf=0 \ -- -i --tx-offloads=0x0 --nb-cores=1 --txd=1024 --rxd=1024 >set fwd mac >start
Send packet with packet generator with different packet size,includes [64, 128, 256, 512, 1024, 1518], check the throughput with below command:
testpmd>show port stats all
70.9. Test Case 8: pvp test with virtio 1.1 inorder mergeable path¶
Bind one port to igb_uio, then launch vhost by below command:
rm -rf vhost-net* ./testpmd -n 4 -l 2-3 --socket-mem 1024,1024 --legacy-mem \ --file-prefix=vhost --vdev 'net_vhost0,iface=vhost-net,queues=1,client=0' \ -- -i --nb-cores=1 --txd=1024 --rxd=1024 testpmd>set fwd mac testpmd>start
Launch virtio-user by below command:
./testpmd -n 4 -l 5-6 --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,packed_vq=1,mrg_rxbuf=1,in_order=1 \ -- -i --tx-offloads=0x0 --enable-hw-vlan-strip --nb-cores=1 --txd=1024 --rxd=1024 >set fwd mac >start
Send packet with packet generator with different packet size,includes [64, 128, 256, 512, 1024, 1518], check the throughput with below command:
testpmd>show port stats all
70.10. Test Case 9: pvp test with virtio 1.1 inorder non-mergeable path¶
Bind one port to igb_uio, then launch vhost by below command:
rm -rf vhost-net* ./testpmd -n 4 -l 2-3 --socket-mem 1024,1024 --legacy-mem \ --file-prefix=vhost --vdev 'net_vhost0,iface=vhost-net,queues=1,client=0' \ -- -i --nb-cores=1 --txd=1024 --rxd=1024 testpmd>set fwd mac testpmd>start
Launch virtio-user by below command:
./testpmd -n 4 -l 5-6 --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,packed_vq=1,mrg_rxbuf=0,in_order=1 \ -- -i --tx-offloads=0x0 --enable-hw-vlan-strip --nb-cores=1 --txd=1024 --rxd=1024 >set fwd mac >start
Send packet with packet generator with different packet size,includes [64, 128, 256, 512, 1024, 1518], check the throughput with below command:
testpmd>show port stats all