[macruby-changes] [MacRuby/MacRuby] a798d2: Performance improvement in String#slice!. does not...
noreply at github.com
noreply at github.com
Fri Oct 7 08:47:54 PDT 2011
Branch: refs/heads/master
Home: https://github.com/MacRuby/MacRuby
Commit: a798d2b87e38f38ca722fe7a29346855984a6e8d
https://github.com/MacRuby/MacRuby/commit/a798d2b87e38f38ca722fe7a29346855984a6e8d
Author: Watson <watson1978 at gmail.com>
Date: 2011-10-07 (Fri, 07 Oct 2011)
Changed paths:
M string.c
Log Message:
-----------
Performance improvement in String#slice!. does not reset a flag of string in str_splice when does not replace the string.
* before
user system total real
slice with ASCII 0.010000 0.000000 0.010000 ( 0.006842)
slice! with ASCII 0.410000 0.000000 0.410000 ( 0.405871)
slice! with UTF8 0.600000 0.000000 0.600000 ( 0.596322)
* after
user system total real
slice with ASCII 0.010000 0.000000 0.010000 ( 0.006411)
slice! with ASCII 0.020000 0.000000 0.020000 ( 0.017780)
slice! with UTF8 0.410000 0.000000 0.410000 ( 0.402712)
----
require 'benchmark'
Benchmark.bm(18) do |x|
str = "abcdef" * 10000
str2 = "いろは" * 10000
x.report "slice with ASCII" do
5000.times do
str.slice(0, 10)
end
end
x.report "slice! with ASCII" do
5000.times do
str.slice!(0, 10)
end
end
x.report "slice! with UTF8" do
5000.times do
str2.slice!(0, 10)
end
end
end
More information about the macruby-changes
mailing list