日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

CUDA存储器模型

發(fā)布時間:2023/11/27 生活经验 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 CUDA存储器模型 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

存儲器模型有:

?Register
?Local
?shared
?Global
?Constant
?Texture
?Host memory

寄存器與Local memory
?對每個線程來說,寄存器都是線程私有的--這與CPU中一樣。如果寄存器被消耗完,數(shù)據(jù)將被存儲在本地存儲器(localmemory)。
?Localmemory對每個線程也是私有的,但是localmemory中的數(shù)據(jù)是被保存在顯存中,而不是片內(nèi)的寄存器或者緩存中,因此速度很慢。
?線程的輸入和中間輸出變量將被保存在寄存器或者本地存儲器中。

Shared memory
?用于線程間通信的共享存儲器。共享存儲器是可以被同一block中的所有thread訪問的可讀寫存儲器。
?訪問共享存儲器幾乎和訪問寄存器一樣快速,是實現(xiàn)線程間通信的延遲最小的方法。
?共享存儲器可以實現(xiàn)許多不同的功能,如用于保存共用的計數(shù)器(例如計算循環(huán)次數(shù))或者block的公用結(jié)果。

共享存儲器(Shared Memory)
?設置于SM內(nèi)部
?由一個線程塊內(nèi)部全部線程共享
–完全由軟件控制
–訪問一個地址只需要1個時鐘周期

constant memory和texture memory
?基于GPU圖形計算的專用單元發(fā)展而來的高速只讀緩存
?速度與命中率有關,不命中時將進行對顯存的訪問
?常量存儲器空間較小(只有64k),支持隨機訪問。從host端只寫,從device端只讀
?紋理存儲器尺寸則大得多,并且支持二維尋址(一個數(shù)據(jù)的“上下左右”的數(shù)據(jù)都能被讀入緩存),適合實現(xiàn)圖像處理算法。

全局存儲器
?使用的是普通的顯存,無緩存,可讀寫,速度慢
?整個網(wǎng)格中的任意線程都能讀寫全局存儲器的任意位置,并且既可以從CPU訪問,也可以從GPU訪問。

各種存儲器的延遲
?register: 1 周期
?shared memory: 1 周期(無bank conflict)——16 周期(發(fā)生16路bank conflict)
?texture memory: 1 周期(命中)——數(shù)百周期(不命中)
?constant memory: 1周期(命中)——數(shù)百周期(不命中)
?Global/ local memory: 數(shù)百周期

各存儲器大小
?每個SM中有64K或者32K的寄存器,寄存器的最小單位是32bit的register file
?每個SM中有16K~64K shared memory
?一共可以聲明64K的constant memory,但每個SM的cache序列只有8K
?可以聲明很大的texture memory,但是實際上的texture cache序列為每SM 6-8K

使用存儲器時可能出現(xiàn)的問題:
?致命問題:無法產(chǎn)生正確結(jié)果
?多個block訪問global同一塊,以及block內(nèi)thread間線程通信時的數(shù)據(jù)一致性問題
?Texture的工作模式設置錯誤
?效率問題:大大增加訪存延遲
?Shared bank conflict問題
?Global 合并訪問問題

?

總結(jié)

以上是生活随笔為你收集整理的CUDA存储器模型的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。