DPDK patches and discussions
 help / color / mirror / Atom feed
From: "Zhou, Danny" <danny.zhou@intel.com>
To: "Michael  Marchetti" <mmarchetti@sandvine.com>,
	"dev@dpdk.org" <dev@dpdk.org>
Subject: Re: [dpdk-dev] overcommitting CPUs
Date: Tue, 26 Aug 2014 16:42:23 +0000	[thread overview]
Message-ID: <DFDF335405C17848924A094BC35766CF0A90F5E1@SHSMSX104.ccr.corp.intel.com> (raw)
In-Reply-To: <A7E5BBF1ACE50B43AF1D6E89B8280FE4C5290BB5@wtl-exchp-1.sandvine.com>

I have a prototype that works on Niantic to enable NIC rx interrupt and allow interrupt and polling mode switch according to real traffic load on the rx queue. It is designed for DPDK power management, and can apply to CPU resource sharing as well.  It only works for non-virtualized environment at the moment. The prototype also optimized DPDK interrupt notification mechanism to user space in order to minimize the latency. Basically, it looks like a user space NAPI. 

The downside of this solution is that packet latency is enlarged, which is combination of interrupt latency, CPU wakeup latency from C3/C6 C0, cache warmup latency, OS scheduling latency. Also it potentially drop packets for burst traffic on >40G NIC. In other words, the latency is non-deterministic which is not suitable for packet latency sensitive scenarios.

> -----Original Message-----
> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Michael Marchetti
> Sent: Wednesday, August 27, 2014 12:27 AM
> To: dev@dpdk.org
> Subject: [dpdk-dev] overcommitting CPUs
> 
> Hi, has there been any consideration to introduce a non-spinning network driver (interrupt based), for the purpose of overcommitting
> CPUs in a virtualized environment?  This would obviously have reduced high-end performance but would allow for increased guest
> density (sharing of physical CPUs) on a host.
> 
> I am interested in adding support for this kind of operation, is there any interest in the community?
> 
> Thanks,
> 
> Mike.

      parent reply	other threads:[~2014-08-26 16:38 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-08-26 16:27 Michael  Marchetti
2014-08-26 16:38 ` Stephen Hemminger
2014-08-26 16:59   ` Zhou, Danny
2014-08-27  4:14     ` Stephen Hemminger
2014-08-27  5:48       ` Patel, Rashmin N
2014-08-27  8:40         ` Alex Markuze
2014-08-27 14:54           ` Venkatesan, Venky
2014-08-28  4:03             ` Liang, Cunming
2014-08-27 16:06           ` Zhou, Danny
2014-08-26 16:42 ` Zhou, Danny [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=DFDF335405C17848924A094BC35766CF0A90F5E1@SHSMSX104.ccr.corp.intel.com \
    --to=danny.zhou@intel.com \
    --cc=dev@dpdk.org \
    --cc=mmarchetti@sandvine.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).