> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# PIX ExecuteIndirect 分析支援

> PIX ExecuteIndirect 分析支援

在 PIX 中分析 ExecuteIndirect 呼叫具有挑戰性。當 ExecuteIndirect 引數緩衝區是由 GPU 產生時，ExecuteIndirect 的子繪製/分派可能具有不確定的順序。這會讓 PIX 中的效能分析與偵錯作業變得非常困難，因為每次評估時，個別子索引的內容可能完全不同。

## XBOX Series X|S 上的 ExecuteIndirect

在 XBOX Series X|S 上，ExecuteIndirect 分析支援已經更新，大幅改善了 PIX 的使用者體驗。對於可能產生多個繪製/分派，或間接指定非繪製/分派參數 (設定根簽章參數、頂點緩衝區、索引緩衝區、管線狀態物件等) 的 ExecuteIndirect 呼叫，在分析期間檢視 ExecuteIndirect 呼叫的子繪製/分派時，PIX 會將 ExecuteIndirect 所使用的 GPU 產生引數及其他 GPU 產生的相依性「鎖定」為在分析開始時產生的單一副本。這讓偵錯作業 (例如檢視[管線](/zh-TW/tools/tools-console/pix/gpu/pix-gpu-pipeline-view)繫結) 保持一致，不會因為不確定性而持續變動。

不過，這種對 GPU 產生引數的「鎖定」會對 GPU 效能造成重大影響。因此，這些「複雜」ExecuteIndirect 呼叫的個別子索引無法取得[計數器](/zh-TW/tools/tools-console/pix/gpu/pix-counters)與 [Dr. PIX](/zh-TW/tools/tools-console/pix/gpu/pix-drpix) 結果等效能資訊。父 ExecuteIndirect 則可取得效能資訊，在 PIX 中可透過其專屬的全域 ID 選取。

此記憶體「鎖定」只適用於 ExecuteIndirect 呼叫的子項。例如，如果選取了 ExecuteIndirect 父項，則可以在管線檢視中檢視其所有子項使用的整個引數緩衝區。重新整理時，此緩衝區的內容可能會因 GPU 產生結果的不確定性而改變。

## 先前平台上的 ExecuteIndirect

在 XBOX Series X|S 之前的主機上，PIX 不支援上述的 ExecuteIndirect 引數「鎖定」。對於這些平台，PIX 設定中有一個選項可以「強制摺疊」所有 ExecuteIndirect 呼叫，實際上將 ExecuteIndirect 視為單一繪製/分派。

## 另請參閱

[管線檢視](/zh-TW/tools/tools-console/pix/gpu/pix-gpu-pipeline-view)

[PIX 計數器](/zh-TW/tools/tools-console/pix/gpu/pix-counters)

[Dr. PIX](/zh-TW/tools/tools-console/pix/gpu/pix-drpix)


## Related topics

- [PIX GPU 擷取與效能分析](/zh-TW/tools/tools-console/pix/gpu/index.md)
- [NDA 主題目錄 - Microsoft Learn 線上連結](/zh-TW/nda/nda-topic-directory.md)
- [ID3D12CommandSignature](/zh-TW/reference/graphics/d3d12/interfaces/id3d12commandsignature/id3d12commandsignature_public.md)
- [使用 PIX (Performance Investigator) 分析 Windows 遊戲](/zh-TW/tools/tools-pc/pix-for-windows.md)
- [排程調整](/zh-TW/services/playfab/data-analytics/legacy/insights/scheduled-scaling.md)
