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,