為什么樹莓派愛好者在談?wù)?USB 啟動時會感到興奮?因為它使樹莓派明顯更快。或者,更準(zhǔn)確地說,內(nèi)存隨閃存 (ROM) 傳輸。RPi 啟動速度更快,尤其是在 64 位操作系統(tǒng)中,因為它是一個未壓縮的內(nèi)核。或者將頁面從緩存加載到 Chromium 中。因此,任何使用閃存?zhèn)鬏敶罅繑?shù)據(jù)的東西都會更快。但是,例如,深度學(xué)習(xí)應(yīng)用程序不會運行得更快,因為它們主要使用 RAM。你也不會更好地傳輸YouTube流;這與您的互聯(lián)網(wǎng)帶寬有關(guān),與您的閃存卡無關(guān)。
USB啟動如此受歡迎的另一個原因是,使用過的SSD卡比較小的SD卡磨損得更少。
硬件
USB 啟動需要專用硬件。一個簡單的USB 3.0盤可以完成這項工作,但傳輸速度與SD卡相同,約為80-100MB / s。網(wǎng)絡(luò),它會更糟一些,因為在初始化RPi板上的USB控制器時大約有0.5秒的開銷。
只有使用快速 SSD 驅(qū)動器(400 MB/s 或更高),您才能從 USB 啟動中充分受益。這些 SSD 驅(qū)動器不作為 USB 設(shè)備提供。需要一個額外的USB 3.0適配器將其連接到樹莓。確保使用適合 UASP 傳輸?shù)倪m配器。它是USB 3.0支持的新的,最快的協(xié)議。最后要考慮的一點是功耗。相對較小的SSD驅(qū)動器可以通過USB端口供電。這是首選,因為否則,您還需要額外的電源。一個相對便宜的組合是金士頓240GB A400 SATA 3(32歐元)和Inateck 2.5硬盤盒(15歐元)。
樹莓派 4 USB 啟動
樹莓派巧妙地啟動。啟動后,位于EEPROM中的小程序立即僅加載I/O的驅(qū)動程序。這就是為什么,例如,即使沒有插入SD卡,您仍然會看到診斷屏幕。然后,該程序嘗試在樹莓派中加載操作軟件。完成后,它將控制權(quán)轉(zhuǎn)移到樹莓派,并在其余時間保持空閑狀態(tài)。
到目前為止,啟用USB啟動的最簡單方法是使用Raspberry Pi Imager。從 1.6 版開始,您可以找到適用于 USB 啟動的專用 EEPROM 設(shè)置。看看下面的幻燈片。
在PC中插入(小型)SD卡,然后燒錄您選擇的EEPROM鏡像。可以使用啟動順序首先是SD卡,其次是USB,或者在幻燈片中選擇的啟動順序,USB優(yōu)先,SD卡其次。使用樹莓派 4 和 EEPROM 更新中新閃存的 SD 卡啟動。屏幕變?yōu)榫G色后,您的EEPROM已準(zhǔn)備就緒。您始終可以通過簡單地使用不同的設(shè)置重復(fù)上述過程來更改啟動順序。
其余過程與第一段中所述的標(biāo)準(zhǔn)SD卡安裝相同。使用imager在 USB 設(shè)備上燒錄樹莓派 64 操作系統(tǒng),從樹莓派 4 中取出 SD 卡,然后將 USB 設(shè)備插入(藍色)USB 3.0 連接器。現(xiàn)在,按照通常的安裝順序進行操作。
密切關(guān)注 USB 設(shè)備的功耗。一個SSD卡沒有問題,但更多的就需要一個單獨的電源集線器。
故障 排除
最常見的故障原因是 USB 到 SATA(SSD 卡)適配器不支持 UASP 協(xié)議。UASP代表USBAttachedSCSIProtocol,Raspberry Pi使用的一種極快的數(shù)據(jù)傳輸協(xié)議。一些適配器,如流行的JMicron,在某些UASP命令上會有問題。您會看到性能緩慢、頻繁斷開連接或錯誤報告。即使連接到USB 2.0也無法解決問題,因為Linux內(nèi)核在看到USB 3.0設(shè)備時仍然使用UAS命令。
唯一的解決方案是在啟動后立即使用命令禁用 UASP 傳輸。在command.txt文件中,您需要提供 USB 驅(qū)動器的硬件 ID。您可以通過將SSD驅(qū)動器連接到仍在SD卡上工作的Raspberry Pi的USB來獲得它。
# Get the verdor and product ID $ lsusb
找到的數(shù)字在命令usb-storage.quirks=xxxx:yyyy:u中作為參數(shù)給出
此命令必須設(shè)置為 /boot/cmdline.txt中找到的長行中的第一個參數(shù)。
在 USB 文件夾的啟動部分找到該文件。請參閱下面的屏幕轉(zhuǎn)儲,從常規(guī)SD卡啟動的RPi。啟動后連接 USB 設(shè)備。
你也可以使用nano編輯器
Benchmark
經(jīng)過所有的努力,大多數(shù)人只想知道一件事:值得嗎?答案很簡單是肯定的。
您不僅擁有更多的內(nèi)存空間,而且具有分布式磨損的SSD卡的使用壽命也比SD卡長得多。
而且SSD卡要快得多。您可以在樹莓菜單上找到Benchmark測試工具。
執(zhí)行后,您可以請求報告。
我們研究了三種不同的選擇。首先是標(biāo)準(zhǔn)的SD卡,當(dāng)然是最慢的。
第二種選擇是帶有不支持 UASP 的 SATA 到 USB 轉(zhuǎn)換器的 SSD 卡;進步很大。
第三個選項是相同的SSD卡,但現(xiàn)在具有支持UASP的轉(zhuǎn)換器。顯然是最快的。
不得不說,如果沒有UASP,你仍然有很多速度增益。
最后兩點意見
在樹莓診斷報告中,您會看到 IOPS。它代表每秒的 I/O 操作數(shù)。如您所見,一次讀取或?qū)懭雮鬏敒?4 KBYTE。您可以將這些數(shù)字相乘以獲得以每秒(兆)字節(jié)為單位的傳輸速率。
這些令人印象深刻的傳輸速率僅反映從ROM讀取或?qū)懭霐?shù)據(jù),而不是工作存儲器(RAM)。最終,您的Raspberry Pi將運行得更快,但是,例如,使用SSD卡在RAM中具有模型的深度學(xué)習(xí)應(yīng)用程序不會更快。
啟動順序
對于高級用戶,有引導(dǎo)加載程序配置文件指示Raspberry Pi將如何啟動。在rpi-eeprom-config文件中,您可以定義兩個媒體(SD、USB、UART、網(wǎng)絡(luò))嘗試引導(dǎo) RPi。如果第一個(例如SD卡)出現(xiàn)故障,它將嘗試從第二個(可以是您的USB)啟動。這樣,當(dāng)SSD驅(qū)動器發(fā)生故障時,您的SD卡可以用作一種備份。
但是請注意,一旦啟動,您將只能使用該設(shè)備。換句話說,如果由于功能不當(dāng),您從“舊”SD卡而不是“新”SSD驅(qū)動器啟動,則由于加載了“舊”SD卡文件結(jié)構(gòu),您將丟失SSD驅(qū)動器上的所有工作。如果您的 SSD 驅(qū)動器仍在內(nèi)部啟動或其電源尚不可用,則可能會發(fā)生這種情況。您必須采取預(yù)防措施來解決此問題。一定次數(shù)的引導(dǎo)重試可能是解決方案。
在開始修改rpi-eeprom-config文件之前,請仔細(xì)閱讀此頁面上的說明。
$ sudo -E rpi-eeprom-config --edit # modify BOOT_ORDER=0xf41 # first SSD (USB), second SD card $ BOOT_ORDER=0xf14 # save +, , $ sudo reboot
同樣,這適用于高級用戶。大多數(shù)人只需從Pi中取出SD卡即可享受改進的性能。
審核編輯:湯梓紅
-
驅(qū)動器
+關(guān)注
關(guān)注
53文章
8256瀏覽量
146582 -
usb
+關(guān)注
關(guān)注
60文章
7959瀏覽量
265034 -
SD卡
+關(guān)注
關(guān)注
2文章
566瀏覽量
63959 -
SSD
+關(guān)注
關(guān)注
21文章
2865瀏覽量
117512 -
樹莓派
+關(guān)注
關(guān)注
117文章
1709瀏覽量
105714
發(fā)布評論請先 登錄
相關(guān)推薦
評論