cost (cycles + cache) of setup and use of IPC mechanisms

Zenaan Harkness zen at freedbms.net
Sat Sep 15 06:08:53 CEST 2018


Establishing any IPC communication channel has setup costs and per
message or per "message batch" usage costs:

 (CPU cycles + context switches) / channel setup

 (CPU cycles + context switches) / msg[-batch]

Further, as recent Linux kernel network stack work has discovered,
cache effects strongly proscribe batch processing rather than per-msg
(or per packet) processing (seems obvious, I guess "in hindsight") to
make 10G and above network links work well:

  Batch processing of network packets
  https://lwn.net/Articles/763056/

and see also:

  User-space networking with Snabb
  https://lwn.net/Articles/713918/


Is there a paper quantifying and comparing various IPC mechanism
costs?

Specifically and separately, is there a paper quantifying the setup
and use costs of shared memory IPC (possibly in comparison with
any other IPC mechanism)?

TIA,



More information about the l4-hackers mailing list