モジュール
-
GC
:: Profiler (8)
検索結果
先頭5件
-
GC
:: Profiler (69007.0) -
GC の起動回数や起動したタイミング、処理時間などの GC に関するプロファイル 情報や、ヒープ全体のサイズ、ヒープ内での使用サイズやヒープ内に存在する オブジェクトの個数といった情報を扱うモジュールです。
GC の起動回数や起動したタイミング、処理時間などの GC に関するプロファイル
情報や、ヒープ全体のサイズ、ヒープ内での使用サイズやヒープ内に存在する
オブジェクトの個数といった情報を扱うモジュールです。
@see GC -
GC
:: Profiler . enabled? -> bool (63133.0) -
GC のプロファイラを起動中であれば true、停止中であれば false を返します。
GC のプロファイラを起動中であれば true、停止中であれば false を返します。
例:
GC::Profiler.enabled? #=> false
GC::Profiler.enable
GC::Profiler.enabled? #=> true
GC::Profiler.disable
GC::Profiler.enabled? #=> false
@see GC::Profiler.enable, GC::Profiler.disable -
GC
:: Profiler . raw _ data -> [Hash , . . . ] | nil (63127.0) -
GC のプロファイル情報を GC の発生ごとに Hash の配列 (:GC_INVOKE_TIME が早いもの順)で返します。GC::Profiler が有効になっ ていない場合は nil を返します。
GC のプロファイル情報を GC の発生ごとに Hash の配列
(:GC_INVOKE_TIME が早いもの順)で返します。GC::Profiler が有効になっ
ていない場合は nil を返します。
例:
GC::Profiler.enable
GC.start
GC::Profiler.raw_data
# => [
{
:GC_TIME=>1.3000000000000858e-05,
:GC_INVOKE_TIME=>0.010634999999999999,
:HEAP_USE_SIZE=>289640,
... -
GC
:: Profiler . report(out = $ stdout) -> nil (63109.0) -
GC::Profiler.result の結果を out に出力します。
GC::Profiler.result の結果を out に出力します。
@param out 結果の出力先を指定します。デフォルトは $stdout です。
//emlist[例][ruby]{
GC::Profiler.enable
GC.start
GC::Profiler.report
# => GC 4 invokes.
# Index Invoke Time(sec) Use Size(byte) Total Size(byte) Total Object GC Time(ms)
# 1... -
GC
:: Profiler . disable -> nil (63097.0) -
GC のプロファイラを停止します。
GC のプロファイラを停止します。
例:
GC::Profiler.disable
GC::Profiler.enabled? #=> false
このメソッドでは、蓄積したプロファイル情報は破棄しません。
破棄したい場合は GC::Profiler.clear を呼び出してください。
@see GC::Profiler.enable, GC::Profiler.enabled? -
GC
:: Profiler . clear -> nil (63079.0) -
蓄積している GC のプロファイル情報をすべて削除します。
蓄積している GC のプロファイル情報をすべて削除します。
例:
GC::Profiler.enable
GC.start
GC.start
GC::Profiler.report #=> 2 回分の GC のプロファイル情報出力する。
GC::Profiler.clear
GC.start
GC::Profiler.report #=> 1 回分の GC のプロファイル情報出力する。 -
GC
:: Profiler . enable -> nil (63079.0) -
GC のプロファイラを起動します。
GC のプロファイラを起動します。
このメソッドを呼び出してから GC が発生すると、
GC についてプロファイル情報を取得します。
例:
GC::Profiler.enable
GC::Profiler.enabled? #=> true
@see GC::Profiler.disable, GC::Profiler.enabled? -
GC
:: Profiler . result -> String (63061.0) -
GC のプロファイル情報をフォーマットし、文字列として返します。
GC のプロファイル情報をフォーマットし、文字列として返します。
プロファイル情報は、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 ... -
GC
:: Profiler . total _ time -> Float (63043.0) -
GC のプロファイル情報から GC の総計時間を計算し、msec 単位で返します。
GC のプロファイル情報から GC の総計時間を計算し、msec 単位で返します。
//emlist[例][ruby]{
GC::Profiler.enable
GC.start
GC::Profiler.total_time # => 0.0011530000000000012
//} -
GC (25.0)
-
GC は Ruby インタプリタの「ゴミ集め(Garbage Collection)」を制御 するモジュールです。
GC は Ruby インタプリタの「ゴミ集め(Garbage Collection)」を制御
するモジュールです。
=== GCのチューニングについて
Ruby 2.1ではRGenGCと呼ばれる新たなGCメカニズムが導入されました。
それにともない、以下の環境変数が導入され、これらを
設定することでGCの動作をチューニングすることができます。
これらの環境変数の効果はRubyの起動時のみ有効です(つまりrubyを動かしている
途中で変更することはできません)。
====[a:tuning_gc] チューニングのための環境変数
* RUBY_GC_HEAP_INIT_SLOTS (de...