kb:labview-toolkits:grpc
Table of Contents
gRPC Support for LV
NI shares a repo on Github which contains necessary C++ code and support VIs to implement a gRPC server and client in LabVIEW. You can either use the service as defined to implement a generic server via gRPC or use the implementation as a pattern to implement a gRPC service of your design. The project supports Windows, Linux, and Linux RT.
⇒ https://github.com/ni/grpc-labview
Performance on Linux RT
| 10 Gb | 10 Gb optimized | localhost | 1 GB switched | |
|---|---|---|---|---|
| Messages / s | 7903.45 | 11161.9 | 39685.1 | 4333 |
| MB / s | 1122.17 | 1122.24 | 4915.76 | 111 |
| RPC Latency (µs) | 124 | 77 | 24 | 233 |
| RPC Stream Latency (µs) | 103 | 50 | 15 | 207 |
RPC Streaming Latency (µs)
| Payload Size | ||||||||
|---|---|---|---|---|---|---|---|---|
| 1 | 8 | 16 | 32 | 64 | 128 | 1024 | 32768 | |
| 10 Gb | 104 | 106 | 106 | 111 | 109 | 112 | 133 | 484 |
| 10 Gb optimized | 51 | 50 | 52 | 51 | 52 | 54 | 66 | 324 |
| localhost | 15 | 15 | 15 | 15 | 15 | 15 | 15 | 116 |
| 1 GB switched | 207 | 207 | 208 | 208 | 208 | 208 | 298 | 2574 |
RPC Call Latency (µs)
| Payload Size | ||||||||
|---|---|---|---|---|---|---|---|---|
| 1 | 8 | 16 | 32 | 64 | 128 | 1024 | 32768 | |
| 10 Gb | 124 | 125 | 125 | 127 | 126 | 130 | 151 | 544 |
| 10 Gb optimized | 77 | 78 | 78 | 79 | 80 | 90 | 151 | 322 |
| localhost | 24 | 24 | 24 | 24 | 25 | 25 | 27 | 104 |
| 1 GB switched | 233 | 233 | 233 | 233 | 233 | 246 | 286 | 2676 |
kb/labview-toolkits/grpc.txt · Last modified: 2024/06/19 12:43 by joerg.hampel