11月には、Ruby 2.5.0プレビュー1の速度結果を掲載しました。 Ruby 2.4よりはるかに高速でしたが、これは少し失望しました。 しかし、1つの非常に重要なパフォーマンスパッチが終了する前にリリースしたため、最終的な速度に大きな違いが生じました
どれぐらいの差か?さぁ見てみましょう!
グラフを見たいだけです、同じ方法だと私は言い切れます。 これは素晴らしいスタートです.Rails Ruby Benchのトータルタイムです。 これは、談話(Rails)要求の混在を大規模な並行サーバー経由でプッシュするのにかかる時間を測定します。
悪くない。数字とパーセントの表のように見えるのは何ですか?
Percentile Ruby 2.4.3 Ruby 2.5.0 % Faster
0% 29.17 26.99 7.5%
10% 32.25 30.73 4.7%
50% 33.98 32.39 4.7%
90% 35.15 33.37 5.1%
100% 36.77 35.62 3.1%
ここで興味深いのは、より高い(より遅い)runの方がスピードが遅くなっていることです。 ほぼすべてのスピードの違いがあるパフォーマンスパッチの珍しい性質のため、ほぼ確実です。 それはRubyのバイトコード操作ごとに多かれ少なかれ一定のオーバーヘッドでした。より遅い実行にはそれぞれが長い(かなり可能性がある)命令がある場合は、パフォーマンスが低下すると予想されます。おおよそあなたがここに見るものです。
Ruby 2.5.0の方がずっと速いのですが、 「実行時間あたりのパーセンタイルではなく、スループットに答えようと思っています。だからスループットを見てみましょう:
Measurement | Ruby 2.4.3 | Ruby 2.5.0 | % Faster|
Mean Throughput | 170.6 | 179.3 | 5.1%|
Median Throughput| 171.0 | 179.6 | 5.0%|
どれくらい速くなる?大規模な並行Railsサーバーではスループットが5%向上します。友達に教えて!
それよりも速くすることはできますか? 確かに。小さくて速い操作で、Railsの要求が最大7.5%向上しました。一部のベンチマークではKoichiが最大12%速くなっています。
しかし簡単な答えのために、 "それは私のRailsアプリケーションをより速くするでしょうか?"はい。約5%速くなります。何かを壊すようなことはないかなり静かなアップグレードのために悪いことではありません。コードをスピードアップし、いくつかの素晴らしい機能を追加するだけです!