行業(yè)資訊網(wǎng)seo推廣軟件
本文是用來記錄樹莓派 4B 的一些測試記錄。
溫度
下面記錄中的風(fēng)扇和大風(fēng)扇是這樣的:
為什么要用大風(fēng)扇呢?因?yàn)樾★L(fēng)扇在外殼上,氣流通過外殼的珊格會有嘯叫,聲音不大但是很煩人,大風(fēng)扇沒這個問題,并且同樣使用樹莓派的 USB 進(jìn)行供電,而且由于樹莓派在大硬盤旁邊,還能順道一起散熱。
空載情況
情形 | 溫度(攝氏度) |
---|---|
無散熱片+無風(fēng)扇 | 41.3 |
有散熱片+無風(fēng)扇 | 38.9 |
有散熱片+有風(fēng)扇 | 36.5 |
有散熱片+有大風(fēng)扇 | 29.7 |
滿載情況
情形 | 溫度(攝氏度) |
---|---|
有散熱片+無風(fēng)扇 | 69.6 |
有散熱片+有風(fēng)扇 | 56.9 |
有散熱片+有大風(fēng)扇 | 50.6 |
讀取速度
樹莓派 4B Micro SD 讀寫速度均為 45 MB/s,跑不滿 UHS-I 的約 100MB/s 的速度(Jeff 測試 第五代是可以跑滿的)。
CPU性能
使用 Clang 和 ISPC(并行計(jì)算)編寫的程序來測試 CPU 的一些性能數(shù)據(jù)??紤]到受寫入速度的影響,這里均使用不存儲的程序進(jìn)行測試。
4096x4096 Float64 矩陣計(jì)算
如果均拆分 4 塊進(jìn)行并行計(jì)算:
設(shè)備 | 串行 | 并行 |
---|---|---|
樹莓派4B(4C4T) | 66.12s | 51.72s |
(對比組)Mac mini 2018 i5(6C6T) | 17.76s | 6.08s |
進(jìn)程占用內(nèi)存約 192.8 MB。可以看到樹莓派 4B 使用并行計(jì)算加上分割任務(wù)帶來的提升并沒有接近預(yù)期的 4 倍。
個人猜測是每次處理的塊大大超出每個核心的 32kB data L1 cache 的大小了,那么如果單個塊更小一些呢?理論上是在16x16上最快,也就是分成 256 塊,因?yàn)?32kB 單次可以存放的最大 64 位浮點(diǎn)數(shù)矩陣是 22x22,16 剛好小于這個值。
下列每個測試是相同的矩陣:
分塊(每塊大小) | 測試1 | 測試2 | 測試3 | 測試4 |
---|---|---|---|---|
4(1024x1024) | 40s | 39s | 47s | 41s |
8(512x512) | 56s | 47s | 55s | 48s |
16(256x256) | 37s | 39s | 40s | 46s |
32(128x128) | 38s | 49s | 48s | 50s |
64(64x64) | 45s | 49s | 45s | 42s |
128(32x32) | 41s | 37s | 43s | 40s |
256(16x16) | 38s | 38s | 43s | 37s |
可以看到雖然不一定每次都是 16x16 最快,但是在多次測試中可以看到,16x16 一定是第一梯隊(duì)的。這里按40s
的話,也就是達(dá)到了串行的 1.653 倍,這個值接近 2 倍了。
優(yōu)化過的矩陣乘法(測浮點(diǎn)性能)
使用優(yōu)化過的矩陣和算法,然后再進(jìn)行分塊處理。這個測試在某些能達(dá)到 70%~90% 的浮點(diǎn)性能,實(shí)際情況還得看設(shè)備當(dāng)時(shí)的運(yùn)行狀態(tài)和系統(tǒng)以及其他配置。
設(shè)備 | 浮點(diǎn)性能(GFLOPS) |
---|---|
樹莓派4B | 11.91 |
(對比組)Mac mini 2018 i5 | 200.03 |
這里對比組達(dá)到了理論性能的 70%(200/288),樹莓派比上面一次測試得出的浮點(diǎn)值高了不少。
排序
設(shè)備 | 并行計(jì)算+分割任務(wù) |
---|---|
樹莓派4B(4C4T) | 2.45x |
(對比組)Mac mini 2018 i5(6C6T) | 5.86x |
進(jìn)程占用內(nèi)存約 192.8 MB??梢钥吹綐漭?4B 使用并行計(jì)算加上分割任務(wù)帶來的提升并沒有接近預(yù)期的 4 倍,也是在 2 倍左右。
生成 mandelbrot 圖
設(shè)備 | 并行計(jì)算+分割任務(wù) |
---|---|
樹莓派4B(4C4T) | 8.58x |
(對比組)Mac mini 2018 i5(6C6T) | 44.03x |
(對比組)Intel E5-2690 v4 x2(28C58T) | 130.18x |
這里可以看到各個設(shè)備的提升均達(dá)到了核心數(shù)的兩倍。
一些想法
證明了 BCM2711 的低緩存(每核心 32kB 數(shù)據(jù) + 48kB 指令 L1 cache 和共 1MB L2 cache)導(dǎo)致一旦計(jì)算所需的數(shù)據(jù)稍大一些,那么并行性能就大幅度下降,無法發(fā)揮所有核心的性能。
當(dāng)然我懷疑這也和新系統(tǒng)沒有優(yōu)化完善有關(guān),看看后續(xù)會不會好一些。
FFMPEG
有些時(shí)候需要對一些視頻進(jìn)行格式轉(zhuǎn)換、轉(zhuǎn)碼修復(fù)問題等,我用 ffmpeg 比較多,偶爾轉(zhuǎn)換分辨率和裁切有時(shí)候用 macOS 自帶的也很方便。
這里說明一下測試中的單位x
,在使用 ffmpeg 的時(shí)候,速度是用類似123x
的格式來顯示的。這表示當(dāng)前一秒處理的幀數(shù)和視頻平均幀數(shù)的比值,比如說視頻是 24hz 的,那么如果一秒鐘處理了48幀,則會顯示2x
;如果只處理了 12 幀,那么則會顯示0.5x
。
測試項(xiàng)目:對一個約 950MB 的 FLV 格式的抖音錄播進(jìn)行操作,平均碼率約 500K。
轉(zhuǎn)化格式
轉(zhuǎn)換格式最快的辦法是直接拷貝流,如下:
$ ffmpeg -i input.mkv -c copy out.mp4
這種格式不會對任何音視頻、編碼器、碼率進(jìn)行修改,是直接抓流到新的格式里(就是需要注意字幕和音軌的選擇)。
樹莓派 4 的成績和對比成績?nèi)缦?#xff1a;
設(shè)備 | 速度 |
---|---|
樹莓派 + Micro SD(45MB/s) | 35x |
樹莓派 + USB NVMe SSD (約 350MB/s) | 617x |
(對比組)Mac mini 2018 i5(讀2400寫1200) | 2410x |
可以看到隨著硬盤速度的提升,速度有著巨幅提升。
需要說明一下,上面這個USB SSD 的速度是固態(tài)硬盤本身的限制,因?yàn)槭褂玫氖?BG4,沒有內(nèi)存作為緩沖,那么由于單閃存顆粒加上 TLC 導(dǎo)致使用 USB 外接的時(shí)候 IOPS 性能不光難以達(dá)到內(nèi)接(內(nèi)接會用系統(tǒng)內(nèi)存作為緩沖),也比不過帶內(nèi)存顆粒緩沖或者多閃存顆粒的其他 SSD。
IOPS 是每秒可讀寫數(shù),會影響系統(tǒng)的響應(yīng)速度。
轉(zhuǎn)碼
這里模擬平時(shí)最簡單的命令,碼率一般在 1500~3000K:
$ ffmpeg -i in.flv out.mp4
設(shè)備 | 速度 |
---|---|
樹莓派 + Micro SD(45MB/s) | 0.23x |
樹莓派 + USB NVMe SSD (約 350MB/s) | 0.452x |
(對比組)Mac mini 2018 i5(讀2400寫1200) | 2.7x |
硬件加速轉(zhuǎn)碼
在樹莓派上使用硬件加速轉(zhuǎn)碼需要使用:
ffmpeg -i in.flv -c:v h264_v4l2m2m -b:v 1500k out.mp4
這里的1500k
不是視頻本身的碼率,而是上一節(jié)中自動轉(zhuǎn)碼的碼率,這樣可以作為對比。我也測了一下其他碼率,速度差不多:
設(shè)備 | 速度 |
---|---|
樹莓派 + Micro SD(45MB/s) | 2.1x |
樹莓派 + USB NVMe SSD (約 350MB/s) | 2.36x |
(對比組)Mac mini 2018 i5 UHD 630(讀2400寫1200) | 4.36x |
可以看到樹莓派 4B 在使用硬件加速之后,速度提升了 6~10 倍。不過需要注意一點(diǎn),h264_v4l2m2m
是有 CPU 占用率的,如果你在跑其他程序,那么性能會降低一些。
為什么還是買了樹莓派 4
最后記錄一下為什么雖然樹莓派 5 已經(jīng)發(fā)布了,但是我又重新買了臺樹莓派 4B,因?yàn)榭紤]到幾點(diǎn):
- 功耗漲了 10 W,不光充電器得特別買(4B直接用現(xiàn)在的很多手機(jī)充電器都行,甚至顯示器上的充電接口都可以),如果想無散熱無風(fēng)扇使用不太可能(Jeff 測試結(jié)果證明了這一點(diǎn))。
- 雖然樹莓派 5 的性能提升了 2~3 倍,但是實(shí)際價(jià)格也漲了不少??赡苣銜f官方售價(jià)不過漲了 5 美元哎,也不多啊。但是需要考慮到用的 5V5A 充電器目前并不是很多,而且必須用散熱器。那么根據(jù)官方指定商家的過期鏈接的價(jià)格(4GB 550)再加上官方充電器(69)和散熱器(99),也就是七百(不用官方充電器便宜 50),而且這個價(jià)格我能買到兩倍性能并且直接有 M.2 + SATA 接口的 N100 主機(jī)了。
- 我要用來調(diào)試樹莓派 Pico,這個在樹莓派上剛好有調(diào)試接口,這也不要求什么性能。
- 樹莓派 5 剛出可能會有一些問題,我想長期使用,不想當(dāng)小白鼠,現(xiàn)在樹莓派 4B 賣出了至少 300 萬臺,出現(xiàn)嚴(yán)重問題的可能性不大。
- 說實(shí)話我上次買樹莓派 4B 就沒用滿。樹莓派 5 也沒有公開說支不支持 OpenCL,4B 是不能用的。
- 最關(guān)鍵的是,樹莓派 5 在國內(nèi)還沒開始賣呢,而且雙十一補(bǔ)貼樹莓派 4B 4GB 裸板只要330,這還要啥自行車。
希望能幫到有需要的人~