Kernel executables seem to be relatively small wrappers around "dynamic link library" that contains all the functionality of the kernel.
Is it possible to load the kernel (as a dynamic link library) and interact with it via LibraryLink/WSTP?
The idea is to avoid IPC overhead.
Compile
d exetuables. I have next to no experience with this because the functionality that's available is quite limited. $\endgroup$"TCPIP"
. Use"SharedMemory"
. If you benchmark this, let me know, I'm curious. But it should be much faster. There are other tricks to getting good performance with MathLink too, e.g. there are multiple formats for sending/receiving a list. Numeric lists have fast dedicated functions. Unfortunately, some of the facilities that are needed to make this work are not documented ... see here on how we figured out how to detect if we can safely receive a packed array ... mathematica.stackexchange.com/q/180706/12 $\endgroup$