On 05/28/2013 04:42 PM, Luke Gorrie wrote: > On 28 May 2013 13:53, Michael S. Tsirkin <m...@redhat.com > <mailto:m...@redhat.com>> wrote: > > Yes, you can maybe trade some of this latency for power/CPU cycles by > aggressive polling. Doing this in a way that does not waste a lot of > power would be tricky. > > > For what it's worth, here is my mental model right now: > > Administrator budgets one CPU core for network I/O (VM and NIC). > Switch uses that CPU to deliver sufficient speed (e.g. 10 M packets/sec > ~ 40Gbps). > Switch uses micro-sleeps to cut cpu usage to ~ 1% in idle periods.
With virtio the backend can decide whether it wants to be notified by the client. If you disable all notifications you are in polling mode. If your backend/switch doesn't find anything to do it can reenable notifications and block. Thus you would naturally revert to non-polling mode, when the network load is low. Julian