JRubyにおけるString実装高速化 Rope 紹介 #RubyKaigi #RubyKaigiA
concat、そもそもMRI2.3 より JRuby9.1 のほうが速いのか。#rubykaigi #rubykaigia
2016-09-08 15:42:24文字列の連結の話。RopeとJRuby(truffle)を使った場合CRubyの約80倍早い。追加(<<)の場合では2.3倍。 #rubykaigi #rubykaigiA
2016-09-08 15:42:47"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静的なデータ構造にしたら、そりゃ破壊的なAppendとのギャップは大きくなるな。 #rubykaigiA
2016-09-08 15:44:19「SubstringはRStringだとコピーを作るが、Ropeだと元のものを子に持つSubstringRopeを作る。multiplicationも同様」 構築効率は良いけど参照時の効率悪くなったりしないのかなこれ #rubykaigi #rubykaigiA
2016-09-08 15:46:20ともかく徹底的にコピーを回避することでパフォーマンス上げてる、と理解すれば良いのかしら #RubyKaigi #RubyKaigiA
2016-09-08 15:47:20TruffleはJRubyに試験導入済って理解でおk? jruby.org/2016/05/27/jru… #rubykaigiA
2016-09-08 15:47:27文字列を大量に扱うRailsなどで標準化できたら、ものすごく早くなるのでは? #rubykaigi #rubykaigiA
2016-09-08 15:48:20("\xe5"+"\xb1"+"\xb1").length みたいなのも高速に正しく解決できるかな。 #rubykaigi #rubykaigiA
2016-09-08 15:53:32他の利点としてまとめられてるのは、比較を参照で取り扱えるとかスレッドセーフとか、基本的に不変性が効いてるやつだなー。 #rubykaigi #rubykaigiA
2016-09-08 15:53:52ちょっと最初から聞いてなかったのでわからないんだけど、Rope はコンセプト的には MRI にも (一部でも) 適用できるものなのかな? #rubykaigi #rubykaigiA
2016-09-08 15:54:50