Skip to content

2022 04 23 bench results

Andrea edited this page Apr 23, 2022 · 3 revisions

Benchmarked on: Intel(R) Xeon(R) CPU E5-1650 v3 @ 3.50GHz, 32G RAM

Config:

14a8435 Fri, 22 Apr 2022 10:53:45 +0200 GitHub Update Java version (#232)
- GRPC_BENCHMARK_DURATION=120s
- GRPC_BENCHMARK_WARMUP=30s
- GRPC_SERVER_RAM=512m
- GRPC_CLIENT_CONNECTIONS=50
- GRPC_CLIENT_CONCURRENCY=1000
- GRPC_CLIENT_QPS=0
- GRPC_CLIENT_CPUS=9
- GRPC_REQUEST_SCENARIO=complex_proto

1 CPU Server

-----------------------------------------------------------------------------------------------------------------------------------------
| name                        |   req/s |   avg. latency |        90 % in |        95 % in |        99 % in | avg. cpu |   avg. memory |
-----------------------------------------------------------------------------------------------------------------------------------------
| go_vtgrpc                   |   44074 |       21.50 ms |       32.63 ms |       36.62 ms |       43.99 ms |   99.96% |     25.28 MiB |
| rust_tonic_st               |   41546 |       23.77 ms |       26.06 ms |       28.66 ms |       33.24 ms |  101.05% |     12.03 MiB |
| rust_thruster_st            |   41334 |       23.88 ms |       29.69 ms |       30.94 ms |       33.35 ms |  101.35% |     10.99 MiB |
| rust_thruster_mt            |   36793 |       26.93 ms |       12.27 ms |       46.86 ms |      646.81 ms |  103.57% |     12.17 MiB |
| rust_tonic_mt               |   35443 |       27.98 ms |       12.08 ms |       13.37 ms |      668.38 ms |  101.02% |     14.05 MiB |
| go_grpc                     |   34289 |       27.97 ms |       41.94 ms |       47.70 ms |       60.31 ms |   98.23% |     26.06 MiB |
| dotnet_grpc                 |   33899 |       26.75 ms |       49.04 ms |       68.64 ms |       84.31 ms |  100.74% |    114.47 MiB |
| scala_akka                  |   32435 |       28.63 ms |       61.27 ms |       69.93 ms |       94.39 ms |  102.03% |     223.0 MiB |
| java_quarkus                |   32408 |       29.78 ms |       52.93 ms |       56.27 ms |       75.82 ms |  100.05% |    110.34 MiB |
| rust_grpcio                 |   31035 |       32.04 ms |       35.33 ms |       36.46 ms |       38.97 ms |  102.08% |     17.37 MiB |
| cpp_grpc_st                 |   26700 |       37.33 ms |       41.89 ms |       43.15 ms |       46.01 ms |  103.33% |      9.32 MiB |
| cpp_grpc_mt                 |   26376 |       37.79 ms |       42.94 ms |       43.97 ms |       46.03 ms |  103.18% |      9.99 MiB |
| cpp_asio_grpc               |   24926 |       40.00 ms |       45.27 ms |       46.25 ms |       49.44 ms |  103.18% |      9.75 MiB |
| java_openj9_grpc_gencon     |   24139 |       40.07 ms |       72.49 ms |      103.75 ms |      289.95 ms |   95.85% |    118.91 MiB |
| java_hotspot_grpc_g1gc      |   23657 |       41.37 ms |       75.27 ms |       83.25 ms |      110.66 ms |  100.82% |     84.28 MiB |
| java_hotspot_grpc_she       |   23304 |       42.04 ms |       73.83 ms |       81.40 ms |      101.02 ms |  101.65% |     81.83 MiB |
| java_hotspot_grpc_sgc       |   23290 |       42.04 ms |       76.21 ms |       83.70 ms |       99.94 ms |  101.25% |     83.88 MiB |
| java_hotspot_grpc_zgc       |   22980 |       42.68 ms |       75.46 ms |       82.79 ms |      103.52 ms |   101.1% |     85.13 MiB |
| java_hotspot_grpc_pgc       |   22305 |       44.03 ms |       79.36 ms |       88.79 ms |      121.52 ms |  101.13% |     95.37 MiB |
| crystal_grpc                |   22047 |       45.23 ms |       60.54 ms |       63.95 ms |       69.05 ms |   102.9% |     51.74 MiB |
| java_quarkus_native         |   19877 |       50.02 ms |       54.95 ms |       56.63 ms |       62.44 ms |  102.13% |     89.25 MiB |
| scala_fs2                   |   18097 |       54.07 ms |       97.74 ms |      107.87 ms |      192.24 ms |  101.25% |    233.53 MiB |
| kotlin_grpc                 |   17570 |       55.98 ms |       93.90 ms |      104.54 ms |      180.47 ms |  100.97% |    216.03 MiB |
| java_armeria                |   16664 |       59.55 ms |       92.90 ms |      103.08 ms |      179.40 ms |  100.82% |    247.55 MiB |
| swift_grpc                  |   11984 |       83.22 ms |       84.78 ms |       85.34 ms |       87.14 ms |  101.54% |      6.74 MiB |
| erlang_grpcbox              |    4835 |      206.35 ms |      219.81 ms |      225.78 ms |      236.80 ms |  101.91% |     95.46 MiB |
| elixir_grpc                 |    4423 |      225.57 ms |      251.99 ms |      256.84 ms |      271.12 ms |  102.45% |    135.95 MiB |
| node_grpcjs_st              |    4133 |      240.95 ms |      269.39 ms |      278.48 ms |      292.90 ms |  100.59% |     45.63 MiB |
| java_micronaut_workstealing |    4073 |      243.69 ms |      178.65 ms |      217.76 ms |         4.56 s |   53.11% |    303.58 MiB |
| scala_zio                   |    3285 |      303.48 ms |      379.98 ms |      501.44 ms |      785.32 ms |  102.48% |    237.78 MiB |
| java_micronaut              |    3242 |      305.91 ms |      178.06 ms |         1.11 s |         5.16 s |   37.91% |    297.07 MiB |
| python_async_grpc           |    2392 |      416.42 ms |      452.27 ms |      457.34 ms |      464.43 ms |  102.18% |     32.96 MiB |
| python_grpc                 |    1961 |      507.66 ms |      547.01 ms |      556.62 ms |      570.33 ms |   102.4% |     34.28 MiB |
| ruby_grpc                   |    1847 |      538.95 ms |      601.64 ms |      630.22 ms |      821.94 ms |  102.83% |     37.11 MiB |
| java_aot                    |    1675 |      592.97 ms |      996.33 ms |         1.11 s |         1.47 s |  100.12% |     172.5 MiB |
| d_grpc                      |    1379 |      712.65 ms |      499.63 ms |      591.70 ms |        11.93 s |   104.8% |     27.16 MiB |
| php_grpc                    |     869 |         1.14 s |         1.20 s |         1.20 s |         1.20 s |  102.34% |     66.97 MiB |
-----------------------------------------------------------------------------------------------------------------------------------------

2 CPU Server

WIP

3 CPU Server

-----------------------------------------------------------------------------------------------------------------------------------------
| name                        |   req/s |   avg. latency |        90 % in |        95 % in |        99 % in | avg. cpu |   avg. memory |
-----------------------------------------------------------------------------------------------------------------------------------------
| cpp_grpc_mt                 |   71806 |       10.86 ms |       18.16 ms |       22.47 ms |       32.25 ms |  232.84% |     35.57 MiB |
| cpp_asio_grpc               |   71296 |       10.96 ms |       18.15 ms |       22.44 ms |       32.54 ms |  238.58% |     37.31 MiB |
| dotnet_grpc                 |   68821 |       11.36 ms |       18.07 ms |       21.74 ms |       31.44 ms |   210.3% |    171.76 MiB |
| rust_grpcio                 |   68377 |       12.11 ms |       18.79 ms |       22.81 ms |       32.61 ms |  259.81% |      25.3 MiB |
| scala_akka                  |   67796 |       10.84 ms |       20.08 ms |       26.33 ms |       40.51 ms |   217.8% |    237.17 MiB |
| go_vtgrpc                   |   67021 |       11.28 ms |       20.28 ms |       24.91 ms |       35.36 ms |  221.08% |     25.52 MiB |
| java_openj9_grpc_gencon     |   66107 |       11.76 ms |       22.66 ms |       29.09 ms |       41.96 ms |  257.92% |    125.94 MiB |
| rust_thruster_mt            |   65903 |       12.66 ms |       21.38 ms |       26.04 ms |       36.11 ms |   244.4% |     15.03 MiB |
| kotlin_grpc                 |   64373 |       12.29 ms |       23.02 ms |       31.74 ms |       49.44 ms |  279.07% |    228.26 MiB |
| rust_tonic_mt               |   64091 |       13.53 ms |       23.42 ms |       28.17 ms |       37.61 ms |  277.41% |     18.16 MiB |
| go_grpc                     |   61002 |       13.26 ms |       22.56 ms |       27.46 ms |       40.01 ms |   261.0% |     26.56 MiB |
| java_quarkus                |   60239 |       13.76 ms |       23.09 ms |       30.95 ms |       43.21 ms |  202.91% |    134.92 MiB |
| scala_fs2                   |   59030 |       14.09 ms |       28.66 ms |       44.58 ms |       67.84 ms |  308.92% |     249.3 MiB |
| java_hotspot_grpc_sgc       |   58729 |       13.93 ms |       26.38 ms |       32.01 ms |       40.96 ms |  234.93% |     89.32 MiB |
| java_hotspot_grpc_zgc       |   58314 |       14.06 ms |       27.09 ms |       32.88 ms |       42.11 ms |  231.84% |     90.65 MiB |
| java_hotspot_grpc_she       |   58232 |       14.09 ms |       27.41 ms |       33.56 ms |       43.60 ms |  230.85% |     86.37 MiB |
| java_hotspot_grpc_pgc       |   57841 |       14.17 ms |       27.45 ms |       33.71 ms |       44.40 ms |   233.4% |     84.01 MiB |
| java_hotspot_grpc_g1gc      |   57418 |       14.33 ms |       29.52 ms |       35.45 ms |       45.69 ms |  230.32% |      86.1 MiB |
| java_armeria                |   44574 |       16.62 ms |       39.99 ms |       48.36 ms |       64.29 ms |  305.94% |    252.17 MiB |
| java_quarkus_native         |   41835 |       22.89 ms |       28.84 ms |       31.22 ms |       37.00 ms |   283.7% |     90.57 MiB |
| rust_tonic_st               |   41788 |       23.63 ms |       29.23 ms |       30.35 ms |       32.92 ms |  101.52% |     12.15 MiB |
| rust_thruster_st            |   41561 |       23.73 ms |       29.27 ms |       30.52 ms |       32.82 ms |  101.74% |     11.16 MiB |
| swift_grpc                  |   30775 |       32.16 ms |       34.75 ms |       35.66 ms |       37.14 ms |   303.8% |      6.91 MiB |
| crystal_grpc                |   27069 |       36.82 ms |       39.47 ms |       40.42 ms |       42.19 ms |  115.84% |     46.51 MiB |
| cpp_grpc_st                 |   26929 |       37.01 ms |       40.79 ms |       42.37 ms |       44.33 ms |  103.16% |      9.56 MiB |
| scala_zio                   |   12558 |       78.99 ms |       96.89 ms |      103.71 ms |      123.96 ms |  307.06% |    257.57 MiB |
| java_aot                    |   11815 |       82.75 ms |      165.91 ms |      191.42 ms |      243.36 ms |   280.4% |    208.04 MiB |
| elixir_grpc                 |   11270 |       88.58 ms |      104.72 ms |      110.84 ms |      125.03 ms |  307.79% |    133.17 MiB |
| erlang_grpcbox              |    9981 |       99.96 ms |      111.06 ms |      114.91 ms |      126.13 ms |  287.02% |      86.4 MiB |
| java_micronaut_workstealing |    9980 |       53.18 ms |       62.48 ms |       73.09 ms |         3.60 s |   103.6% |     362.8 MiB |
| java_micronaut              |    7629 |      128.33 ms |       60.03 ms |       71.95 ms |         3.62 s |   77.65% |     369.6 MiB |
| node_grpcjs_st              |    6193 |      160.90 ms |      171.92 ms |      176.23 ms |      186.26 ms |  129.64% |      47.1 MiB |
| d_grpc                      |    6125 |      161.72 ms |      112.34 ms |      128.91 ms |         4.16 s |  319.64% |      26.5 MiB |
| python_async_grpc           |    4422 |      225.62 ms |      235.74 ms |      239.11 ms |      250.92 ms |  153.93% |     34.79 MiB |
| php_grpc                    |    3625 |      275.10 ms |      293.55 ms |      295.30 ms |      298.24 ms |  309.75% |     67.13 MiB |
| python_grpc                 |    3450 |      289.02 ms |      303.33 ms |      308.49 ms |      318.72 ms |  151.56% |     34.01 MiB |
| ruby_grpc                   |    2449 |      406.82 ms |      438.07 ms |      446.93 ms |      497.47 ms |  130.64% |     36.99 MiB |
-----------------------------------------------------------------------------------------------------------------------------------------