GPU圖形處理器

  • 2019 年 12 月 16 日
  • 筆記

影像的實時渲染過程

  • 頂點處理(Vertex Processing
  • 圖元處理(Primitive Processing
  • 柵格化(Rasterization
  • 片段處理(Fragment Processing
  • 像素操作(Pixel Operations

統一著色器架構(Unified Shader Architecture)

  • 頂點處理Vertex Processing)、圖元處理Primitive Processing)、片段處理Fragment Processing)這些任務,都交給這些 Shader 或叫 Cuda Core 處理

現代GPU的優化手段

  • 晶片瘦身 GPU 的整個處理過程是一個流式處理(Stream Processing)的過程,不像CPU 那麼複雜,可以去除高速快取、分支預測等複雜電路,只保留 取指令指令解碼ALU執行上下文
  • 多核並行 和 CPU 不同的是,我們不需要單獨去實現什麼多執行緒的計算。因為 GPU 的運算是天然並行的。所以,簡單地添加多核的 GPU,就能做到並行加速。不過光這樣加速還是不夠,工程師們覺得,性能還有進一步被壓榨的空間。 GPU 就借鑒了 CPU 裡面的 SIMD,用了一種叫作SIMTSingle Instruction,Multiple Threads)的技術。SIMT 呢,比 SIMD 更加靈活。在 SIMD 裡面,CPU 一次性取出了固定長度的多個數據,放到暫存器裡面,用一個指令去執行。而 SIMT,可以把多條數據,交給不同的執行緒去處理。
  • 超執行緒(Hyper-Threading)技術 借鑒CPU, 實現了在流水線停頓(stall)期間可以去改為執行別的程式的指令,充分發揮GPU的算力

by 斯武丶風晴 https://my.oschina.net/langxSpirit