Details
-
New Feature
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
None
Description
The goal is to decouple FlightData payload transmission from gRPC and provide a convenient framework to support other accelerated data planes (ucx, dpdk, xdp, etc.).
As a PoC, I implemented a shared memory data plane for local rpc, the performance is great compared with current best (grpc over unix socket).
Tested throughput and latency on xeon gold 5218, DoGet, batch size 128K.
streams | grpc over unix socket | shared memory data plane |
---|---|---|
1 | 3324 MB/s, 35 us | 7045 MB/s, 16 us |
2 | 6289 MB/s, 38 us | 13311 MB/s, 17 us |
4 | 10037 MB/s, 44 us | 25012 MB/s, 17 us |
Attachments
Issue Links
- is duplicated by
-
ARROW-13889 [C++][FlightRPC] Decouple Arrow Flight RPC from GRPC
- Closed
- is related to
-
ARROW-15835 [C++][FlightRPC] Refactor auth, middleware into the transport-agnostic layer
- Open
-
ARROW-15836 [C++][FlightRPC] Refactor remaining methods into transport-agnostic handlers
- Open
-
ARROW-15788 [C++][FlightRPC] Support alternative transports in the Flight benchmark
- Resolved
- is superceded by
-
ARROW-15706 [C++][FlightRPC] Implement a UCX transport
- Resolved
- links to