TensorRT 支持不同的數(shù)據(jù)格式。有兩個方面需要考慮:數(shù)據(jù)類型和布局。
數(shù)據(jù)類型格式
數(shù)據(jù)類型是每個單獨值的表示。它的大小決定了取值范圍和表示的精度,分別是FP32(32位浮點,或單精度),F(xiàn)P16(16位浮點或半精度),INT32(32位整數(shù)表示),和 INT8(8 位表示)。
布局格式
布局格式確定存儲值的順序。通常,batch 維度是最左邊的維度,其他維度指的是每個數(shù)據(jù)項的方面,例如圖像中的C是通道, H是高度, W是寬度。忽略總是在這些之前的批量大小, C 、 H和W通常被排序為CHW (參見圖 1 )或HWC (參見圖 2 )。
圖1. CHW的布局格式:圖像分為HxW矩陣,每個通道一個,矩陣按順序存儲;通道的所有值都是連續(xù)存儲的。
圖2. HWC的布局格式:圖像存儲為單個HxW矩陣,其值實際上是 C 元組,每個通道都有一個值;一個點(像素)的所有值都是連續(xù)存儲的。
為了實現(xiàn)更快的計算,定義了更多格式以將通道值打包在一起并使用降低的精度。因此,TensorRT 還支持NC / 2HW2和NHWC8等格式。
在NC / 2HW2 ( TensorFormat::kCHW2 ) 中,通道值對在每個HxW矩陣中打包在一起(在奇數(shù)通道的情況下為空值)。結(jié)果是一種格式,其中? C/2 ? HxW矩陣的值是兩個連續(xù)通道的值對(參見圖 3 );請注意,如果它們在同一對中,則此排序?qū)⒕S度交錯為具有步長1的通道的值,否則將步長為 2xHxW 。
圖 3. 一對通道值在每個HxW矩陣中打包在一起。結(jié)果是一種格式,其中[C/2] HxW矩陣的值是兩個連續(xù)通道的值對
在NHWC8 ( TensorFormat::kHWC8 ) 中, HxW矩陣的條目包括所有通道的值。此外,這些值被打包在? C/8 ? 8 元組中,并且C向上舍入到最接近的 8 倍數(shù)。
在這種NHWC8格式中, HxW矩陣的條目包括所有通道的值。
其他TensorFormat遵循與前面提到的TensorFormat::kCHW2和TensorFormat::kHWC8類似的規(guī)則。
關(guān)于作者
Ken He 是 NVIDIA 企業(yè)級開發(fā)者社區(qū)經(jīng)理 & 高級講師,擁有多年的 GPU 和人工智能開發(fā)經(jīng)驗。自 2017 年加入 NVIDIA 開發(fā)者社區(qū)以來,完成過上百場培訓(xùn),幫助上萬個開發(fā)者了解人工智能和 GPU 編程開發(fā)。在計算機(jī)視覺,高性能計算領(lǐng)域完成過多個獨立項目。并且,在機(jī)器人和無人機(jī)領(lǐng)域,有過豐富的研發(fā)經(jīng)驗。對于圖像識別,目標(biāo)的檢測與跟蹤完成過多種解決方案。曾經(jīng)參與 GPU 版氣象模式GRAPES,是其主要研發(fā)者。
審核編輯:郭婷
-
機(jī)器人
+關(guān)注
關(guān)注
211文章
28593瀏覽量
207826 -
NVIDIA
+關(guān)注
關(guān)注
14文章
5065瀏覽量
103452 -
人工智能
+關(guān)注
關(guān)注
1793文章
47566瀏覽量
239415
發(fā)布評論請先 登錄
相關(guān)推薦
評論