タグ

ブックマーク / www.a-k-r.org (3)

  • 327種類のRubyをビルドする方法 ~0.49から2.6.0-preview2まで~

    cu39
    cu39 2018/06/05
  • 天泣記

    2018-02-04 (Sun)#1 mjit を試したruby に mjit がマージされたというので、あからさまに効くだろう例を作って試してみた。 % ./ruby -v --jit -e ' def m(a) i = 0 b = 0 while i < 10000000 b += a i += 1 end b end 40.times { t1 = Process.clock_gettime(Process::CLOCK_THREAD_CPUTIME_ID) m 1 t2 = Process.clock_gettime(Process::CLOCK_THREAD_CPUTIME_ID) t = t2 - t1 p ["*"*(t*100), t] } ' ruby 2.6.0dev (2018-02-04 trunk 62205) [x86_64-linux] ["*********

    cu39
    cu39 2018/02/05
  • 天泣記 2015-10-07 (Wed) #1 frozen_string_literal: true の効果

    2015-10-07 (Wed)#1 frozen_string_literal: true の効果えんどうさんの「Ruby 3.0 の特大の非互換について」が話題になっているので定量的な話と社会問題について述べてみよう。 文字列リテラルの評価において文字列オブジェクト生成を抑制することで当に速くなるのか、というのは興味のあるところである。ぜんぜん速くならないなら、.freeze をつけるようなリクエストはぜんぶ拒否してしまえばいいわけで、社会問題などという話にはならない。 ささださんの計測によれば、文字列オブジェクト生成に対して、GC のコストは少ないそうである。とはいえ、文字列オブジェクトを生成しなければ、生成コストと GC コストを除去できるので、それが積み上がって実際のアプリケーションがどの程度速くなるのか、というのが問題である。(GC コストについては、除去されるというより、G

    天泣記 2015-10-07 (Wed) #1 frozen_string_literal: true の効果
  • 1