ct100
Enthusiast
Thread Starter
- Mitglied seit
- 03.03.2004
- Beiträge
- 1.624
Man nehme:
- Single Board Computer mit Rockchip RK3588s SoC und M.2 Slot. Dieser SoC ist im 8nm Low Power Prozess gefertigt und hat 4 kleine und 4 große Kerne. Durch den Herstellungsprozess und die kleinen Kerne hat der SoC eine sehr niedrige Leistungsaufnahme im Idle.
- MicroSD-Karte oder Onboard eMMC-Speicher für das Betriebssystem. Es reichen theoretisch 8GB aus, aber mehr Speicher bedeutet auch höhere TBW-Werte und damit längere Haltbarkeit.
- M.2 SSD mit möglichst niedrigem Idle-Verbrauch im PCIe ASPM L1 Modus und funktionierendem APST (Autonomous Power State Transition).
- USB-Netzteil >10W, das im Bereich von 1-2W eine sehr hohe Effizienz hat.
In meinem Fall habe ich mich für folgende Komponenten entschieden:
- FriendlyElec NanoPi R6C 4GB im CNC Metallgehäuse
- SanDisk Max Endurance 32GB microSD
- Lexar NM790 4TB M.2 NVME SSD
- Ugreen CD122 70273 USB-A 18W Netzteil
Verwendete Software:
- Armbian 23.08.1 Bullseye Minimal 5.10.160 Legacy Kernel (via https://github.com/armbian/build)
- OpenMediaVault 6.8.0 Shaitan + OMVExtras (via https://github.com/OpenMediaVault-Plugin-Developers/installScript)
- OpenMediaVault Docker Compose Plugin
Software Konfiguration:
In Armbian PCIe ASPM L1 Stromsparmodus aktivieren
Code:
/boot/armbianEnv.txt
extraargs=pcie_aspm.policy=powersave
Beim Systemstart nicht darauf warten, dass beide Ethernet-Ports gleichzeitig verbunden sind
Code:
/etc/systemd/system/network-online.target.wants/systemd-networkd-wait-online.service
ExecStart=/lib/systemd/systemd-networkd-wait-online --any
Ergebnis:
- Stromverbrauch (An der Steckdose gemessen, Messgenauigkeit +/- 100mW, SSD APST aktiv, ASPM L1 aktiv, ASPM L1 Substates nicht aktiv)
Wenn man statt dem 1G WAN-Port den 2.5G LAN-Port verwendet führt das zu einem höheren Verbrauch im Idle (siehe Grafik/Liste unten für genaue Werte).
Das Linux Stromspartool Powertop mit der Option "--auto-tune" hat keine (messbare) Auswirkung auf den Idle-Verbrauch wenn PCIe ASPM L1 bereits aktiviert ist.
- SMB Transfergeschwindigkeit über Samba unter Windows 10 (2.5G LAN-Port, oben 2.5G Ethernet unten 1G Ethernet Verbindung)
Fazit:
Wie man sieht ist das NAS sowohl extrem Sparsam als auch in der Lage das 2.5G Ethernet über SMB komplett auszureizen.
Durch den extrem geringen Verbrauch ist es sogar möglich das NAS mobil mit WLAN an einer USB-Powerbank zu betreiben oder stationär eine USB-Powerbank als billige USV zu missbrauchen.
Es ist ebenfalls kein Problem auf dem NAS zahlreiche Docker Container laufen zu lassen. Die CPU des Rockchip RK3588s SoC ist 3-4x so schnell wie ein Raspberry Pi 4 und kann mit einigen Intel Atom Modellen konkurrieren.
Sonstiges:
Der NanoPi R6C hat keinen Lüfter aber unter Last produzieren die Spannungswandler auf der Platine minimales Spulenfiepen. Bei absoluter Stille und mit guten Ohren ab ca. 1m nicht mehr wahrnehmbar. Im Idle muss man mit dem Ohr ans Gehäuse, um ein Geräusch wahrnehmen zu können.
Leider basieren aktuell noch fast alle Images (auch Armbian) für den NanoPi R6C auf älteren Bootloadern (oft radxa u-boot 2017.09) und legacy 5.10.y Vendor-Kerneln. Es wird wahrscheinlich noch mindestens 1 Jahr dauern bis es gute Images mit 6.x Mainline-Kernel geben wird, die alle Funktionen des SBC unterstützen.
Der 1G WAN-Port besteht aus einer Kombination aus GMAC im RK3588s SoC und einem Realtek RTL8211F Transceiver. Diese Kombination hat insbesondere beim Empfang von Daten bei gleichzeitigem I/O auf Datenträgern weniger Leistung als die Realtek RTL8125BG NIC am 2.5G LAN-Port. Wer die maximale Übertragungsleistung für ein NAS haben will sollte also besser den 2.5G LAN-Port verwenden.
Für den 1G WAN-Port ist in Armbian automatisch Energy Efficient Ethernet aktiv. Für den 2.5G LAN-Port ist Energy Efficient Ethernet nicht automatisch aktiv und muss mit ethtool aktiviert werden: "ethtool --set-eee enP3p49s0 eee on". Um EEE dauerhaft für den 2.5G LAN-Port zu aktivieren muss man eine Aufgabe mit CRON oder eine Service-Datei für Systemd erstellen, die den ethtool-Befehl während des Systemstarts automatisch ausführt.
Der im 8GB Modell des NanoPi R6C verbaute 32GB eMMC-Speicher stammt vom Hersteller FORESEE (Foto).
Idle Verbrauch verschiedener Kombinationen (Armbian 23.08.1 Bullseye Minimal 5.10.160 Legacy Kernel):
(Ugreen 18W Netzteil, Nach dem Netzteil gemessen / An der Steckdose gemessen (Netzteileffizienz), Messgenauigkeit +/- 100mW, SSD APST aktiv, ASPM L1 Substates nicht aktiv, Energy Efficient Ethernet aktiv)
R6C4GB + SD32GB = 0,709W / 0,85W (83,4%)
R6C4GB + SD32GB (WAN1G) = 0,808W / 0,92W (87,8%)
R6C4GB + SD128GB (WAN1G) = 0,808W / 0,92W (87,8%)
R6C4GB + SD32GB + LEXAR4TB (WAN1G) = 1,158W / 1,28W (90,5%)
R6C4GB + SD32GB + SKGOLD2TB (WAN1G) = 1,249W / 1,35W (92,5%)
R6C8GB MMC32GB + SD32GB (SDBOOT,WAN1G) = 0,833W / 0,92W (90,5%)
R6C8GB MMC32GB + SD32GB + LEXAR4TB (SDBOOT,WAN1G) = 1,175W / 1,28W (91,8%)
R6C8GB MMC32GB + LEXAR4TB (MMCBOOT) = 1,020W / 1,14W (89,5%)
R6C8GB MMC32GB + LEXAR4TB (MMCBOOT,WAN1G) = 1,117W / 1,21W (92,3%)
R6C8GB MMC32GB + LEXAR4TB (MMCBOOT,LAN1G) = 1,150W / 1,28W (89,8%)
R6C8GB MMC32GB + LEXAR4TB (MMCBOOT,NOEEE,LAN1G) = 1,359W / 1,50W (90,6%)
R6C8GB MMC32GB + LEXAR4TB (MMCBOOT,LAN2.5G) = 1,284W / 1,43W (89,8%)
R6C8GB MMC32GB + LEXAR4TB (MMCBOOT,NOEEE,LAN2.5G) = 1,671W / 1,85W (90,3%)
R6C4GB + SD32GB (ASPML1) = 0,560W / 0,64W (87,5%)
R6C4GB + SD32GB (WAN1G, ASPML1) = 0,654W / 0,78W (83,8%)
R6C4GB + SD128GB (WAN1G, ASPML1) = 0,654W / 0,78W (83,8%)
R6C4GB + SD32GB + LEXAR4TB (WAN1G, ASPML1) = 0,768W / 0,85W (90,4%)
R6C4GB + SD32GB + SKGOLD2TB (WAN1G, ASPML1) = 0,889W / 1,00W (88,9%)
R6C8GB MMC32GB + SD32GB (SDBOOT,WAN1G, ASPML1) = 0,669W / 0,78W (85,8%)
R6C8GB MMC32GB + SD32GB + LEXAR4TB (SDBOOT,WAN1G, ASPML1) = 0,788W / 0,85W (92,7%)
R6C8GB MMC32GB + LEXAR4TB (MMCBOOT, ASPML1) = 0,644W / 0,71W (90,7%)
R6C8GB MMC32GB + LEXAR4TB (MMCBOOT,WAN1G, ASPML1) = 0,739W / 0,85W (86,9%)
R6C8GB MMC32GB + LEXAR4TB (MMCBOOT,LAN1G, ASPML1) = 0,773W / 0,85W (90,9%)
R6C8GB MMC32GB + LEXAR4TB (MMCBOOT,NOEEE,LAN1G, ASPML1) = 0,984W / 1,07W (92,0%)
R6C8GB MMC32GB + LEXAR4TB (MMCBOOT,LAN2.5G, ASPML1) = 0,914W / 1,00W (91,4%)
R6C8GB MMC32GB + LEXAR4TB (MMCBOOT,NOEEE,LAN2.5G, ASPML1) = 1,289W / 1,43W (90,1%)
Das zur Messung an der Steckdose verwendete AVM FRITZ!DECT200 Messgerät kann nur in ~0,07W Stufen messen. Die berechnete Netzteileffizienz ist nicht sehr genau, da die kombinierte Messungenauigkeit von zwei Messgeräten den realen Wert verfälscht. Sie dient vor allem dazu, um grob einschätzen zu können bei welcher Messung das FRITZ!DECT200 eher zu viel oder zu wenig anzeigt.
Hinweise zur M.2 Kompatibilität des NanoPi R6C:
Single-Sided 2280 M.2 SSDs ohne Kühlkörper passen alle.
Bei Double-Sided 2280 M.2 SSDs ist es leider nicht so einfach. Der Abstand des PCB zur M.2 SSD-Platine beträgt lediglich 2,3mm und auf dem PCB befinden sich etliche Bauteile mit einer Höhe von bis zu 1,3mm.
Detailfoto der Bauteile auf dem PCB
Modelle bei denen lediglich der DRAM-Cache auf der Unterseite ist am Anfang der SSD sollten passen. Modelle mit 2 Flash-Chips auf der Unterseite in der Nähe der Befestigungsschraube sollten ebenfalls passen.
Getestete SSDs:
(ASPM = Active State Power Management, APST = Autonomous Power State Transition, HMB = Host Memory Buffer)
SK Hynix Gold P31 2TB
Code:
Supported Power States
St Op Max Active Idle RL RT WL WT Ent_Lat Ex_Lat
0 + 6.3000W - - 0 0 0 0 5 5
1 + 2.4000W - - 1 1 1 1 30 30
2 + 1.9000W - - 2 2 2 2 100 100
3 - 0.0500W - - 3 3 3 3 1000 1000
4 - 0.0040W - - 3 3 3 3 1000 9000
Code:
LnkCtl: ASPM L1 Enabled; RCB 64 bytes, Disabled- CommClk+
L1SubCap: PCI-PM_L1.2+ PCI-PM_L1.1+ ASPM_L1.2+ ASPM_L1.1+ L1_PM_Substates+
Lexar NM790 4TB
Code:
Supported Power States
St Op Max Active Idle RL RT WL WT Ent_Lat Ex_Lat
0 + 6.50W - - 0 0 0 0 0 0
1 + 5.80W - - 1 1 1 1 0 0
2 + 3.60W - - 2 2 2 2 0 0
3 - 0.0500W - - 3 3 3 3 5000 10000
4 - 0.0025W - - 4 4 4 4 8000 41000
Code:
LnkCtl: ASPM L1 Enabled; RCB 64 bytes, Disabled- CommClk+
L1SubCap: PCI-PM_L1.2+ PCI-PM_L1.1+ ASPM_L1.2+ ASPM_L1.1+ L1_PM_Substates+
Code:
Enable Host Memory (EHM): Enabled
Host Memory Descriptor List Entry Count (HMDLEC): 10
Host Memory Descriptor List Address (HMDLAU): 0x0
Host Memory Descriptor List Address (HMDLAL): 0x7f24000
Host Memory Buffer Size (HSIZE): 10240
Samsung 990 Pro 4TB
Code:
Supported Power States
St Op Max Active Idle RL RT WL WT Ent_Lat Ex_Lat
0 + 9.39W - - 0 0 0 0 0 0
1 + 9.39W - - 1 1 1 1 0 0
2 + 9.39W - - 2 2 2 2 0 0
3 - 0.0400W - - 3 3 3 3 4200 2700
4 - 0.0050W - - 4 4 4 4 500 21800
Code:
LnkCtl: ASPM L1 Enabled; RCB 64 bytes, Disabled- CommClk+
L1SubCap: PCI-PM_L1.2+ PCI-PM_L1.1+ ASPM_L1.2+ ASPM_L1.1+ L1_PM_Substates+
SSD Stromverbrauch Vergleichstest:
(Konfiguration: NanoPi R6C 8GB 32MMC, 32GB SD, Boot von SD, Armbian Bookworm Community 23.05.0 Trunk Minimal, 1G Verbindung am WAN-Port, 2m EEE aktiv. Gesamtsystemverbrauch hinter dem Netzteil gemessen. Ohne ASPM L1 Substates, da nicht vom NanoPi unterstützt. Achtung! Absolute Verbrauchswerte nicht direkt mit anderen Systemen vergleichbar, da die SSD im NanoPi nur über PCIe 2.1 x1 angebunden ist!)
Ohne SSD (ASPML1) = 0,642 W
Lexar NM790 4TB (ASPML1) = 0,742 W
SK Hynix Gold P31 2TB (ASPML1) = 0,864 W
Samsung 990 Pro 4TB (ASPML1) = 0,926 W
Ohne SSD = 0,788 W
Lexar NM790 4TB = 1,122 W
Samsung 990 Pro 4TB = 1,172 W
SK Hynix Gold P31 2TB = 1,223 W
Die Lexar NM790 ist was den Stromverbrauch angeht derzeit kaum zu schlagen. Auch die bereits sehr sparsame SK Hynix Gold P31 hat keine Chance. Dies wird sich wahrscheinlich erst ändern wenn SSDs mit 8nm Controller und 200+Layer Flash auf den Markt kommen.
Update: Auch die Samsung 990 Pro 4TB mit ihrem 8nm Controller und 236-Layer TLC V8 V-NAND kann die Lexar im Stromverbrauch nicht schlagen!
Rangliste von USB-Netzteilen:
(nach Idle-Effizienz für den NanoPi R6C sortiert)
1. Ugreen CD122 70273 USB-A 18W (5V)
2. Samsung EP-TA20EBE USB-A 10W (5V, Unter Last nicht stabil!)
3. Raspberry Pi KSA-15E-051300H USB-C 15,3W (5V)
4. Samsung EP-T1510 USB-C 15W (9V, Spulenfiepen!)
5. Samsung EP-TA800N USB-C 25W (9V, lautes Spulenfiepen!)
6. Ugreen Nexode GaN USB-C 20W (12V)
7. Ugreen Nexode GaN USB-C 30W (20V)
8. Anker PIQ3.0 GaN USB-C 30W (20V, Spulenfiepen!)
9. MOKiN MOPA0303-WH GaN USB-C 2P 40W (20V, lautes Spulenfiepen!)
10. Spigen GaN 652 USB-C 2P 65W (20V)
Idle-Verbrauch von Netzwerk Switches
(An der Steckdose gemessen, Messgenauigkeit +/- 100mW, mit Netzteil des Herstellers, ohne Verbindungen + pro Verbindung mit EEE aktiv)
D-Link DGS-108 (1G 8P) = 0,57W + (1G1GP 0,05W)
D-Link DMS-107 (1G 5P, 2.5G 2P) = 1,07W + (1G1GP 0,05W / 1G2.5GP 0,22W / 2.5G2.5GP 0,25W)
D-Link DMS-105 (2.5G 5P) = 0,92W + (1G2.5GP 0,3W / 2.5G2.5GP 0,3W)
D-Link DMS-108 (2.5G 8P) = 1,64W + (1G2.5GP 0,32W / 2.5G2.5GP 0,32W)
TRENDnet TEG-S350 (2.5G 5P) = 0,92W + (1G2.5GP 0,55W / 2.5G2.5GP 0,8W) <-- Kein EEE, obwohl laut Hersteller angeblich unterstützt!
Zyxel MG-105 (2.5G 5P) = 5,07W + (1G2.5GP 0,9W / 2.5G2.5GP 1,35W) <-- Schrott! Keine Energiesparmodi! Kein EEE!
Zuletzt bearbeitet: