Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remove local optimizations #4799

Merged
merged 3 commits into from
Jul 18, 2018

Commits on Jul 18, 2018

  1. Remove local optimizations 🔥

    Here are the results, each experiment consists of 40 forks of 10 warmups
    and 20 measurements each (that's what it takes to get ~30ms precision!):
    
    ConstantFold                12672.914 ± 29.044  ms/op
    InlineLocalObjects          12742.463 ± 29.693  ms/op
    DropNoEffects               12717.516 ± 28.266  ms/op
    DropGoodCasts               12753.709 ± 31.020  ms/op
    Jumpjump                    12758.874 ± 28.979  ms/op
    Devalify                    12820.393 ± 29.601  ms/op
    Valify                      12732.851 ± 29.466  ms/op
    InlineOptions               12705.638 ± 29.186  ms/op
    RemoveUnnecessaryNullChecks 12740.366 ± 29.604  ms/op
    InlineCaseIntrinsics        12675.068 ± 29.075  ms/op
    Not Optimized               12731.068 ± 28.731  ms/op
    All Optimizations           12762.053 ± 28.751  ms/op
    
    Also here a count of how many time each optimization modifies a tree
    when bootstrapping (running all of them together):
    
    20688 Devalify
     7165 DropNoEffects
     2787 InlineCaseIntrinsics
     1340 ConstantFold
      728 DropGoodCasts
       76 InlineOptions
       49 InlineLocalObjects
       16 RemoveUnnecessaryNullChecks
        3 Jumpjump
    
    Here are some additional numbers obtained using the Scala Native
    benchmarks:
    
    https://plot.ly/~olivierblanvillain/1/#plot
    OlivierBlanvillain committed Jul 18, 2018
    Configuration menu
    Copy the full SHA
    131b8e9 View commit details
    Browse the repository at this point in the history
  2. Move tests in tests/{pos, neg, run}-optimise

    Also remove defaultUnoptimised
    OlivierBlanvillain committed Jul 18, 2018
    Configuration menu
    Copy the full SHA
    a408a03 View commit details
    Browse the repository at this point in the history
  3. Update sidebar-yml

    OlivierBlanvillain committed Jul 18, 2018
    Configuration menu
    Copy the full SHA
    1ce2ee6 View commit details
    Browse the repository at this point in the history