るりまサーチ

最速Rubyリファレンスマニュアル検索!
72件ヒット [1-72件を表示] (0.029秒)
トップページ > クエリ:File[x] > クエリ:Time[x] > クエリ:profile[x]

別のキーワード

  1. _builtin file?
  2. _builtin file
  3. fileutils copy_file
  4. digest file
  5. file mtime

ライブラリ

モジュール

検索結果

profile (44046.0)

Ruby プログラムのためのプロファイラです。 プロファイラとは効率改善のための調査に用いられるツールのことです。 profile ライブラリは各メソッドの実行時間に関する統計を出力します。

...
profile
ライブラリは各メソッドの実行時間に関する統計を出力します。

profile
はそれ自身がオーバーヘッドになる
ためメソッド呼び出しあたりの処理時間がかなり遅くなります。

=== 使い方

以下のように、ruby に -r profile...
...オプションを付けて実行します。

$ ruby -r profile foo.rb

foo.rb の実行が終わると標準エラー出力にプロファイルが出力されます。

プロファイルは各メソッドの実行時間に関する統計からなりますが、
この時間には大きく分...
...イルの結果は例えば次のようになります。

$ ruby -r profile sample/sieve.rb 1000
2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47 … 略 …
% cumulative self self total
time
seconds seconds calls ms/call ms/call name
33.87 1.4...

GC::Profiler.total_time -> Float (12107.0)

GC のプロファイル情報から GC の総計時間を計算し、msec 単位で返します。

...GC のプロファイル情報から GC の総計時間を計算し、msec 単位で返します。

//emlist[例][ruby]{
GC::Profiler.enable
GC.start
GC::Profiler.total_time # => 0.0011530000000000012
//}...

Profiler__ (12056.0)

プロファイラの実装です。 Profiler__.start_profile 実行から、Profiler__.stop_profile までの 区間の実行コードのプロファイルを取得します。

...ァイラの実装です。
Profile
r__.start_profile 実行から、Profiler__.stop_profile までの
区間の実行コードのプロファイルを取得します。

以下の使用例を参照してください。

require 'profiler'

Profile
r__.start_profile
require 'tk' # こ...
...のコードのプロファイルが測定される
Profile
r__.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...
...lize
8.92 1.66 0.19 514 0.37 0.37 Module#method_added
6.57 1.80 0.14 1 140.00 140.00 Profiler__.start_profile
4.23 1.89 0.09 15 6.00 10.67 Kernel.extend
3.29 1.96 0.07 15 4.67 4.67 Module#e...

GC::Profiler.raw_data -> [Hash, ...] | nil (6058.0)

GC のプロファイル情報を GC の発生ごとに Hash の配列 (:GC_INVOKE_TIME が早いもの順)で返します。GC::Profiler が有効になっ ていない場合は nil を返します。

...配列
(:GC_INVOKE_TIME が早いもの順)で返します。GC::Profiler が有効になっ
ていない場合は nil を返します。

例:

GC::Profiler.enable
GC.start
GC::Profiler.raw_data
# => [
{
:GC_TIME=>1.3000000000000858e-05,
:GC_INVOKE_TIME=>0.0106349999999999...
...TOTAL_OBJECTS=>14724,
:GC_IS_MARKED=>false
},
# ...
]

各項目の意味を以下に示します。

: :GC_TIME

GC の処理時間(秒)

: :GC_INVOKE_TIME

Ruby が起動してから GC が起動するまでに経過した時間(秒)

: :HEAP_USE_SIZE

ヒープ内での使...
...、GC_PROFILE_MORE_DETAIL を有効にして Ruby をビルドした場合、以下の
キーも参照できます。

* :GC_MARK_TIME
* :GC_SWEEP_TIME
* :ALLOCATE_INCREASE
* :ALLOCATE_LIMIT
* :HEAP_USE_SLOTS
* :HEAP_LIVE_OBJECTS
* :HEAP_FREE_OBJECTS
* :HAVE_FINALIZE

@see GC::Profiler.repor...

GC::Profiler.result -> String (6024.0)

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 Time(ms)
1 0.012...
...nvoke Time
Ruby が起動してから GC が起動するまでに経過した時間
: Use Size
ヒープ内での使用サイズ
: Total Size
ヒープ全体のサイズ
: Total Object
ヒープ内に存在するオブジェクトの個数
: GC Time
GC の処理時間

@see GC::Profiler.re...

絞り込み条件を変える

GC::Profiler.report(out = $stdout) -> nil (6012.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 Si...
...ze(byte) Total Object GC Time(ms)
# 1 0.019 303720 1269840 31746 1.25899999999999967493
//}

@see GC::Profiler.result...

1.6.8から1.8.0への変更点(まとめ) (528.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への変更点(まとめ)/サポートプラットフォームの追加>))

...り、(({$?})) の値も整数からこのクラ
スのインスタンスになりました。

=== クラス階層

: ((<File::Constants>))

File
::Constants は、File クラスでなく IO クラスが include するように
なりました。((<ruby-dev:20964>))

: ((<UnboundMethod>)) [com...
...します。

=== Time

: ((<Time#getgm|Time/getgm>)) [new]
: ((<Time#getlocal|Time/getlocal>)) [new]
: ((<Time#getutc|Time/getutc>)) [new]
: ((<Time#gmt_offset|Time/gmt_offset>)) [new]
: ((<Time#gmtoff|Time/gmtoff>)) [new]
: ((<Time#utc_offset|Time/utc_offset>)) [new]...
...n32/registry">)) [new]
Win32でレジストリにアクセスするためのライブラリが追加されました。

: ((<profiler>)) [lib] [new]

追加。((<profile>)) の実体として分離されました。

: ((<open-uri>)) [lib] [new]

追加

: ((<set>)) [lib] [new]

追加

: ((...

NEWS for Ruby 2.7.0 (72.0)

NEWS for Ruby 2.7.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。

...ます。 10344

* File
* 新規メソッド
* パスが絶対パスかどうかをポータブルに判定するFile.absolute_path?メソッドが追加されました。 15868
* 変更されたメソッド
* Windows以外のプラットフォームでFile.extnameが「.」で...
...ymbol#end_with?が追加されました。 16348

* Time
* 新規メソッド
* Time#ceilが追加されました。 15772
* Time#floorが追加されました。 15653
* 変更されたメソッド
* Time#inspectがTime#to_sから分離されて、秒未満も...
...。しかし返り値を変更して
引数を変更しないことを期待するコードが壊れるかもしれません。

* profile.rb, Profiler__
* 標準添付ライブラリから削除されました。
Ruby 2.0.0からメンテナンスされていませんでした。...