Chinese, Traditional subtitles

← Stalling and Starving - Interactive 3D Graphics

Get Embed Code
4 Languages

Showing Revision 1 created 09/06/2020 by aaefiikmnnnr.

  1. 在小考出現的管線裡,B 是最慢的階段
  2. 我們稱 B 為瓶頸(Bottleneck)
  3. 它是最慢的,也是決定管線效率的階段
  4. 管線總是會有瓶頸,總有個最慢的階段
  5. 也許有兩三個一樣慢,但總有最慢的
  6. 3 跟 4 號物件繼續在管線移動
  7. 而 B 階段還在處理 2 號物件
  8. 當 C 等待輸入,但是沒有東西進來,因為 B 還沒完成
  9. 這種情況叫飢餓(Starvation)
    即 C 在 B 完成前不會有任何輸入
  10. 另一方面,階段 A 已經處理完物件 1
  11. 但是不能繼續因為階段 B 還在處理物件 2
  12. 這個叫作停頓(Stalling)
  13. 同樣的原則也適用於繪圖管線
  14. 讓應用程式跑得夠有效率使 GPU 一直有資料可處理是種常見瓶頸出現之處
  15. 瓶頸會隨時間改變,有時這階段比較慢、有時另一階段比較慢
  16. GPU 設計者使用各種技術來平衡負載,像是先進先出的佇列
  17. 在前面的階段儲備一些物件
  18. 如果慢的階段突然變快,這些物件可以快速通過
  19. 或是其它技術像是統一 Shader(Unified Shader)
  20. 在這門課我們不會深究細節
  21. 但是大概知道 GPU 內有很多複雜的運作機制是好的
  22. 各式效能除錯工具讓你找出管線哪個階段是瓶頸
  23. 以幫助你改善程式的效能