モジュール
-
GC
:: Profiler (11)
キーワード
-
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (11) -
NEWS for Ruby 2
. 1 . 0 (11) -
NEWS for Ruby 2
. 7 . 0 (5) -
Profiler
_ _ (6) - result (11)
検索結果
-
profile (38052.0)
-
Ruby プログラムのためのプロファイラです。 プロファイラとは効率改善のための調査に用いられるツールのことです。 profile ライブラリは各メソッドの実行時間に関する統計を出力します。
...
profile ライブラリは各メソッドの実行時間に関する統計を出力します。
profile はそれ自身がオーバーヘッドになる
ためメソッド呼び出しあたりの処理時間がかなり遅くなります。
=== 使い方
以下のように、ruby に -r profile......オプションを付けて実行します。
$ ruby -r profile foo.rb
foo.rb の実行が終わると標準エラー出力にプロファイルが出力されます。
プロファイルは各メソッドの実行時間に関する統計からなりますが、
この時間には大きく分.......65 214.49 Fixnum#step
31.38 2.88 1.38 2410 0.57 0.57 Array#[]=
27.84 4.10 1.23 2 613.28 2070.31 Range#each
4.26 4.29 0.19 1 187.50 234.38 Array#join
1.06 4.34 0.05 168 0.28 0.28 Fixnum#to_s
0.... -
Profiler
_ _ (6056.0) -
プロファイラの実装です。 Profiler__.start_profile 実行から、Profiler__.stop_profile までの 区間の実行コードのプロファイルを取得します。
...ァイラの実装です。
Profiler__.start_profile 実行から、Profiler__.stop_profile までの
区間の実行コードのプロファイルを取得します。
以下の使用例を参照してください。
require 'profiler'
Profiler__.start_profile
require 'tk' # こ......のコードのプロファイルが測定される
Profiler__.print_profile(STDOUT)
# =>
% cumulative self self total
time seconds seconds calls ms/call ms/call name
51.64 1.10 1.10 3 366.67 776.67 Kernel.require
17.37......0.04 19 2.11 2.11 Module#private
1.41 2.16 0.03 29 1.03 1.38 Module#include
0.94 2.18 0.02 10 2.00 4.00 Module#module_function
0.94 2.20 0.02 2 10.00 10.00 Array#collect
:
:
<snip>... -
GC
:: Profiler . result -> String (3006.0) -
GC のプロファイル情報をフォーマットし、文字列として返します。
...発生ごとに集計します。
以下は、5 回 GC が発生した場合の実行例です。
$ ruby -e "GC::Profiler.enable; a = Array.new(100000){ 'aa' }; puts GC::Profiler.result"
GC 5 invokes.
Index Invoke Time(sec) Use Size(byte) Total Size(byte) Total Object......Time
Ruby が起動してから GC が起動するまでに経過した時間
: Use Size
ヒープ内での使用サイズ
: Total Size
ヒープ全体のサイズ
: Total Object
ヒープ内に存在するオブジェクトの個数
: GC Time
GC の処理時間
@see GC::Profiler.report... -
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (384.0) -
1.6.8から1.8.0への変更点(まとめ) * ((<1.6.8から1.8.0への変更点(まとめ)/インタプリタの変更>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加されたクラス/モジュール>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加されたメソッド>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加された定数>)) * ((<1.6.8から1.8.0への変更点(まとめ)/拡張されたクラス/メソッド(互換性のある変更)>)) * ((<1.6.8から1.8.0への変更点(まとめ)/変更されたクラス/メソッド(互換性のない変更)>)) * ((<1.6.8から1.8.0への変更点(まとめ)/文法の変更>)) * ((<1.6.8から1.8.0への変更点(まとめ)/正規表現>)) * ((<1.6.8から1.8.0への変更点(まとめ)/Marshal>)) * ((<1.6.8から1.8.0への変更点(まとめ)/Windows 対応>)) * ((<1.6.8から1.8.0への変更点(まとめ)/廃止された(される予定の)機能>)) * ((<1.6.8から1.8.0への変更点(まとめ)/ライブラリ>)) * ((<1.6.8から1.8.0への変更点(まとめ)/拡張ライブラリAPI>)) * ((<1.6.8から1.8.0への変更点(まとめ)/バグ修正>)) * ((<1.6.8から1.8.0への変更点(まとめ)/サポートプラットフォームの追加>))
...別名) ((<ruby-dev:20197>))
=== Array
: ((<Array#transpose|Array/transpose>)) [new]
追加
: ((<Array#zip|Enumerable/zip>)) [new]
: ((<Enumerable#zip|Enumerable/zip>)) [new]
追加
: ((<Array#fetch|Array/fetch>)) [new]
追加
: ((<Array#insert|Array/insert>)) [new]
追加 (......=== その他
: ((<Array#values_at|Array/values_at>)) [new]
: ((<Hash#values_at|Hash/values_at>)) [new]
: ((<ENV/ENV.values_at>)) [new]
: ((<MatchData#values_at|MatchData/values_at>)) [new]
: ((<aStruct#values_at|Struct/values_at>)) [new]
ruby 1.6 の ((<indexes|Array/indexes>)) は、values_a......n32/registry">)) [new]
Win32でレジストリにアクセスするためのライブラリが追加されました。
: ((<profiler>)) [lib] [new]
追加。((<profile>)) の実体として分離されました。
: ((<open-uri>)) [lib] [new]
追加
: ((<set>)) [lib] [new]
追加
: ((... -
NEWS for Ruby 2
. 7 . 0 (36.0) -
NEWS for Ruby 2.7.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
...ンで止められます。
* 「$,」にnil以外の値を設定すると警告が出るようになりました。 14240
nil以外の時はArray#joinで参照した時も警告が出ます。
この警告は「-W:no-deprecated」オプションで止められます。
* ヒアドキ......参照してください。
=== 組み込みクラスの更新 (注目すべきもののみ)
* Array
* 新規メソッド
* Array#intersectionが追加されました。 16155
* Array#minmaxがEnumerable#minmaxより高速な実装として追加されました。 15929
* Comp......。しかし返り値を変更して
引数を変更しないことを期待するコードが壊れるかもしれません。
* profile.rb, Profiler__
* 標準添付ライブラリから削除されました。
Ruby 2.0.0からメンテナンスされていませんでした。... -
NEWS for Ruby 2
. 1 . 0 (24.0) -
NEWS for Ruby 2.1.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
...よるメソッド定義式は nil の代わりにメソッド名をシンボルで返します
=== 組み込みクラスの更新
* Array
* 追加: Array#to_h キーと値のペアの配列をハッシュに変換します。
* Binding
* 追加: Binding#local_variable_get
* 追......ときは string-scrub gem を使います。
* Symbol
* 全てのシンボルは freeze されるようになりました
* pack/unpack (Array/String)
* プラットフォームが対応していれば Q! と q! は long long 型を表します
* toplevel
* main.using はもは......バック関数を引数に取ります。
例えば、Cのシグナルハンドラから実行するために使います。
* 追加: rb_profile_frames() コールスタックのプロファイルのために現在のRubyのスタックに
低コストでアクセスする機能を提...