All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCHv1 0/6] evtchn: Improve scalebility
@ 2015-06-09 14:59 David Vrabel
  2015-06-09 14:59 ` [PATCHv1 1/6] evtchn: profile event channel lock David Vrabel
                   ` (5 more replies)
  0 siblings, 6 replies; 12+ messages in thread
From: David Vrabel @ 2015-06-09 14:59 UTC (permalink / raw)
  To: xen-devel
  Cc: Keir Fraser, Tim Deegan, David Vrabel, Jan Beulich, Ian Campbell

The per-domain event channel lock limits scalability when many VCPUs
are trying to send interdomain events.  A per-channel lock is
introduced eliminating any lock contention when sending an event.

See this graph for the performance improvements:

  http://xenbits.xen.org/people/dvrabel/evtchn-scalability.png

A different test (using Linux's evtchn device which masks/unmasks
event channels) showed the following lock profile improvements:

Per-domain lock:
(XEN)   lock:    69267976(00000004:19830041), block:    27777407(00000002:3C7C5C96)

Per-event channel lock 
(XEN)   lock:      686530(00000000:076AF5F6), block:        1787(00000000:000B4D22)

Locking removed from evtchn_unmask():
(XEN)   lock:       10769(00000000:00512999), block:          99(00000000:00009491)

David

^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2015-06-10  9:04 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-06-09 14:59 [PATCHv1 0/6] evtchn: Improve scalebility David Vrabel
2015-06-09 14:59 ` [PATCHv1 1/6] evtchn: profile event channel lock David Vrabel
2015-06-09 14:59 ` [PATCHv1 2/6] evtchn: factor out freeing an event channel David Vrabel
2015-06-09 14:59 ` [PATCHv1 3/6] evtchn: simplify port_is_valid() David Vrabel
2015-06-09 15:08   ` Andrew Cooper
2015-06-09 15:16     ` David Vrabel
2015-06-09 14:59 ` [PATCHv1 4/6] evtchn: use a per-event channel lock for sending events David Vrabel
2015-06-09 15:17   ` Andrew Cooper
2015-06-10  8:59     ` Jan Beulich
2015-06-09 14:59 ` [PATCHv1 5/6] evtchn: remove the locking when unmasking an event channel David Vrabel
2015-06-09 14:59 ` [PATCHv1 6/6] evtchn: pad struct evtchn to 64 bytes David Vrabel
2015-06-10  9:04   ` Jan Beulich

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.