[dpdk-users] 2VMs with dpdk app-testpmd effect each other

Xu, Qian Q qian.q.xu at intel.com
Wed Sep 7 04:11:29 CEST 2016


It's not normal, and I think first we need figure out it's DPDK issue or OVS issue or some configuration issue. 
Are you using 2 10G port to inject traffic? 
What's your qemu launch commands for each VM?
Can you use "top -H" command to check the core usage when u running the case2 and case3? 


-----Original Message-----
From: $BE"3.Xl(B [mailto:kmcheng at cht.com.tw] 
Sent: Wednesday, September 7, 2016 10:04 AM
To: Xu, Qian Q <qian.q.xu at intel.com>; users at dpdk.org
Subject: RE: 2VMs with dpdk app-testpmd effect each other

So my question is : is it normal ?
Is there any way i can solve the problem?

Is the problem related to qemu-img? 
________________________________________
$BWO(B: $BE"3.Xl(B
$B4s7oF|4|(B: 2016$BG/(B9$B7n(B2$BF|(B $B2<8a(B 01:37
$B;j(B: Xu, Qian Q; users at dpdk.org
$B<g;](B: RE: 2VMs with dpdk app-testpmd effect each other

I am sure that VM1 and VM2 are using different core with different coremask setting.
Yes, I know that default fwd enging is IO fwd. And fwd engine will start while testpmd is started.

I used "stop" command to stop fwd engine inside testpmd.
The I can see effect ion on the other VM.

-----Original Message-----
From: Xu, Qian Q [mailto:qian.q.xu at intel.com]
Sent: Thursday, September 01, 2016 9:36 AM
To: $BE"3.Xl(B; users at dpdk.org
Subject: RE: 2VMs with dpdk app-testpmd effect each other

Maybe VM1 and VM2 are using the same core for the forwarding? I guess 2VMs are using the same core for fwd.
What do you mean by testpmd fwd=none, if you don't set the fwd mode, it's IO fwd.

-----Original Message-----
From: users [mailto:users-bounces at dpdk.org] On Behalf Of ???
Sent: Thursday, September 1, 2016 8:47 AM
To: users at dpdk.org
Subject: [dpdk-users] 2VMs with dpdk app-testpmd effect each other

Hi all

I am facing a wierd situation when i start testpmd app inside two VMs( Case 3 ).
Please see the following setup.


Hardware Information

System

Dell Inc. PowerEdge R630

$B!!(B

$B!!(B

BIOS

Dell Inc. version1.0.4

$B!!(B

CPU

Intel(R) Xeon(R) x86_64 E5-2630 v3 2.40 Ghz

$B!!(B

Processor(s): 16

$B!!(B

$B!!(B

Cache: 20480 KB

$B!!(B

$B!!(B

$B!!(B

Memory

Size: 16 GB*6

$B!!(B

$B!!(B

$B!!(B

$B!!(B

Type: DDR4

$B!!(B

$B!!(B

Speed: 2133MHz

$B!!(B

$B!!(B

$B!!(B

Ethernet Controller

Intel Corporation Ethernet 10G 2P X520 Adapter *2


Software information
Qemu = qemu-2.5.1.1
DPDK = dpdk-2.2.0
OVS = ovs-branch-2.5

Input stream : 10Gbps(5G with vlan 1001 and 5G with vlan 1002) which is generated by Spirent testcenter

| VM1 |       | VM2 |

 $B",(B1001$B"-(B      $B",(B1002$B"-(B
-----------------------
|    OVS        |
-----------------------
        $B",(B       $B"-(B
-----------------------
 TestCenter     |
-----------------------

ovs setup:
  modprobe openvswitch
  rm -rf /usr/local/var/run/openvswitch/*
  rm -rf /opt/ovs-vswitchd.log
  modprobe uio
  insmod $DPDK_BUILD/kmod/igb_uio.ko
  $DPDK_DIR/tools/dpdk_nic_bind.py --bind=igb_uio p3p1
  $DPDK_DIR/tools/dpdk_nic_bind.py --bind=igb_uio p3p2
  $DPDK_DIR/tools/dpdk_nic_bind.py --status
  rm /usr/local/etc/openvswitch/conf.db -rf
  mkdir -p /usr/local/etc/openvswitch
  mkdir -p /usr/local/var/run/openvswitch
  cd $OVS_DIR
  ./ovsdb/ovsdb-tool create /usr/local/etc/openvswitch/conf.db ./vswitchd/vswitch.ovsschema
  ./ovsdb/ovsdb-server --remote=punix:/usr/local/var/run/openvswitch/db.sock --remote=db:Open_vSwitch,Open_vSwitch,manager_options --private-key=db:Open_vSwitch,SSL,private_key --certificate=db:Open_vSwitch,SSL,certificate --bootstrap-ca-cert=db:Open_vSwitch,SSL,ca_cert --pidfile --detach

  ./utilities/ovs-vsctl --no-wait init
  ./utilities/ovs-vsctl --no-wait set Open_vSwitch . other_config:dpdk-init=true
  ./vswitchd/ovs-vswitchd --dpdk --socket-mem 4096,4096 -n 4 -- unix:/usr/local/var/run/openvswitch/db.sock --log-file=$OVS_LOG --pidfile --detach


Case 1:
VM1 start testpmd, fwd = iofwd
VM2 start testpmd,fwd = iofwd
Result =  Spirent testcenter show output stream is reaching line speed 10G.


Case 2:
VM1 testpmd = started, fwd = iofwd
VM2 testpmd=stopped,fwd = none
Result =  Spirent testcenter show output stream is reaching 5G.
Which is reasonable.

Case 3:
VM1 testpmd = started, fwd = iofwd
VM2 testpmd = started ,fwd = none
Result =  Spirent testcenter show output stream is less than 200Mbps.



I am confused about the case 3. What is the reason VM2 effects VM1 so significantly?
How can i solve such problem? I will appreciate for your answer.
Thx


============================
$BE"3.Xl(B Kai-Mao Cheng
$BCf2ZEE?.8&5f1!(B $BynIQLVO)8&5f=j(B 231$B7WaA(B
$BEEOC(B:03-4244093 $B<j5!(B:0912314847
E-mail:kmcheng at cht.com.tw
============================


Please be advised that this email message (including any attachments) contains confidential information and may be legally privileged. If you are not the intended recipient, please destroy this message and all attachments from your system and do not further collect, process, or use them. Chunghwa Telecom and all its subsidiaries and associated companies shall not be liable for the improper or incomplete transmission of the information contained in this email nor for any delay in its receipt or damage to your system. If you are the intended recipient, please protect the confidential and/or personal information contained in this email with due care. Any unauthorized use, disclosure or distribution of this message in whole or in part is strictly prohibited.  Also, please self-inspect attachments and hyperlinks contained in this email to ensure the information security and to protect personal information.


More information about the users mailing list