From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-qa0-f50.google.com (mail-qa0-f50.google.com [209.85.216.50]) by dpdk.org (Postfix) with ESMTP id 771F17FCE for ; Fri, 10 Oct 2014 22:36:28 +0200 (CEST) Received: by mail-qa0-f50.google.com with SMTP id w8so2214214qac.9 for ; Fri, 10 Oct 2014 13:43:55 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:message-id:date:from:user-agent:mime-version:to :subject:content-type; bh=5FPqsFktBodgXrohm1CZ4JXk5z4oCoN8QS/bDViuvX8=; b=BkIGc/1ut+dQx96XhXVzbAg6tS7QPcbYxeRagVmZfNfmnYo97SHQJ43NFi6K3Go2eJ UBTh97dTZU2zl6Jd/Zib1w5tf46kgy/H9PmxBIhtrWOWMFLoSan2QRK+8K2ub36z0F/W qMpl5lj9cgHrxVdcpPqyLieIM3DbO3jdt8ebXhnc9uO+1w6+rQdkasuOYXoV2tMBSfeE 5XkGAShU04gBv04d2ctdCz+Pct6y5esV5sU3AxP+MM+TR/x/hDB23nO5qUjIqvmoEonG jBxU4GuH0lnDdrWcK75m2ex57doCA+iqVW9Vnv3+wXd1ZGdHbnkaYptzwYki6ZBxmo4K Q3aA== X-Gm-Message-State: ALoCoQmDZQcT/T3znPBSlDuo4zZ+nacbS409eVA+MqBWW3iGPb9LSxhyrLNP0/jed1SDkJvMmI3r X-Received: by 10.224.103.132 with SMTP id k4mr12561220qao.54.1412973835608; Fri, 10 Oct 2014 13:43:55 -0700 (PDT) Received: from [192.168.2.11] (pool-74-105-132-108.nwrknj.fios.verizon.net. [74.105.132.108]) by mx.google.com with ESMTPSA id 12sm5912960qgt.6.2014.10.10.13.43.55 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Fri, 10 Oct 2014 13:43:55 -0700 (PDT) Message-ID: <54384507.5060505@packetstorm.com> Date: Fri, 10 Oct 2014 16:43:51 -0400 From: Dan Brennan User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:24.0) Gecko/20100101 Thunderbird/24.6.0 MIME-Version: 1.0 To: dev@dpdk.org Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Content-Filtered-By: Mailman/MimeDel 2.1.15 Subject: [dpdk-dev] Tx Queue Rate Limiting X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 10 Oct 2014 20:36:28 -0000 Hello, I've been scouring through the code and documentation, experimenting with various register settings, etc., for some time now and I'm still stuck on a problem regarding tx queue rate limiting. I have a simple packet processing application that uses three cores similar to qos_sched (Rx, Worker, Tx). I am running on an E5-1620 v2, using an 82599EB based NIC for the network interface. I am using DPDK 1.7.1 on Debian 7 (3.2.46 kernel). I have modified the testpmd application to utilize multiple tx queues in both iofwd and flowgen modes. When I start the forwarder, I observe each queue sending packets equally. I can issue the following command to alter the rate of each queue individually: set port N queue X rate NEWRATE This works well, as I have observed the updated queue transmitting fewer (or more) packets on output (I also have measured the proportional change in total bit rate using a Smartbits analyzer). The problem is that my application doesn't behave the same. I have 32 Tx queues. However, when I change the rate on one, it appears to affect the entire interface, instead of the individual queue. I looked at both port configs (testpmd and my application) and can't locate the discrepancy. I even went so far as to port the testpmd port init code to my application with the same results. I have instrumented the ixgbe driver to dump registers whenever I update a Tx queue, and have verified all register settings are the same when I perform this operation in testpmd and my application. The only difference is that q-stats for testpmd reflect the correct change in Tx queue rate for the individual queues, while q-stats in my application indicate all Tx queues change to the same rate. Has anyone experienced similar behavior or have the ability to shed some light on what I could be doing wrong? Any assistance is appreciated. Dan