Houdini 18.5 リファレンス ペイン

パフォーマンスモニタペイン

On this page

概要

パフォーマンスモニタはイベントを記録し、ノード、ビューポート、スクリプトのようなHoudiniオブジェクトの統計レポートを生成するプロファイラーです。モニタは、シーンでパフォーマンスのボトルネックを調べるのに役に立ちます。

プロファイル

プロファイルとは、シーンの統計スナップショットのことです。このプロファイルにHoudiniのプロファイルした各オブジェクトのパフォーマンスデータを記録しています。

新規プロファイルの作成

  1. ツールバーのをクリックすると新しい記録が開始します。これはパフォーマンスモニタをリスニング状態にするので、Houdiniで起こるイベントを記録します。

  2. Houdiniのパフォーマンスアクションが、クッキングと描画のようなイベントを引き起こします。

  3. ボタンをクリックして記録を停止すると、記録したイベントから新規プロファイルを生成します。

Note

Sample メニューの Live Updates をオンにすると記録中に更新された統計を見ることができます。

統計ビューア

統計ビューアはプロファイルの内訳を表示します。

プロファイルしたオブジェクトはビューアの左側にリストされ、ノード、ビューポート、他のオブジェクトで構成されています。パフォーマンスの統計は各オブジェクトのプロファイル毎にビューアの右側にリストされます。

統計は3つのグループに分類されます。 Timeクリック、または View メニューから統計の表示を変更することができます。

Cumulative times

プロファイルしたオブジェクトとその子孫(つまり、そのオブジェクトの子、その子の子など)に費やした時間を表示します。累積時間統計は、絶対時間または合計時間に対する割合として統計ビューに表示することができます。

例: CookSolveDrawTime

Self times

プロファイルしたオブジェクトに費やした時間を表示します。オブジェクトの子孫に費やした時間を含みません。

例: Cook (self)Solve (self)Draw (self)Time (self)

Event counts

プロファイルしたオブジェクトで起きたイベントの回数を表示します。

例: Cook CountSolve CountDraw Count

ツールバー

記録しているプロファイルで集めた統計をクリアします。このボタンはLive Updatesをオンにして記録しているときのみ有効です。

記録を新しく開始します。パフォーマンスモニタがアクティブな状態になり、そこでHoudiniのイベントを記録することができます。パフォーマンスモニタが記録している時は他のプロファイルを見ることができません。

現在の記録を停止します。統計は記録したイベントに対して生成され、新しいプロファイルに保存されます。パフォーマンスモニタはパッシブな状態に戻ります。

パフォーマンスデータを表示するフレーム範囲を指定します。何のデータを表示するのかのみ制御し、全フレームのデータが常に集められます。

メニュー

Profile

Open

ディスクからプロファイルを開きます。

Save As

現在のプロファイルをディスクに保存します。

Export As.

現在のプロファイルをカンマ区切りフォーマット(CSV)でディスクに出力します。出力した.csvファイルは、Microsoft Excelのようなスプレッドシートアプリケーションに読み込んでグラフを生成することができます。

Create Profile Comparison

2つの既存のプロファイルから差分プロファイルを作成します。この新しいプロファイルは、指定したプロファイル間の統計の変化を表示します。

Edit Performance Preferences

パフォーマンスモニタの環境設定、つまり閾値を修正することができます。

Delete

現在のプロファイルを閉じます。これはディスクに保存したプロファイルを削除しません。

Sample

Sampleメニューはパフォーマンスモニタが記録できるイベントタイプをリストします。次の記録でモニタに追跡させたいイベントの項目をチェックします。

Node Cooks

ノードクックイベントを記録します。これには、パラメータの評価、コールバックスクリプトの実行、内部Pythonコード(Python OP)の実行のイベントを含みます。

DOP Solves

DOPシミュレーションソルバイベントを記録します。

Node Draws (CPU)

ノードがビューポートで描画準備する時のCPUで実行されるイベントを記録します。

Node Draws (GPU)

ノードがビューポートで描画準備する時のGPUで実行されるイベントを記録します。

Viewport Draws

オブジェクト(要は、ジオメトリ、ハンドル、基準平面)をビューポートで描画するイベントを記録します。

Scripts

スクリプトイベント(要は、Python、HScript)を記録します。

Mantra Renders

Mantraレンダリングに関連するイベントを記録します。

Tip

Render Regionツールを使う時に、パフォーマンスモニタで統計情報を取得には、 オペレーションコントロール ツールバーの Render ボタンを押す必要があります。

Thread Stats

スレッド別に統計情報を監視します。

Frame Stats

フレームイベントを監視し、イベントログビューに出力します。

Memory Stats

メモリ管理イベントの統計情報を監視します。

Note

Linuxでは、Houdiniは効率的なメモリアロケータ、jemallocを使ってメモリをまとめて取得します。アロケータはパフォーマンスモニタのいくつかの項目では0Kbの増加ですが、他の項目では4Mb増加します。

より正確なメモリ分布を表示するには、ターミナルで以下のコマンドを走らせてjemallocなしでHoudiniを起動します:

# Houdiniが空っぽのjemallocライブラリを読み込むように、
# この環境変数を設定します。
export LD_LIBRARY_PATH=$HFS/dsolib/empty_jemalloc:$HFS/dsolib:$LD_LIBRARY_PATH

# Houdiniを起動するために、このコマンドを実行します。
# 32ビットのLinuxでは、代わりに/lib/ld-linux.so.2を使います。
/lib/ld-linux-x86-64.so.2 --inhibit-rpath '' $HFS/bin/houdini-bin

Note

記録したメモリの統計情報は、マルチスレッドクッキングが有効なときは正確にはならない場合があります。現時点では、マルチスレッドクッキングはコンポジットネットワークにのみ適用され、Houdini Preferencesダイアログで無効にすることができます。

Errors

警告とエラーを監視します。

Select All

すべてのイベントのサンプリングを有効にします。

Select None

すべてのイベントのサンプリングを無効にします。

Live Updates

記録中に数秒毎に統計情報を更新します。

View

View Absolute Times

統計情報ビューアの時間を絶対時間として表示します。つまり、時間、分、秒単位で時間を表示します。

View Percentage Times

統計情報ビューアの時間を、記録したイベントに費やされた合計時間の割合として表示します。

View Time in Seconds

絶対時間を時間、分、秒で表示します。

View Time in Milliseconds

絶対時間をミリ秒で表示します。

Tree View

記録した統計情報をツリービューに表示します。

List View

記録した統計情報をリストビューに表示します。

Event Log View

記録した統計情報の代わりにイベントログを表示します。

Enable Output チェックボックスはパフォーマンスログを有効にします。任意の出力を見るには、このオプションをオンにしなければなりません。 Clear ボタンはウィンドウの任意のログ出力をクリアします。

General Stats

Time

ノードやビューポートのような項目に費やした合計時間。これには、その子孫(その子、その子の子など)を含みます。、合計時間はクック、描画、計算の時間を合計しています。

Time (Self)

項目に費やした合計時間。合計時間は、クック、描画、計算の時間を合計しています。

Cook Stats

Cook

ノードとその子孫のクッキングに費やした時間。

Cook (Self)

ノードのクッキングに費やした時間。

Cook Count

ノードがクッキングされた回数。

Cook (Avg)

ノードのクッキングに費やした平均時間。

Cook (Min)

ノードのクッキングに費やした最短時間。

Cook (Max)

ノードのクッキングに費やした最長時間。

Solve Stats

Solve

DOPシミュレーションの計算で、DOPノード、その子、その子の子などで費やされた時間。

Solve (Self)

DOPシミュレーションの計算でDOPノードで費やされた時間。

Solve Count

DOPシミュレーションで計算したDOPノードの回数。

Solve (Avg)

ノードの計算に費やした平均時間。

Solve (Min)

ノードの計算に費やした最短時間。

Solve (Max)

ノードの計算に費やした最長時間。

Draw Stats

Draw

ノードに関しては、これはオブジェクトノード、その子、その子の子などをビューポートで描画する準備に費やした時間です。ビューポートに関しては、ハンドル、ガイド、基準平面のようなビューポートのコンポーネントすべてをレンダリングするのに費やした時間です。

Draw (Self)

ノードに関しては、オブジェクトノードをビューポートで描画する準備に費やした時間です。ビューポートに関しては、ビューポートの単一コンポーネントをレンダリングするのに費やした時間です。

Draw Count

ノードに関しては、これはノードの描画に準備した回数です。ビューポートに関しては、コンポーネントがビューポートでレンダリングされた回数です。

Draw (Avg)

ノードの描画に費やされた平均時間。

Draw (Min)

ノードの描画に費やされた最短時間。

Draw (Max)

ノードの描画に費やされた最長時間。

GPU Draw Stats

GPU Draw

ノードに関しては、オブジェクトノード、その子、その子の子などをGPUを使ってビューポートで描画する準備に費やしたです。ビューポートに関しては、ハンドル、ガイド、基準平面のようなビューポートのコンポーネントすべてをGPUを使ってレンダリングするのに費やした時間です。

GPU Draw (Self)

ノードに関しては、オブジェクトノードをGPUを使ってビューポートで描画する準備に費やした時間です。ビューポートに関しては、ビューポートの単一コンポーネントをGPUを使ってレンダリングするのに費やした時間です。

GPU Draw Count

ノードに関しては、これはGPUを使ってノードの描画に準備した回数です。ビューポートに関しては、コンポーネントがビューポートでGPUを使ってレンダリングされた回数です。

GPU Draw (Avg)

GPUを使ってノードの描画に費やされた平均時間。

GPU Draw (Min)

GPUを使ってノードの描画に費やされた最短時間。

GPU Draw (Max)

GPUを使ってノードの描画に費やされた最長時間。

Script Stats

Script

ファンクションやコードブロック、任意でコールしたコードを実行するのに費やした累積時間。

Script (Self)

ファンクションやコードブロックを実行するのに費やした時間。

Script Count

ファンクションやコードブロックが実行された回数。

Script (Avg)

ファンクションやコードブロックの実行に費やした平均時間。

Script (Min)

ファンクションやコードブロックの実行に費やした最短時間。

Script (Max)

ファンクションやコードブロックの実行に費やした最長時間。

Render Stats

Render

レンダリング関連のファンクションやコードブロック、任意でコールしたコードを実行するのに費やした累積時間。

Render (Self)

レンダリング関連のファンクションやコードブロックを実行するのに費やした時間。

Render Count

レンダリング関連のファンクションやコードブロックが実行された回数。

Render (Avg)

レンダリング関連のファンクションやコードブロックの実行に費やした平均時間。

Render (Min)

レンダリング関連のファンクションやコードブロックの実行に費やした最短時間。

Render (Max)

レンダリング関連のファンクションやコードブロックの実行に費やした最長時間。

役立つ情報

色の付いたハイライトをクリアするには、パフォーマンスモニタで記録されたプロファイルすべてを削除するか、ネットワークエディタ内でDを押してネットワークエディタのDisplay Optionsダイアログを開いて Display タブの Display Performance Statistic のチェックをオフにします。

See also

ペイン

一般

アニメーション

レンダリング

上級

その他