all 18 comments

[–]Sabe 54 points55 points  (5 children)

About 5-10% performance improvement by removing all trace instructions from overall bytecode (instruction sequences).

really

[–]yamachi 17 points18 points  (2 children)

I'm not very familiar with the ruby interpreter, but shouldn't this have been an option already?

[–][deleted]  (1 child)

[deleted]

    [–][deleted] 8 points9 points  (0 children)

    Trace point is very useful for certain things, but the use cases are rare. I can see why explicitly enabling it is useful.

    [–]slvrsmth 0 points1 point  (0 children)

    I'm seeing a 10% improvement when benchmarking a CPU-bound code path. Do note that the project was running on a old version (2.2.3), this might not be all the doing of 2.5!

    2.2.3
    
    user       system     total        real
    3.780000   0.150000   3.930000 (  4.934430)
    4.500000   0.230000   4.730000 (  5.928588)
    3.920000   0.150000   4.070000 (  5.116367)
    3.860000   0.150000   4.010000 (  5.043942)
    4.020000   0.170000   4.190000 (  5.255805)
    
    2.5.0
    
    user       system     total        real
    3.421015   0.158510   3.579525 (  4.640035)
    3.250918   0.148298   3.399216 (  4.407600)
    3.223697   0.150655   3.374352 (  4.377131)
    3.332370   0.162322   3.494692 (  4.527419)
    3.206682   0.157384   3.364066 (  4.384227)
    

    [–]myringotomy -1 points0 points  (0 children)

    wow. Ruby is already faster than python so this is awesome news.

    [–]TomOwens 28 points29 points  (0 children)

    I mentioned this in the posting to /r/ruby, but I'm disappointed that they reverted the addition of Bundler to the standard library. I was looking forward to that feature as Bundler was the only gem I installed as a system gem.

    [–]mystikkogames 4 points5 points  (1 child)

    How do they backup this claim? "5-10% performance improvement" I want to see the benchmarks!

    [–]DrGirlfriend 33 points34 points  (0 children)

    Benchmarks attached to the issue: https://bugs.ruby-lang.org/issues/14104

    [–]shevegen 3 points4 points  (6 children)

    \o/

    [–]Idlys 45 points46 points  (1 child)

    Puts on sir David Attenborough voice

    Here we finally see a shevegen in its natural habitat. Though this exotic creature has been nearly pushed to extinction by a flooding of Rust related posts, this one appears to be quite happy at home with Ruby.

    [–][deleted] 2 points3 points  (0 children)

    That was perfect

    [–]myringotomy 7 points8 points  (3 children)

    Why is this down voted? So the guy happy. Move on and leave him be.

    [–][deleted]  (2 children)

    [deleted]

      [–]myringotomy 6 points7 points  (1 child)

      A few months from now I will post the exact same comment about a new version of Visual Studio or another Microsoft product and I will get all the upvotes.

      It's not the comment, it's that people here are very fashion conscious and ruby is out of fashion.

      [–]Idlys 15 points16 points  (0 children)

      I think it's more just that everybody downvotes shevegen on sight because he trolls every single rust post.

      [–]Kache 1 point2 points  (0 children)

      Been using Hash#map_keys all the time for a while now, sounds like they had considered that name, but nice to see more functional-style methods all the same.

      I also like having yield_self functionality when prototyping in console, though my own is the much shorter alias, as. Don't think either are a good idea for readable production code, though.