Hi,

Yes, Cap'n Proto should handle this use case much better than Protobufs. By
default there is a message size limit of 64MB, but this is for security
purposes, not performance, and you can easily configure a much larger limit
as needed using `ReaderOptions`.

You could write your messages to a socket, but for the IPC use case you can
get even better performance using shared memory. If you set up a shared
memory region and build your Cap'n Proto message directly in it on the
sending end, then the receiving end can read it directly without ever
copying the bytes at all. With a socket, the bytes have to be copied at
least twice -- into and out of the kernel.

-Kenton

On Thu, Aug 16, 2018 at 1:52 AM, codie <[email protected]> wrote:

> Hello,
> I'm considering currently to use CapnProto for inter-process communication
> and could use a little hint before investing too much time into it. I have
> to send large vectors and matrices (~300MB) to another process. I know
> protobuf is not designed to handle such amounts of data for transfer. How
> about CapnProto? I also considered using simply e.g. sockets.Thanks.
>
> --
> You received this message because you are subscribed to the Google Groups
> "Cap'n Proto" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> Visit this group at https://groups.google.com/group/capnproto.
>

-- 
You received this message because you are subscribed to the Google Groups 
"Cap'n Proto" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
Visit this group at https://groups.google.com/group/capnproto.

Reply via email to