Skip to content

roda/puma: big differences in performance between TruffleRuby 2.1.0-dev and MRI 2.7 #1939

Open
@deepj

Description

@deepj

Used https://github.com/jodosha/ruby-web-bench. TruffleRuby is almost 50x slower than MRI 2.7 🙀😿😾

git clone https://github.com/jodosha/ruby-web-bench.git
cd ruby-web-bench
gem install roda puma
rackup apps/roda-10000.ru
wrk -t 2 http://localhost:9292/j/j/j/j

TruffleRuby 2.1.0-dev

Test 1:

Running 10s test @ http://localhost:9292/j/j/j/j
  2 threads and 10 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency   441.70ms  267.22ms   1.50s    84.94%
    Req/Sec    15.35      9.53    40.00     68.91%
  237 requests in 10.03s, 19.50KB read
Requests/sec:     23.64
Transfer/sec:      1.95KB

Test 2:

Running 10s test @ http://localhost:9292/j/j/j/j
  2 threads and 10 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency   359.08ms  190.81ms   1.28s    83.17%
    Req/Sec    17.33      9.90    40.00     67.88%
  288 requests in 10.08s, 23.62KB read
Requests/sec:     28.56
Transfer/sec:      2.34KB

MRI 2.7

Test 1:

Running 10s test @ http://localhost:9292/j/j/j/j
  2 threads and 10 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency     9.58ms    5.23ms  55.07ms   76.65%
    Req/Sec   540.71     70.98   650.00     75.50%
  10782 requests in 10.02s, 0.86MB read
Requests/sec:   1075.74
Transfer/sec:     88.26KB

Test 2:

Running 10s test @ http://localhost:9292/j/j/j/j
  2 threads and 10 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency    10.14ms    5.75ms  67.73ms   78.11%
    Req/Sec   511.93     67.57   650.00     66.50%
  10210 requests in 10.02s, 837.73KB read
Requests/sec:   1018.99
Transfer/sec:     83.61KB

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions