tft每日頭條

 > 生活

 > 智能駕駛主流芯片算力對比

智能駕駛主流芯片算力對比

生活 更新时间:2025-02-24 13:03:31

如果你經常和DMIPS,TOPS,GFLOPS等評價芯片性能的單位打交道,又不知道這些單位意味着什麼,那看這篇文章就對了

TOPS

TOPS是Tera Operation Per Second的縮寫,表示每秒鐘可以進行的操作數量,用于衡量自動駕駛的算力,有時還會拿TOPS/W來說明功耗,即單位功耗下的運算能力。

智能駕駛主流芯片算力對比(自動駕駛芯片性能評價指标)1

智能駕駛主流芯片算力對比(自動駕駛芯片性能評價指标)2

衆所周知,CV算法會消耗很大一部分自動駕駛芯片的算力,在車上堆攝像頭的同時也需要堆TOPS,那麼視覺處理能力為什麼用TOPS評估呢?通常計算機視覺算法是基于卷積神經網絡的,而卷積神經網絡的本質是累積累加算法(Multiply Accumulate)。

智能駕駛主流芯片算力對比(自動駕駛芯片性能評價指标)3

上圖是一個非常生動的卷積過程

MAC

乘積累加運算MAC(Multiply Accumulate)是在數字信号處理器或一些微處理器中的特殊運算。實現此運算操作的硬件電路單元,被稱為“乘數累加器”。這種運算的操作,是将乘法的乘積結果和累加器 A 的值相加,再存入累加器:

智能駕駛主流芯片算力對比(自動駕駛芯片性能評價指标)4

若沒有使用 MAC 指令,上述的程序可能需要二個指令,但 MAC 指令可以使用一個指令完成。而許多運算(例如卷積運算、點積運算、矩陣運算、數字濾波器運算、乃至多項式的求值運算)都可以分解為數個 MAC 指令,因此可以提高上述運算的效率。

MAC矩陣是AI芯片的核心,但這是很成熟的架構,在機器學習大背景下煥發了新春。

智能駕駛主流芯片算力對比(自動駕駛芯片性能評價指标)5

上圖為特斯拉自動駕駛芯片架構,占很大一部分面積的是處理神經網絡的NPU。

總體設計相對簡單。每個周期,從SRAM讀取256byte字節的激活數據和另外128byte的權重數據到MAC陣列中。每個NPU擁有96x96 MAC,另外在精度方面,乘法為8x8bit,加法為32bit,兩種數據類型的選擇很大程度上取決于他們降功耗的努力(例如32bitFP加法器的功耗大約是32bit整數加法器的9倍)。在2GHz的工作頻率下,每個NPU的算力為36.86TOPS,FSD芯片峰值算力為73.7TOPS。在點積運算之後,數據轉移到激活硬件,最後寫入緩存,以彙總結果。FSD支持許多激活功能,包括ReLU、SiLU和TanH。每個周期,将128byte的數據寫回SRAM。所有操作同時且連續地進行,重複直到完成整個計算。

智能駕駛主流芯片算力對比(自動駕駛芯片性能評價指标)6

在每個周期中,将在整個MAC陣列中廣播輸入數據的底行和權重的最右列。每個單元獨立執行适當的乘法累加運算。在下一個循環中,将輸入數據向下推一行,而将權重網格向右推一行。在整個數組中廣播輸入數據的最底行和權重的最右列,重複此過程。單元繼續獨立執行其操作。全點積卷積結束時,MAC陣列一次向下移動一行96個元素,這也是SIMD單元的吞吐量。

智能駕駛主流芯片算力對比(自動駕駛芯片性能評價指标)7

TOPS計算

回到正題,TOPS是MAC在1秒内操作的數,計算公式為:

TOPS = MAC矩陣行 * MAC矩陣列 * 2 * 主頻

每個NPU的為96 * 96 * 2 * 2G = 36.864TOPS

DMIPS

DMIPS是Dhrystone Million Instructions Per Second的縮寫,每秒處理的百萬級的機器語言指令數。

CPU執行指令

程序編譯和運行過程中,代碼會經過編譯器轉化成機器可以理解的指令。CPU每個指令周期分為取指令、指令譯碼、指令執行三個過程,隻有在指令執行時才真正有效,在取指令和指令譯碼時,CPU時間是白白浪費的,而同樣的運算在不同架構不同指令集需要的指令數也不一樣。

智能駕駛主流芯片算力對比(自動駕駛芯片性能評價指标)8

除了 Instruction Cycle 這個指令周期,在 CPU 裡面我們還會提到另外兩個常見的 Cycle。一個叫 Machine Cycle,機器周期或者 CPU 周期。CPU 内部的操作速度很快,但是訪問内存的速度卻要慢很多。每一條指令都需要從内存裡面加載而來,所以我們一般把從内存裡面讀取一條指令的最短時間,稱為 CPU 周期。

還有一個是Clock Cycle,也就是時鐘周期以及我們機器的主頻。一個 CPU 周期,通常會由幾個時鐘周期累積起來。一個 CPU 周期的時間,就是這幾個 Clock Cycle 的總和。

對于一個指令周期來說,我們取出一條指令,然後執行它,至少需要兩個 CPU 周期。取出指令至少需要一個 CPU 周期,執行至少也需要一個 CPU 周期,複雜的指令則需要更多的 CPU 周期。

智能駕駛主流芯片算力對比(自動駕駛芯片性能評價指标)9

從上圖可以看出,時鐘周期是固定的,但是每個指令執行用時不同,所以需要提高CPU執行效率。

智能駕駛主流芯片算力對比(自動駕駛芯片性能評價指标)10

智能駕駛主流芯片算力對比(自動駕駛芯片性能評價指标)11

當前提升CPU性能的方法有:流水線技術、流水線冒險/預測、超标量Superscalar、超長指令字設計VLIW、單指令多數據流SIMD等技術(将來慢慢介紹)。尤其是SIMD 技術,是一種“指令級并行”的加速方案,或者說是一種“數據并行”的加速方案。在處理向量計算的情況下,同一個向量的不同維度之間的計算是相互獨立的。而CPU 裡的寄存器,又能放得下多條數據。于是,我們可以一次性取出多條數據,交給 CPU 并行計算。

DMIPS

如前文所言,不同的CPU指令集不同、硬件加速器不同、CPU架構不同,導緻不能簡單的用核心數和CPU主頻來評估性能,所以出了一個跑分算法叫Dhrystone:程序用來測試CPU整數計算性能,其輸出結果為每秒鐘運行Dhrystone的次數,即每秒鐘叠代主循環的次數。

Dhrystone所代表的處理器分數比MIPS(million instructions per second 每秒鐘執行的指令數)更有意義,因為在不同的指令系統中,比如RISC(Reduced Instruction Set Computer精簡指令集計算機)系統和CISC(Complex Instruction Set Computer複雜指令集計算機)系統,Dhrystone的得分更能表現其真正性能。

由于在一個高級任務中,RISC可能需要更多的指令,但是其執行的時間可能會比在CISC中的一條指令還要快。由于Dhrystone僅将每秒鐘程序執行次數作為指标,所以可以讓不同的機器用其自身的方式去完成任務。

另一項基于Dhrystone的分數為DMIPS(DhrystoneMIPS),其含義為每秒鐘執行Dhrystone的次數除以1757(這一數值來自于VAX 11/780機器,此機器在名義上為1MIPS機器,它每秒運行Dhrystone次數為1757次)。

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关生活资讯推荐

热门生活资讯推荐

网友关注

Copyright 2023-2025 - www.tftnews.com All Rights Reserved