AMD 幀緩沖區(qū)壓縮 - DCC

全稱 Delta Color Compression

DCC 是一種無損的壓縮方法。
DCC 是一種只適用于特定領(lǐng)域(GPU 產(chǎn)生的圖像)的壓縮方法。

壓縮算法,

  1. 分塊。將渲染圖像分成如果像素塊,例如 32x32
  2. 逐塊壓縮,
    2.1. 選取一個像素,以完整精度表示,例如 Int32
    2.2. 遍歷其他像素,計算與上述像素的差值,并以降低精度表示,例如 Int16

能夠采用這個壓縮算法是基于一個趨勢,
屏幕分辨率越來越大,那么一個固定大小的像素塊中的內(nèi)容相近的概率越來越大。
例如,渲染天空,32x32 的像素塊的前提下,分辨率越大,一個像素塊中的內(nèi)容越接近,壓縮效果就越好。

Delta 是增量的意思。


分辨率越來越大,幀率越來越高,對帶寬的需求就越來越高。
幀緩沖區(qū)除了 GPU 會按照幀率寫入以外,還有顯示控制器會按照顯示器刷新率去讀取。
因此,
對幀緩沖區(qū)做壓縮,性價比高,值得去做。

將幀緩沖區(qū)壓縮后再寫入或讀取,可以減少訪問顯存的帶寬,進(jìn)而降低功耗和提升效率。

其他 GPU 廠商都有類似的技術(shù),例如 ARM 的 AFBC 等。

參考資料,
https://gpuopen.com/learn/dcc-overview/

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容