[#46309] [ruby-trunk - Bug #2154][Assigned] filesystem encoding of UNIX — "usa (Usaku NAKAMURA)" <usa@...>

13 messages 2012/10/29
[#46310] Re: [ruby-trunk - Bug #2154][Assigned] filesystem encoding of UNIX — Tanaka Akira <akr@...> 2012/10/29

2012年10月29日 10:31 usa (Usaku NAKAMURA) <[email protected]>:

[#46366] Re: [ruby-trunk - Bug #2154][Assigned] filesystem encoding of UNIX — "U.Nakamura" <usa@...> 2012/11/02

こんにちは、なかむら(う)です。

[#46375] Re: [ruby-trunk - Bug #2154][Assigned] filesystem encoding of UNIX — KOSAKI Motohiro <kosaki.motohiro@...> 2012/11/02

>> とくに指定しなければ、default external は locale から設定されるので、

[ruby-dev:46281] [ruby-trunk - Feature #6173] re.cのrb_memsearch()におけるmemchr()の利用

From: "ko1 (Koichi Sasada)" <redmine@...>
Date: 2012-10-26 21:46:59 UTC
List: ruby-dev #46281
Issue #6173 has been updated by ko1 (Koichi Sasada).


パッチの判断は中田さん,お願い出来ますか&コミット頂けませんか.
コミッタ権の判断は,まつもとさんでもいいんですが,多分反対は無さそうですが.

----------------------------------------
Feature #6173: re.cのrb_memsearch()におけるmemchr()の利用
https://bugs.ruby-lang.org/issues/6173#change-31681

Author: Glass_saga (Masaki Matsushita)
Status: Assigned
Priority: Normal
Assignee: matz (Yukihiro Matsumoto)
Category: core
Target version: 2.0.0


re.cのrb_memsearch()では、m == 1な場合にはfor文で各バイトと比較していますが、memchr()を用いると性能の改善がみられます。
次のようなベンチマークを実行したところ、以下のような結果となりました。

require 'benchmark'

str = "hoge" * 10000 + "\n"

Benchmark.bm do |x|
  x.report do
    str.index("\n")
  end
end

trunk(r35083):
       user     system      total        real 
   0.000000   0.000000   0.000000 (  0.000185)

proposal:
       user     system      total        real 
   0.000000   0.000000   0.000000 (  0.000018)

patchを添付します。


-- 
http://bugs.ruby-lang.org/

In This Thread