Project

General

Profile

Actions

Bug #13357

closed

Improve Time#+ & Time#- performance

Bug #13357: Improve Time#+ & Time#- performance

Added by watson1978 (Shizuo Fujita) over 8 years ago. Updated over 8 years ago.

Status:
Closed
Assignee:
-
Target version:
-
[ruby-dev:50036]

Description

Improve Time#+ & Time#- performance

Time#+ & Time#- will be faster around 15%.
If internal values would have Fixnum,
optimized function improves performance.

Before

 user system total real Time#+ 0.820000 0.000000 0.820000 ( 0.818081) Time#- 0.810000 0.000000 0.810000 ( 0.813835) 

After

 user system total real Time#+ 0.710000 0.000000 0.710000 ( 0.710241) Time#- 0.710000 0.010000 0.720000 ( 0.714151) 

Test code

require 'benchmark' Benchmark.bmbm do |x| x.report "Time#+" do t = Time.now 2000000.times do t + 1 end end x.report "Time#-" do t = Time.now 2000000.times do t - 1 end end end 

Patch

The patch is in https://github.com/ruby/ruby/pull/1547

Actions

Also available in: PDF Atom