検索はキーワードに基づいています。
例:「手順」
自然言語で検索しないでください
例:「新しいプロシージャを作成するにはどうすればよいですか?」
Geolib3-MTの構成
Geolib3-MTは、 RenderSettingsノード。すべてのGeolib3-MTオプションは、 sceneTraversal見出し。
sceneTraversalパラメーター
maxCores テキストフィールド デフォルト:0 |
シーントラバーサルフェーズ中にGeolib3-MTが使用する論理コアの数を決定します。 以前のバージョンとは異なり、Geolib3-MTは内部スレッドプールを使用してシーンの横断時間を改善します。次の図は、Geolib3-MTと以前のバージョンの違いを示していますKatana。
デフォルト値の0では、Geolib3-MTはホストコンピューターで使用可能なすべての論理コアを使用します。 注意: コアの数が増えると、コアGeolib3-MT処理エンジンはスケーリングしますが、Opツリー内の個々のOpsは同じスケーリング特性を示さない場合があります。スレッドを増やすと、シーンの横断時間が長くなる可能性があります。この場合、新しいプロファイリングツールはKatana 3.5を使用して、これらのOpを識別し、動作を最適化できます。マークされたOpsにも同じことが当てはまりますthread unsafe、これらの取得が必要なためGlobal Execution Lock (GEL)、シーントラバーサルのスケーラビリティをさらに制限します。 |
opTreeOptimizations チェックボックス デフォルト:オフ |
オンにすると、Geolib3-MTは前処理ステップを実行し、Opツリーのトポロジを調べて、潜在的に最適化できるコンストラクトを特定します。1つの最適化は、同じタイプのOpのシーケンスをそのOpの単一インスタンスに折りたたむことです。これには多くの利点があります。
最下流のOpから観察したとき、Opsの崩壊したチェーンを評価した結果は、Opsのチェーンが評価された場合と同じになるはずです。 注意: 次のようなアップストリームシーングラフの結果を照会するOp API呼び出しgetAttr()、チェーン内のそれらのOpの1つがその属性の設定を担当した場合、折りたたみチェーン内で呼び出されたときに期待される結果を返しません。この場合、OpはgetOutputAttr()代わりに。 Opツリーオプティマイザーは、同じタイプのOpの連鎖を呼び出しますGeolibSetupInterface::setOpsCollapsible()間にsetup()コール。この関数の呼び出し元は、Geolib3がOpに渡す属性の名前を指定する必要がありますcook() Op引数として呼び出します。この属性には、折りたたまれたOpsの引数を含む属性の順序付き配列(上流のOpから下流のOpに順序付けられた)が含まれます。その後、OpはこのバッチOp引数を適切に処理できます。 |
verboseLogging チェックボックス デフォルト:オフ |
オンにすると、Geolib3-MTランタイム内の詳細ログが有効になります。これには、シーントラバーサル中の詳細なログ記録と、有効になっている場合はOpツリーの最適化が含まれます。 |
sceneTraversal.cacheパラメーター
Geolib3-MTには、キャッシュサブシステムの動作を制御する多くの設定が含まれています。キャッシングサブシステムは、以前に調理されたシーングラフの場所の保存と取得を担当します。 cook results。これらの設定は、 RenderSettingsプロジェクトごとのノード。
キャッシング、およびメモリ使用量と最初のピクセルまでの時間のトレードオフは、シーントラバーサル時間とレンダリングのパフォーマンスに大きな影響を与える可能性があります。Geolib3-MTが提供する設定を使用すると、レンダリングのシーントラバースフェーズ中にメモリフットプリントを調整することができます。
cacheEviction チェックボックス デフォルト:オン |
オフにすると、クック結果はキャッシュから削除されません。 ヒント: 最初はキャッシュエビクションを無効にすることは直感に反するように思えるかもしれませんが、適切な場面があるかもしれません。これは、レンダラーが必要とするシーンとデータ構造がメモリに快適に収まる場合です。レンダリングのシーン生成フェーズが完了すると、Geolib3-MTのクック結果で占有されているメモリページにアクセスできなくなるため、ディスクへのページングの対象とはなりません。これらのページはレンダリング中にメインメモリに再ページされないため、パフォーマンスの低下は最小限です。 |
cacheSoftLimit テキストフィールド デフォルト:1,048,576 |
もしcacheEvictionオンになっている、 cacheSoftLimit使用頻度が最も低いエビクションポリシーを使用してエントリがエビクトされる前に、ローカルキャッシュに保存されるクック結果の数を管理します。 注意: これらのエントリはローカルキャッシュから削除される可能性がありますが、他の多くのローカルキャッシュまたはセントラル(共有キャッシュ)間で共有される場合があります。その場合、エントリのメモリはすぐには再利用されません。 シーングラフとOpツリーの最大深度を考慮してください。のcacheSoftLimitスレッドごとに最近使用したクック結果キャッシュのサイズを制御します。これは、特定のスレッドで調理された場所、または調理プロセス中にアクセスされた場所(経由など)を意味しますgetAttr())、ローカルキャッシュに保存され、の値に基づいてエビクションの対象となりますcacheSoftLimit。 |
collectionFrequency テキストフィールド デフォルト:10,000 |
もしcacheEvictionオンになっている、 collectionFrequency収集サイクル間の時間をミリ秒単位で管理します。収集サイクル中に、Geolib3-MTは前回の収集サイクル以降に削除されたすべてのキャッシュエントリを収集し、クック結果が使用されなくなった場合、クック結果のメモリを削除して再利用します。 注意: を減らすcollectionFrequency intervalは、クック結果のより積極的な追い出しを引き起こし、メモリフットプリントを削減しますが、シーンの走査時間を犠牲にする可能性があります。 |
useCachePrepopulation チェックボックス デフォルト:オン |
オンにすると、Geolib3-MTは、内部キャッシュに入力されるシーングラフの走査を実行します。 このトラバースの範囲は、以下の設定によって制御できます。 sceneTraversal.cachePrepopulation。 |
sceneTraversal.cachePrepopulationパラメーター
preCookSourceOps チェックボックス デフォルト:オフ |
オンにすると、Geolib3-MTはまず、Opツリーで見つかったソースOp(入力のないOp)によって生成されたシーンを完全に走査します。この設定は、ジオメトリキャッシュまたは他のアセットタイプでロードするときに利点を提供できます。 注意: 経験的なテストにより、ソースOpsの後には何らかの形のプルーン操作が続くことがわかっています。その結果、これらの場合、オンになりますpreCookSourceOps必要以上に多くのシーングラフの場所を生成できるため、メモリ消費と走査時間が増加する可能性があります。 |
preCookKeyOps チェックボックス デフォルト:オン |
オンにすると、Geolib3-MTは、並行して評価できるOpツリー内のOpsを識別します。 この例はMerge Op: Geolib3-MTは各ブランチを並行して評価するため、シーンの横断時間を短縮できます。 |
preCookAllLocations チェックボックス デフォルト:オン |
オンにすると、Geolib3-MTは残りのすべてのシーングラフの場所をクックし、シーンを完全に拡張します。 |
上記の設定の値に基づいて、 cachePrepopulationフェーズでは、Geolib3-MTキャッシュにはシーングラフ全体またはそのサブセクションが事前に入力されています。Geolib3-MTは最適化されており、既存のFnScenegraphIteratorこのキャッシュのAPI。このキャッシュは、スケーラブルでスレッドセーフなキャッシュであるため、レンダラープラグインがこのキャッシュに同時にアクセスして、シーンビルドフェーズのパフォーマンスを向上させることをお勧めします。
警告: Geolib3-MTキャッシュが完全に読み込まれていない場合、キャッシュアクセス(経由FnScenegraphIterator)キャッシュミスが発生します。この場合、要求された場所は呼び出しスレッドを使用してクックされます。
申し訳ありませんが、これは役に立ちませんでした
なぜこれが役に立たなかったのですか? (当てはまるもの全てをご確認ください)
ご意見をいただきありがとうございます。
探しているものが見つからない場合、またはワークフローに関する質問がある場合は、お試しくださいファウンドリサポート。
学習コンテンツを改善する方法についてご意見がある場合は、下のボタンを使用してドキュメントチームにメールしてください。
フィードバックをお寄せいただきありがとうございます。