From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-qt0-f175.google.com (mail-qt0-f175.google.com [209.85.216.175]) by dpdk.org (Postfix) with ESMTP id 726E77CFD for ; Wed, 18 Apr 2018 20:10:52 +0200 (CEST) Received: by mail-qt0-f175.google.com with SMTP id s2-v6so2768624qti.2 for ; Wed, 18 Apr 2018 11:10:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=xpD48haRF4d4b57bmIBDXvnWdi7XxVE9Kac7DW7OZG4=; b=jNQTTVruHzI9NxaDr2gMYVLAkjDXpPJWIYP57NL9SFl1ZDVdp6UkYmNMl+sjAJWbsv nimjFm4R5WD/tiog4We5XmKWQm7k3U5FPqZG82IT5uPCmYBdJGnMnc3jT+Jt4olwfAYo +HwQjg1ps39RocyAiMyRKHW2Rsrjbk09oB+kVHeLPfIpLfA53rQfo5PAi4g8+GGxb92j xDPMERn49OJgZblqNMS49GOcUPAIDLcRwi9qhvKrMDvOcSwHve/Ptu8oZdRD3ohrvria Kr7G/JV58jLGDvPPNbyBOHME54tTi/zofsKiOI2gGZ6qFQFNB2fAE4qN2CzbfQq/dedd UH8g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=xpD48haRF4d4b57bmIBDXvnWdi7XxVE9Kac7DW7OZG4=; b=AqGZt3Nn637cWpXfsNALwf+Pa0BfnK74FqsYPFLQCthWzaYuEog53cRNTDL3VLFB4f TsH1mZSm6wv2LSU9KCZ8btf28o1acxSA5dg3X9pD4b5ogbDQNmxIEiuw8vEQt+G7m/BU jWpmJL0376ZIUjF89YxqTbUyIfG9aKH4mSPBtaReMJnrtyvtz2mvNs3xw29+iIop4b4p pf+pyEKZKsmk7MuIpHykrIstUkCZ8sMq8rzw4LU/byD8EicnjVVpbjCG1ej/PvMResW1 RI2CXKWuu9Xu6ftKjHY2xiCWwF1ESg64oFErRW/GLHbsKd0nVrHjiv6UISrMCHyw47BO 6Slw== X-Gm-Message-State: ALQs6tB7dRPnztZhW+7KZ2EGOiw5XtcFDCloAApXEhI68oQ37Qv6CJn/ pJ2qoVZTClOXPUCaIPW3CXzSSyc+6BSoFc9+aJVQAg== X-Google-Smtp-Source: AIpwx4+4QX1P2XP2g+7Uz3b+M70UPPn3RXJAn8YbF5ewsVTqtbyU52SKp/C5N9ppz715H7DWfdIYy3iRBNDx+YD4xBg= X-Received: by 2002:ac8:205:: with SMTP id k5-v6mr2947293qtg.351.1524075051901; Wed, 18 Apr 2018 11:10:51 -0700 (PDT) MIME-Version: 1.0 Received: by 10.237.48.206 with HTTP; Wed, 18 Apr 2018 11:10:51 -0700 (PDT) In-Reply-To: <86228AFD5BCD8E4EBFD2B90117B5E81E63011802@SHSMSX101.ccr.corp.intel.com> References: <86228AFD5BCD8E4EBFD2B90117B5E81E6300C162@SHSMSX101.ccr.corp.intel.com> <86228AFD5BCD8E4EBFD2B90117B5E81E63011802@SHSMSX101.ccr.corp.intel.com> From: Kevin Wilson Date: Wed, 18 Apr 2018 21:10:51 +0300 Message-ID: To: "Liu, Yong" Cc: "dts@dpdk.org" Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Subject: Re: [dts] L2FW fails with 'Not enough cores for performance!!!' (framework/etgen, py) X-BeenThere: dts@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: test suite reviews and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Apr 2018 18:10:52 -0000 Hi Marvin, I tried your suggested fix and I am passing that obstacle of 'Not enough cores for performance!!!' error. However, I do encounter later on an error of "illegal instruction" for ./pk= tgen, so you were right about your assumption. Is it possible to upload the pktgen source code that you are using to the DTS repo so me and others can build it to overcome this pitfall? I am not sure as to which dpdk-pktgen version to use ( also it could be that you use dpdk-pktgen patches which are mandatory for running DTS succesfull) Regards, Kevin On Wed, Apr 18, 2018 at 5:18 AM, Liu, Yong wrote: > Kevin, > According to the log, all four cores are physical cores and no hyper-thre= ading enabled. > DTS will allocate two physical cores for each port which will require fou= r cores within you setup. > By default bypass_core0 setting is enabled, so only three cores are avail= able and can=E2=80=99t start dpdk pktgen. > > You can simply change the code in etgen.py and try again. > > cores =3D self.tester.get_reserved_core("1C", socket=3Dnuma) > ... > map_cmd +=3D "[%s:%s].%d, " % (cores[0], cores[0], port_map[port]) > > > There's another potential error which may occur is that dpdk-pktgen can't= start. > It is because of the binary was built on our xeon server. It may contains= some instructions not supported on your cpu. > If that issue happened, you need to build dpdk-pktgen on your own server. > > Thanks, > Marvin > >> -----Original Message----- >> From: Kevin Wilson [mailto:wkevils@gmail.com] >> Sent: Wednesday, April 18, 2018 2:52 AM >> To: Liu, Yong >> Cc: dts@dpdk.org >> Subject: Re: [dts] L2FW fails with 'Not enough cores for performance!!!' >> (framework/etgen, py) >> >> Hi, >> Thanks for you quick reply, Yong Liu! >> >> First, I want to mention that I am running the tests on two hosts, and >> none of them is a VM. >> Second, as I mention in the mail, when I ran: >> >> cat /proc/cpuinfo | grep -i processor >> I see 4 cores, thus: >> processor : 0 >> processor : 1 >> processor : 2 >> processor : 3 >> >> Doesn't this indicate 4 physical processors? >> Another information I want to add is the output of lspcu: >> lscpu >> Architecture: x86_64 >> CPU op-mode(s): 32-bit, 64-bit >> Byte Order: Little Endian >> CPU(s): 4 >> On-line CPU(s) list: 0-3 >> Thread(s) per core: 1 >> Core(s) per socket: 4 >> Socket(s): 1 >> NUMA node(s): 1 >> Vendor ID: GenuineIntel >> CPU family: 6 >> Model: 45 >> Stepping: 7 >> CPU MHz: 1228.312 >> BogoMIPS: 4799.79 >> Virtualization: VT-x >> L1d cache: 32K >> L1i cache: 32K >> L2 cache: 256K >> L3 cache: 10240K >> NUMA node0 CPU(s): 0-3 >> >> And running: >> /work/src/dpdk-17.11/usertools/cpu_layout.py >> Gives: >> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D >> Core and Socket Information (as reported by '/sys/devices/system/cpu') >> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D >> >> cores =3D [0, 1, 2, 3] >> sockets =3D [0] >> >> Socket 0 >> -------- >> Core 0 [0] >> Core 1 [1] >> Core 2 [2] >> Core 3 [3] >> >> This this info indicate 4 physical cores ? >> >> Second question is: should the tester have exactly the same >> number of cores, sockets and threads as the DUT? I don't think I saw >> such a requirement in the docs, but maybe >> I am wrong. >> >> >> Regards, >> Kevin >> >> On Tue, Apr 17, 2018 at 4:34 AM, Liu, Yong wrote: >> > Hi Kevin, >> > DTS will try to allocate two physical cores for DPDK based pktgen. >> Meanwhile will skip first physical cores for system usage. >> > I'm not sure whether the four cores on your server are all physical >> cores. If not, may met such issue. >> > >> > Thanks, >> > Marvin >> > >> >> -----Original Message----- >> >> From: dts [mailto:dts-bounces@dpdk.org] On Behalf Of Kevin Wilson >> >> Sent: Monday, April 16, 2018 7:47 PM >> >> To: dts@dpdk.org >> >> Subject: [dts] L2FW fails with 'Not enough cores for performance!!!' >> >> (framework/etgen, py) >> >> >> >> Hi, >> >> I am trying to run DTS L2FW performance between a tester and a DUT >> using >> >> DTS >> >> (with scapy, not with IXIA) and I am getting the following error: >> >> TestL2fwd: Test Case test_perf_l2fwd_performance Result FAILED: 'Not >> >> enough cores for performance!!!' >> >> and the DTS app terminates. >> >> I located the error, and it is from packet_generator() method of >> >> framework/etgen.py >> >> What can be the reason for this ? >> >> >> >> Further details: >> >> The execution.cfg file I am using is: >> >> [Execution1] >> >> crbs=3DIP adderss of DUT >> >> drivername=3Digb_uio >> >> test_suites=3D >> >> l2fwd >> >> targets=3D >> >> x86_64-native-linuxapp-gcc >> >> parameters=3Dnic_type=3Dniantic:perf=3Dtrue >> >> >> >> I have 2 machine: host A is the tester, and host B is the DUT. >> >> Both have IXGBE nics, and each of these 2 nics have 2 ports. >> >> On the tester, the PCI ids of the IXGBEs are 0000:04:00.0 and >> 0000:04:00.1 >> >> On the DUT, the PCI ids of the IXGBEs are 0000:06:00.0 and 0000:06:00= .1 >> >> The IXGBEs are 8086:158b on both hosts >> >> >> >> I have two configuration files: >> >> conf/ports.cfg: >> >> [DUT IP] >> >> ports =3D >> >> pci=3D0000:06:00.0,peer=3D0000:04:00.0; >> >> pci=3D0000:06:00.1,peer=3D0000:04:00.1; >> >> >> >> >> >> conf/crb.cfg: >> >> >> >> [DUT IP] >> >> dut_ip=3DDUT IP >> >> dut_user=3Droot >> >> dut_passwd=3Ddut_password >> >> os=3Dlinux >> >> tester_ip=3DTESTER IP >> >> tester_passwd=3Dtester_password >> >> channels=3D4 >> >> bypass_core0=3DFalse >> >> >> >> Both hosts have 4 cores (as is shown by "cat /proc/cpuinfo | grep -i >> >> processor") >> >> I am running DTS by: >> >> ./dts --git=3Dv17.11 --config-file=3DmyConfig.cfg >> >> >> >> >> >> Regards, >> >> Kevin