[#34204] 「プログラミング Ruby 」 p.257 defined? はメソッド? — Noritsugu Nakamura <nnakamur@...>

15 messages 2002/03/05
[#34205] Re: 「プログラミング Ruby 」 p.257 defined? はメソッド? — nobu.nakada@... 2002/03/05

なかだです。

[#34244] しぶらぐっ議事録。 — rubiben <ozaki@...>

48 messages 2002/03/08
[#34250] Re: しぶらぐっ議事録。 — Minero Aoki <aamine@...> 2002/03/09

あおきです。

[#34246] Re: しぶらぐっ議事録。 — rubikitch <rubikitch@...> 2002/03/08

From: rubiben <ozaki@ruby-lang.org>

[#34448] 文字コード混在スクリプトの実行 — Noritsugu Nakamura <nnakamur@...>

14 messages 2002/03/16

[#34453] カレンダー文字列を作るメソッド — Take_tk <ggb03124@...>

たけ(tk)です。

13 messages 2002/03/16

[#34534] スクリプティング言語における GPL — Taku Nakajima <tnakajima@...>

中島@ブレーンです。

26 messages 2002/03/21

[#34552] Re: 1.7 に関して — "井上 浩一" <kyoui32@...>

井上です。

22 messages 2002/03/22
[#34556] Re: 1.7 に関して — "U.Nakamura" <usa@...> 2002/03/22

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

[#34590] Ruby FAQ (Re: 1.7 に関して) — TAKAHASHI Masayoshi <maki@...> 2002/03/22

高橋征義です。

[#34570] cgi.rb+ イテレータ — FUJIOKA Takeyuki <fujioka@...>

藤岡です。

15 messages 2002/03/22

[#34676] 安心できる Marshal と、 Ruby バージョンの検査法 — MALTA Koji <malta@...>

丸田と申します。

62 messages 2002/03/30
[#34678] Re: 安心できる Marshal と、 Ruby バージョンの検査法 — Koji Arai <JCA02266@...> 2002/03/31

新井です。

[#34682] Ruby バージョンの検査法 — MALTA Koji <malta@...> 2002/03/31

丸田です。 MarshalとRUBY_VERSIONの話題を分離します。

[#34694] Re: Ruby バージョンの検査法 — WATANABE Hirofumi <eban@...> 2002/04/01

わたなべです。

[#34695] Re: Ruby バージョンの検査法 — shukaku@... 2002/04/01

At Mon, 1 Apr 2002 16:06:23 +0900,

[#34697] Re: Ruby バージョンの検査法 — WATANABE Hirofumi <eban@...> 2002/04/01

わたなべです。

[#34714] Re: Ruby バージョンの検査法 — MALTA Koji <malta@...> 2002/04/01

丸田です。

[#34719] Re: Ruby バージョンの検査法 — HIDAKA Takahiro <cv8t-hdk@...> 2002/04/02

 ひだかです。

[#34738] Re: Ruby バージョンの検査法 — MALTA Koji <malta@...> 2002/04/02

丸田です。

[#34743] Re: Ruby バージョンの検査法 — matz@... (Yukihiro Matsumoto) 2002/04/02

まつもと ゆきひろです

[#34748] Re: Ruby バージョンの検査法 — "NAKAMURA, Hiroshi" <nakahiro@...> 2002/04/03

なひです。

[#34760] Re: Ruby バージョンの検査法 — Koji Arai <JCA02266@...> 2002/04/03

新井です。

[#34765] Re: Ruby バージョンの検査法 — "U.Nakamura" <usa@...> 2002/04/04

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

[#34776] Re: Ruby バージョンの検査法 — Tanaka Akira <akr@...17n.org> 2002/04/04

In article <20020404095542.7155.USA@osb.att.ne.jp>,

[#34681] 書籍に関する質問です — Nobuhide Kanagawa <nobuhide@...>

こんにちわ。

17 messages 2002/03/31

[ruby-list:34171] Re: cygwin から mswin32 へそれと高速化 require

From: UENO Katsuhiro <unnie@...>
Date: 2002-03-03 11:02:44 UTC
List: ruby-list #34171
うえのです。

On Sun, 3 Mar 2002 01:40:48 +0900
Takaaki Tateishi <ttate@kt.jaist.ac.jp> wrote:

> > 高速のrequireは存在しないでしょうか?
>
> 以下のページにある非公式パッチを eval.c に対して適用するとどうなりますか?
>
>   http://kt-www.jaist.ac.jp/~ttate/ruby/ruby-patch.html
>
> 確信はもてないですが,requireが遅いのではなくて,たぶんメソッド定義に時間
> がかかっているのだと思っています.

最近 mswin32 な Ruby を使う機会ができたのですが、require の遅さは
file I/O (というか MSVCRT?) が遅いのが一番の原因だと思います。

実際、Windows 2000 (5.00.2195 sp2) では、

  c:\home\ruby> ruby -v
  ruby 1.6.6 (2001-12-26) [i686-mswin32]

  c:\home\ruby> ruby -e '100000.times{puts rand(1000000)}' > 1.rb

  c:\home\ruby> type 2.rb
  GC.disable
  f1 = Time.times.utime
  require './1.rb'
  f2 = Time.times.utime
  src = File.open("1.rb"){|f| f.read }
  f3 = Time.times.utime
  eval src
  f4 = Time.times.utime
  printf "%2.3f sec\n", f2 - f1
  printf "%2.3f sec\n", f3 - f2
  printf "%2.3f sec\n", f4 - f3

  c:\home\ruby> ruby 2.rb
  6.229 sec
  4.366 sec
  1.392 sec

と、10万個の FIXNUM をパースするのにかかる時間は require と
eval で大きな開きがありました。


ちなみに cygwin 版では

  c:\home\ruby> ruby-1.6.6-cygwin\ruby -v
  ruby 1.6.6 (2001-12-26) [i686-cygwin]

  c:\home\ruby> ruby-1.6.6-cygwin\ruby 2.rb
  1.672 sec
  0.120 sec
  1.462 sec

となり、こっちでは file read よりもパースに時間を食っている感じです。



 --  ----  -     - - -- -
うえの かつひろ <unnie@blue.sky.or.jp>

In This Thread