From: anamma06@... Date: 2020-05-07T18:15:10+00:00 Subject: [ruby-core:98197] [Ruby master Bug#16840] Why is Ruby getting slower in every version? Issue #16840 has been reported by ana06 (Ana Maria Martinez Gomez). ---------------------------------------- Bug #16840: Why is Ruby getting slower in every version? https://bugs.ruby-lang.org/issues/16840 * Author: ana06 (Ana Maria Martinez Gomez) * Status: Open * Priority: Normal * Backport: 2.5: UNKNOWN, 2.6: UNKNOWN, 2.7: UNKNOWN ---------------------------------------- I was playing around with Ruby hashing and I have discovered something strange/surprising. The file ``test.rb`` looks like: ```ruby require 'benchmark' $N = 100000 class Ana end objects = Array.new($N) { Ana.new() } hash = {} puts Benchmark.measure { 100.times { objects.each { |obj| hash[obj] = true } }} ``` I executed ``test.rb`` with different Ruby versions and it takes longer with newer versions. There is 1.5 seconds difference between Ruby 2.5 and master. Is that expected? And if so, why? Those are the execution results: ``` > rbenv shell 2.5.0 > ruby -v ruby 2.5.0p0 (2017-12-25 revision 61468) [x86_64-linux] > ruby test.rb 2.236504 0.003546 2.240050 ( 2.240256) > ruby test.rb 2.247041 0.003680 2.250721 ( 2.250860) > ruby test.rb 2.276305 0.000351 2.276656 ( 2.276829) >� > rbenv shell 2.6.2 > ruby -v ruby 2.6.2p47 (2019-03-13 revision 67232) [x86_64-linux] > ruby test.rb 2.579052 0.004181 2.583233 ( 2.583541) > ruby test.rb 2.580179 0.000000 2.580179 ( 2.580362) > ruby test.rb 2.646516 0.000441 2.646957 ( 2.647398) >� > rbenv shell 2.7.1 > ruby -v ruby 2.7.1p83 (2020-03-31 revision a0c7c23c9c) [x86_64-linux] > ruby test.rb 2.915415 0.004209 2.919624 ( 2.920206) > ruby test.rb 2.867767 0.007511 2.875278 ( 2.875416) > ruby test.rb 2.877741 0.000410 2.878151 ( 2.878431) >� > rbenv shell 2.8.0-dev > ruby -v ruby 2.8.0dev (2020-05-07T16:22:38Z master 7ded8fd29a) [x86_64-linux] > ruby test.rb 3.840961 0.007852 3.848813 ( 3.849499) > ruby test.rb 3.748391 0.007833 3.756224 ( 3.756520) > ruby test.rb 3.686487 0.001656 3.688143 ( 3.688332) ``` -- https://bugs.ruby-lang.org/ Unsubscribe: