JRubyにおけるString実装高速化 Rope 紹介 #RubyKaigi #RubyKaigiA

A Tale of Two String Representations @nirvdrum http://rubykaigi.org/2016/presentations/nirvdrum.htm "Strings are used pervasively in Ruby. If we can make them faster, we can make many apps faster. 続きを読む
1
リンク GitHub jruby/jruby jruby - JRuby, an implementation of Ruby on the JVM
どみにをん525 @Dominion525

concat、そもそもMRI2.3 より JRuby9.1 のほうが速いのか。#rubykaigi #rubykaigia

2016-09-08 15:42:24
みよひで画伯 @miyohide

文字列の連結の話。RopeとJRuby(truffle)を使った場合CRubyの約80倍早い。追加(<<)の場合では2.3倍。 #rubykaigi #rubykaigiA

2016-09-08 15:42:47
FUJI Goro @__gfx__

"The Truffle runtime of JRuby is an experimental implementation of an interpreter for JRuby" か。 github.com/jruby/jruby/wi… #rubykaigia

2016-09-08 15:42:51
joker1007 (アルフォートおじさん) @joker1007

Appendも早くなる理屈はTruffleのおかげだろうか。 #rubykaigiA

2016-09-08 15:42:57
joker1007 (アルフォートおじさん) @joker1007

静的なデータ構造にしたら、そりゃ破壊的なAppendとのギャップは大きくなるな。 #rubykaigiA

2016-09-08 15:44:19
黒曜@Leaner Technologies @kokuyouwind

「SubstringはRStringだとコピーを作るが、Ropeだと元のものを子に持つSubstringRopeを作る。multiplicationも同様」 構築効率は良いけど参照時の効率悪くなったりしないのかなこれ #rubykaigi #rubykaigiA

2016-09-08 15:46:20
みよひで画伯 @miyohide

メモリ間のコピーを減らすことで高速化を実現って感じか。 #rubykaigi #rubykaigiA

2016-09-08 15:47:14
elcondor @elcondor

ともかく徹底的にコピーを回避することでパフォーマンス上げてる、と理解すれば良いのかしら #RubyKaigi #RubyKaigiA

2016-09-08 15:47:20
igaiga @igaiga555

TruffleはJRubyに試験導入済って理解でおk? jruby.org/2016/05/27/jru… #rubykaigiA

2016-09-08 15:47:27
ripM8QhdYbs6Whn @ripM8QhdYbs6Whn

文字列を大量に扱うRailsなどで標準化できたら、ものすごく早くなるのでは? #rubykaigi #rubykaigiA

2016-09-08 15:48:20
y-yagi @y_yagi

non ascii characterでもこんなに早いのか #rubykaigiA

2016-09-08 15:49:29
成瀬 @nalsh

このベンチマーク、メソッドの呼び出しコストしか計れてないんじゃないか #RubyKaigiA

2016-09-08 15:49:44
みよひで画伯 @miyohide

誰か止めなかったのか。”こにちわ” #rubykaigi #rubykaigiA

2016-09-08 15:49:58
かるぱねるら @karupanerura

("\xe5"+"\xb1"+"\xb1").length みたいなのも高速に正しく解決できるかな。 #rubykaigi #rubykaigiA

2016-09-08 15:53:32
黒曜@Leaner Technologies @kokuyouwind

他の利点としてまとめられてるのは、比較を参照で取り扱えるとかスレッドセーフとか、基本的に不変性が効いてるやつだなー。 #rubykaigi #rubykaigiA

2016-09-08 15:53:52
WAKASUGI 5T111111 @5t111111

ちょっと最初から聞いてなかったのでわからないんだけど、Rope はコンセプト的には MRI にも (一部でも) 適用できるものなのかな? #rubykaigi #rubykaigiA

2016-09-08 15:54:50