• T
    Annotate Kernel#class as inline (#3250) · 946e5cc6
    Takashi Kokubun 提交于
    ```
    $ benchmark-driver -v --rbenv 'before;after;before --jit;after --jit' benchmark/mjit_class.yml --repeat-count=4
    before: ruby 2.8.0dev (2020-06-23T07:09:54Z master 37a2e48d) [x86_64-linux]
    after: ruby 2.8.0dev (2020-06-23T17:29:56Z inline-class 0ff147c007) [x86_64-linux]
    before --jit: ruby 2.8.0dev (2020-06-23T07:09:54Z master 37a2e48d) +JIT [x86_64-linux]
    after --jit: ruby 2.8.0dev (2020-06-23T17:29:56Z inline-class 0ff147c007) +JIT [x86_64-linux]
    Calculating -------------------------------------
                             before       after  before --jit  after --jit
        mjit_class(self)    39.219M     40.060M       53.502M      69.202M i/s -     40.000M times in 1.019915s 0.998495s 0.747631s 0.578021s
           mjit_class(1)    39.567M     41.242M       52.100M      68.895M i/s -     40.000M times in 1.010935s 0.969885s 0.767749s 0.580591s
    
    Comparison:
                     mjit_class(self)
             after --jit:  69201690.7 i/s
            before --jit:  53502336.4 i/s - 1.29x  slower
                   after:  40060289.1 i/s - 1.73x  slower
                  before:  39218939.2 i/s - 1.76x  slower
    
                        mjit_class(1)
             after --jit:  68895358.6 i/s
            before --jit:  52100353.0 i/s - 1.32x  slower
                   after:  41241993.6 i/s - 1.67x  slower
                  before:  39567314.0 i/s - 1.74x  slower
    ```
    946e5cc6
object.c 127.3 KB