るりまサーチ (Ruby 2.4.0)

最速Rubyリファレンスマニュアル検索!
41件ヒット [1-41件を表示] (0.011秒)
トップページ > バージョン:2.4.0[x] > ライブラリ:benchmark[x]

モジュール

キーワード

検索結果

Benchmark (7.0)

ベンチマークを取るためのモジュールです。

ベンチマークを取るためのモジュールです。

Benchmark.#benchmark(caption = "", label_width = nil, fmtstr = nil, *labels) {|rep| ...} -> [Benchmark::Tms] (7.0)

Benchmark::Report オブジェクトを生成し、それを引数として与えられたブロックを実行します。

...
Benchmark
::Report オブジェクトを生成し、それを引数として与えられたブロックを実行します。

基本的には以下のように使います。
ブロックが Benchmark::Tms オブジェクトの配列を返した場合は、
それらの数値も追加の行に表示...
...tstr フォーマット文字列を指定します。
この引数を省略すると Benchmark::FORMAT が使用されます。
@param labels ブロックが Benchmark::Tms オブジェクトの配列を返す場合に指定します。

=== フォーマット文字列

...
...Benchmark::Tms#utime
: %y
system CPU time で置き換えられます(Mnemonic: y of "s*y*stem")。Benchmark::Tms#stime
: %U
子プロセスの user CPU time で置き換えられます。Benchmark::Tms#cutime
: %Y
子プロセスの system CPU time で置き換えられます。Benchmark::...

Benchmark.#bm(label_width = 0, *labels) {|rep| ... } -> [Benchmark::Tms] (7.0)

Benchmark.#benchmark メソッドの引数を簡略化したものです。

...
Benchmark
.#benchmark メソッドの引数を簡略化したものです。

Benchmark
.#benchmark メソッドと同様に働きます。

@param label_width ラベルの幅を指定します。
@param labels ブロックが Benchmark::Tms オブジェクトの配列を返す場合に指定し...
...ます。

//emlist[][ruby]{
require 'benchmark'

n = 50000
Benchmark
.bm do |x|
x.report { for i in 1..n; a = "1"; end }
x.report { n.times do ; a = "1"; end }
x.report { 1.upto(n) do ; a = "1"; end }
end

#=>
#
# user system total real
# 1.033333 0.016667 1.016667 (...
...83333 ( 0.694605)
# 1.516667 0.000000 1.516667 ( 0.711077)
//}

以下のようにも書けます。

//emlist[][ruby]{
require 'benchmark'

n = 50000
Benchmark
.bm(7) do |x|
x.report("for:") { for i in 1..n; a = "1"; end }
x.report("times:") { n.times do ; a = "1"; end }
x.report("up...

Benchmark.#bmbm(width = 0) {|job| ... } -> [Benchmark::Tms] (7.0)

Benchmark::Job オブジェクトを生成して、それを引数として与えられたブロックを 実行します。

...
Benchmark
::Job オブジェクトを生成して、それを引数として与えられたブロックを
実行します。

ベンチマークの結果は GC の影響によって歪められてしまうことがあります。
このメソッドは与えられたブロックを二度実行する...
...する
ことは保証されません。

@param width ラベルの幅を指定します。

//emlist[][ruby]{
require 'benchmark'

array = (1..1000000).map { rand }

Benchmark
.bmbm do |x|
x.report("sort!") { array.dup.sort! }
x.report("sort") { array.dup.sort }
end

#=>
#
# Rehearsal --------...

Benchmark.#measure(label = "") { ... } -> Benchmark::Tms (7.0)

与えられたブロックを実行して、経過した時間を Process.#times で計り、 Benchmark::Tms オブジェクトを生成して返します。

...s で計り、
Benchmark
::Tms オブジェクトを生成して返します。

Benchmark
::Tms オブジェクトには to_s が定義されているので、
基本的には以下のように使います。

//emlist[][ruby]{
require 'benchmark'

puts Benchmark::CAPTION
puts Benchmark.measure { "a"...

絞り込み条件を変える

Benchmark.#realtime { ... } -> Float (7.0)

与えられたブロックを評価して実行時間を計測して返します。 返り値の単位は、秒です。

...与えられたブロックを評価して実行時間を計測して返します。
返り値の単位は、秒です。

//emlist[][ruby]{
require 'benchmark'
puts Benchmark.realtime { [0] * (10**8) } # => 1.0929416846483946
//}...

Benchmark::BENCHMARK_VERSION -> String (7.0)

benchmark ライブラリのバージョンを表します。

...
benchmark
ライブラリのバージョンを表します。...

Benchmark::CAPTION -> String (7.0)

Benchmark.#bm の内部などで使用されます。

...
Benchmark
.#bm の内部などで使用されます。

実際の定義は Benchmark::Tms::CAPTION でされています。

@see Benchmark::Tms::CAPTION...

Benchmark::FORMAT -> String (7.0)

Benchmark.#benchmark の第三引数のデフォルト値。

...
Benchmark
.#benchmark の第三引数のデフォルト値。

: %u
user CPU time で置き換えられます。Benchmark::Tms#utime
: %y
system CPU time で置き換えられます(Mnemonic: y of "s*y*stem")。Benchmark::Tms#stime
: %U
子プロセスの user CPU time で置き換えられま...
...す。Benchmark::Tms#cutime
: %Y
子プロセスの system CPU time で置き換えられます。Benchmark::Tms#cstime
: %t
total CPU time で置き換えられます。Benchmark::Tms#total
: %r
実経過時間で置き換えられます。Benchmark::Tms#real
: %n
ラベルで置き換え...
...られます(Mnemonic: n of "*n*ame")。Benchmark::Tms#label

上記のフォーマット文字列を使用しています。
この定数の内容は以下の通りです。

//emlist[][ruby]{
"%10.6u %10.6y %10.6t %10.6r\n"
//}

@see Benchmark.#benchmark, Benchmark::Tms::FORMAT...

Benchmark::Job (7.0)

Benchmark.#bmbm メソッドの内部で使用されるクラスです。

...Benchmark.#bmbm メソッドの内部で使用されるクラスです。

このライブラリのユーザーが直接意識する必要はありません。...

絞り込み条件を変える

Benchmark::Job#item(label = "") { ... } -> self (7.0)

与えられたラベルとブロックをジョブリストに登録します。

与えられたラベルとブロックをジョブリストに登録します。

@param label ラベル

Benchmark::Job#list -> [String, Proc] (7.0)

登録されているジョブのリストを返します。

登録されているジョブのリストを返します。

それぞれの要素は、ラベルとブロックからなる二要素の配列です。

Benchmark::Job#report(label = "") { ... } -> self (7.0)

与えられたラベルとブロックをジョブリストに登録します。

与えられたラベルとブロックをジョブリストに登録します。

@param label ラベル

Benchmark::Job#width -> Integer (7.0)

Benchmark::Job#list のサイズ。

...
Benchmark
::Job#list のサイズ。...

Benchmark::Job.new(width) -> Benchmark::Job (7.0)

Benchmark::Job のインスタンスを初期化して返します。

...
Benchmark
::Job のインスタンスを初期化して返します。

通常このメソッドがユーザーによって直接呼び出されることはありません。

@param width Benchmark::Job#list のサイズ。...

絞り込み条件を変える

Benchmark::Report (7.0)

Benchmark.#benchmark メソッドや Benchmark.#bm メソッドの 内部で使用されているクラスです。

...Benchmark.#benchmark メソッドや Benchmark.#bm メソッドの
内部で使用されているクラスです。

このライブラリのユーザーが直接意識する必要はありません。...

Benchmark::Report#item(label = "", *fmt) { ... } -> Benchmark::Tms (7.0)

ラベルと与えられたブロックの実行時間を標準出力に出力します。

...ラベルと与えられたブロックの実行時間を標準出力に出力します。

出力のフォーマットは Benchmark::Tms#format が行います。

@param label ラベル
@param fmt 結果に出力したいオブジェクト

@see Benchmark::Tms#format...

Benchmark::Report#list -> [Benchmark::Tms] (7.0)

Benchmark::Report#item 実行時に作成された Benchmark::Tms オ ブジェクトの一覧を返します。

...
Benchmark
::Report#item 実行時に作成された Benchmark::Tms オ
ブジェクトの一覧を返します。

@see Benchmark::Report#item...

Benchmark::Report#report(label = "", *fmt) { ... } -> Benchmark::Tms (7.0)

ラベルと与えられたブロックの実行時間を標準出力に出力します。

...ラベルと与えられたブロックの実行時間を標準出力に出力します。

出力のフォーマットは Benchmark::Tms#format が行います。

@param label ラベル
@param fmt 結果に出力したいオブジェクト

@see Benchmark::Tms#format...

Benchmark::Report.new(width = 0, fmtstr = nil) -> Benchmark::Report (7.0)

Benchmark::Report のインスタンスを初期化して返します。

...
Benchmark
::Report のインスタンスを初期化して返します。

通常このメソッドがユーザーによって直接呼び出されることはありません。

@param width ラベルの幅
@param fmtstr フォーマット文字列...

絞り込み条件を変える

Benchmark::Tms (7.0)

ベンチマークの計測に関連する各種時間を表現するクラスです。

ベンチマークの計測に関連する各種時間を表現するクラスです。

Benchmark::Tms#*(x) -> Benchmark::Tms (7.0)

self と x の乗算を計算します。

...self と x の乗算を計算します。

@param x Benchmark::Tms のオブジェクトか Float に暗黙の変換ができるオブジェクトです。

@return 計算結果は新しい Benchmark::Tms オブジェクトです。

@see Benchmark::Tms#memberwise...

Benchmark::Tms#+(x) -> Benchmark::Tms (7.0)

self と x の加算を計算します。

...self と x の加算を計算します。

@param x Benchmark::Tms のオブジェクトか Float に暗黙の変換ができるオブジェクトです。

@return 計算結果は新しい Benchmark::Tms オブジェクトです。

@see Benchmark::Tms#memberwise...

Benchmark::Tms#-(x) -> Benchmark::Tms (7.0)

self と x の減算を計算します。

...self と x の減算を計算します。

@param x Benchmark::Tms のオブジェクトか Float に暗黙の変換ができるオブジェクトです。

@return 計算結果は新しい Benchmark::Tms オブジェクトです。

@see Benchmark::Tms#memberwise...

Benchmark::Tms#/(x) -> Benchmark::Tms (7.0)

self と x の除算を計算します。

...self と x の除算を計算します。

@param x Benchmark::Tms のオブジェクトか Float に暗黙の変換ができるオブジェクトです。

@return 計算結果は新しい Benchmark::Tms オブジェクトです。

@see Benchmark::Tms#memberwise...

絞り込み条件を変える

Benchmark::Tms#add { ... } -> Benchmark::Tms (7.0)

与えられたブロックの実行時間を self に加算して 新しい Benchmark::Tms オブジェクトを生成して返します。

...与えられたブロックの実行時間を self に加算して
新しい Benchmark::Tms オブジェクトを生成して返します。

@see Benchmark.#measure...

Benchmark::Tms#add! { ... } -> self (7.0)

与えられたブロックの実行時間を self に加算して返します。

...与えられたブロックの実行時間を self に加算して返します。

このメソッドは self を破壊的に変更します。

@see Benchmark.#measure...

Benchmark::Tms#cstime -> Float (7.0)

子プロセスの System CPU time

子プロセスの System CPU time

Benchmark::Tms#cutime -> Float (7.0)

子プロセスの User CPU time

子プロセスの User CPU time

Benchmark::Tms#format(fmtstr = nil, *args) -> String (7.0)

self を指定されたフォーマットで整形して返します。

...Benchmark::Tms#utime
: %y
system CPU time で置き換えられます(Mnemonic: y of "s*y*stem")。Benchmark::Tms#stime
: %U
子プロセスの user CPU time で置き換えられます。Benchmark::Tms#cutime
: %Y
子プロセスの system CPU time で置き換えられます。Benchmark::...
...す。Benchmark::Tms#total
: %r
実経過時間で置き換えられます。Benchmark::Tms#real
: %n
ラベルで置き換えられます(Mnemonic: n of "*n*ame")。Benchmark::Tms#label

@param fmtstr フォーマット文字列です。
省略された場合は、Benchmark::Tms::...

絞り込み条件を変える

Benchmark::Tms#label -> String (7.0)

ラベル。

ラベル。

Benchmark::Tms#memberwise(op, x) -> Benchmark::Tms (7.0)

Benchmark::Tms の四則演算を実行するために内部で使用されるメソッドです。

...
Benchmark
::Tms の四則演算を実行するために内部で使用されるメソッドです。

@param op 演算子をシンボルで与えます。
@param x Benchmark::Tms のオブジェクトか Float に暗黙の変換ができるオブジェクトです。

@return 計算結果は新し...
... Benchmark::Tms オブジェクトです。...

Benchmark::Tms#real -> Float (7.0)

実経過時間。

実経過時間。

Benchmark::Tms#stime -> Float (7.0)

System CPU time

System CPU time

Benchmark::Tms#to_a -> Array (7.0)

6 要素の配列を返します。

6 要素の配列を返します。

要素は以下の順番で配列に格納されています。
* ラベル
* user CPU time
* system CPU time,
* 子プロセスの user CPU time
* 子プロセスの system CPU time,
* 実経過時間

絞り込み条件を変える

Benchmark::Tms#to_s -> String (7.0)

引数を省略して Benchmark::Tms#format を呼び出すのと同じです。

...引数を省略して Benchmark::Tms#format を呼び出すのと同じです。...

Benchmark::Tms#total -> Float (7.0)

合計時間。(utime + stime + cutime + cstime)

合計時間。(utime + stime + cutime + cstime)

Benchmark::Tms#utime -> Float (7.0)

User CPU time

User CPU time

Benchmark::Tms.new(utime = 0.0, stime = 0.0, cutime = 0.0, cstime = 0.0, real = 0.0, label = nil) -> Benchmark::Tms (7.0)

新しい Benchmark::Tms オブジェクトを生成して返します。

...新しい Benchmark::Tms オブジェクトを生成して返します。

@param utime User CPU time
@param stime System CPU time
@param cutime 子プロセスの User CPU time
@param cstime 子プロセスの System CPU time
@param real 実経過時間
@param label ラベル...

Benchmark::Tms::CAPTION -> String (7.0)

Benchmark.#bm の内部などで使用されます。

...
Benchmark
.#bm の内部などで使用されます。

@see Benchmark::CAPTION...

絞り込み条件を変える

Benchmark::Tms::FORMAT -> String (7.0)

Benchmark.#benchmark の第三引数のデフォルト値。

...
Benchmark
.#benchmark の第三引数のデフォルト値。

: %u
user CPU time で置き換えられます。Benchmark::Tms#utime
: %y
system CPU time で置き換えられます(Mnemonic: y of "s*y*stem")。Benchmark::Tms#stime
: %U
子プロセスの user CPU time で置き換えられま...
...す。Benchmark::Tms#cutime
: %Y
子プロセスの system CPU time で置き換えられます。Benchmark::Tms#cstime
: %t
total CPU time で置き換えられます。Benchmark::Tms#total
: %r
実経過時間で置き換えられます。Benchmark::Tms#real
: %n
ラベルで置き換え...
...られます(Mnemonic: n of "*n*ame")。Benchmark::Tms#label

上記のフォーマット文字列を使用しています。
この定数の内容は以下の通りです。

//emlist[][ruby]{
"%10.6u %10.6y %10.6t %10.6r\n"
//}

@see Benchmark.#benchmark, Benchmark::FORMAT...