Fórum Root.cz

Hlavní témata => Hardware => Téma založeno: Ħαℓ₸℮ℵ ␏⫢ ⦚ 30. 09. 2025, 22:52:29

Název: Zapnutí úsporných režimů pro NVMe
Přispěvatel: Ħαℓ₸℮ℵ ␏⫢ ⦚ 30. 09. 2025, 22:52:29
Jak zprovoznit na nvme disku  úspornější stavy? aby v idle neměl 85°C  ? a nebo jde o normální stav, když na phison E19 není chladič? Podle mého názoru to ty 3W nežere, ale spíš 1.5W-1W.
hlásí mi to toto
Kód: [Vybrat]
Supported Power States
St Op     Max   Active     Idle   RL RT WL WT  Ent_Lat  Ex_Lat
 0 +     3.70W  0.0000W       -    0  0  0  0     2500    2500
 1 +     3.70W  0.0000W       -    1  1  1  1     2500    2500
 2 +     3.70W  0.0000W       -    2  2  2  2     2500    2500
 3 -   0.4500W  0.0000W       -    3  3  3  3    25000   25000
proč 3 má mínus? jak to zapnu /povolím/přepnu?


v boot option mám pcie_aspm=on, (potvrzeno i v /sys/cmdline) ale  lspci -s 03: -vv hlásí
Citace
LnkCap: Port #1, Speed 16GT/s, Width x4, ASPM L1, Exit Latency L1 unlimited
                        ClockPM- Surprise- LLActRep- BwNot- ASPMOptComp+
                LnkCtl: ASPM Disabled; RCB 64 bytes, LnkDisable- CommClk+
                        ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
                LnkSta: Speed 8GT/s (downgraded), Width x4
                        TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
dál jsem zkoušel (před přidáním aspm on) věci jako /sys/module/pcie_aspm/parameters/policy

Jak ty věci na sobě závisí? je zapnutý nebo jen povolený aspm podmínka pro nvme "PS"? které věci zafungují až po restartu akteré až ihned?
taky jsem četl option  něco jako `nvme_core.default_ps_max_latency_u, ale to je maximální hodnota(která je 100000 takže ok)  a já nebotřebuju limit latence snižovat.

2)zároveň jsem četl že aspm může způsobovat zámrzy a bugy nebo horší výkon u wifi karet
3) jde aspm zapnout jen pro určitá zařízení?
Název: Re:nejde pcie_aspm=on pro nvme lehčí stavy
Přispěvatel: RDa 30. 09. 2025, 23:18:17
PHISON ma fest zabugovane chipsety/firmware pro NVMe a nezvlada to nejnizsi power state.
Linux na to ma quirky, aplikuje se to pri natazeni nvme driveru.
Název: Re:nejde pcie_aspm=on pro nvme lehčí stavy
Přispěvatel: Ħαℓ₸℮ℵ ␏⫢ ⦚ 01. 10. 2025, 00:03:19
no, moc moudrý z toho nejsem. Zapomněl jsem připsat, že jsem ještě nezkoušel jinou hodnotu pcie_aspm=force
a je mi divné, proč se tedy chlubí spotřebouv mW tady -: https://ssd-tester.de/downloads/controller/Phison%20PS5019-E19T.pdf ( označení je  konkrétně PS5019-e19-35)
Název: Re:Zapnutí úsporných režimů pro NVMe
Přispěvatel: Hans.Wolfenstein 01. 10. 2025, 09:01:30
Všechny PHISON chipsety zabugované asi nebudou - provozuji Crucial T500 s chipsetem E25 a nějaký OEM přímo od PHISONu a problémy s tím zatím nejsou. Možná bude nějaký problém pouze u toho E19.

Př. Phison Electronics Corporation PS5027-E27T PCIe4 NVMe Controller (DRAM-less) v jednom mini PC

 LnkCap: Port #1, Speed 16GT/s, Width x4, ASPM L1, Exit Latency L1 unlimited
                        ClockPM- Surprise- LLActRep- BwNot- ASPMOptComp+
                LnkCtl: ASPM L1 Enabled; RCB 64 bytes, Disabled- CommClk+
                        ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
                LnkSta: Speed 16GT/s, Width x4
                        TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-

Phison Electronics Corporation PS5027-E27T PCIe4 NVMe Controller (DRAM-less)

nvme-pci-e100
Adapter: PCI adapter
Composite:    +29.9°C  (low  =  -5.2°C, high = +82.8°C)
                       (crit = +86.8°C)
Sensor 1:     +29.9°C  (low  = -273.1°C, high = +65261.8°C)

Běží to pod Ubuntu 24.04 (6.14.0-29-generic)
Název: Re:Zapnutí úsporných režimů pro NVMe
Přispěvatel: xnd 01. 10. 2025, 11:15:53
ja pouzivam tento skript (upraveny pre moj system) na zapnutie ASPM pre vsetky PCIe zariadenia (mam to cez cron po boote) - https://gist.github.com/baybal/b499fc5811a7073df0c03ab8da4be904 / https://github.com/Mechitworks/Linuxscripts/blob/main/H610-ASPM.bash
 - na zaciatku skriptu je potrebne si nastavit spravne hodnoty pre premenne ROOT_COMPLEX a ENDPOINT

ale planujem vyskusat toto: https://github.com/notthebee/AutoASPM

takto mi klesla idle spotreba home servera:
 - https://user-images.githubusercontent.com/2448004/283563497-f69c13dc-c56e-40ea-bed0-be4d848e9711.gif z ~8W na ~2W
 -
Název: Re:Zapnutí úsporných režimů pro NVMe
Přispěvatel: RDa 01. 10. 2025, 14:44:54
Všechny PHISON chipsety zabugované asi nebudou - provozuji Crucial T500 s chipsetem E25 a nějaký OEM přímo od PHISONu a problémy s tím zatím nejsou. Možná bude nějaký problém pouze u toho E19.

Prave netykave Crucial T500 jsem resil (a krome toho i P310), bez tohoto to nefunguje a chcipa (resp. se neprobira):

Kód: [Vybrat]
+    { PCI_DEVICE(0xc0a9, 0x5415),   /* Crucial T500 2TB CT2000T500SSD8 P8CR002 */
+        .driver_data = NVME_QUIRK_NO_DEEPEST_PS, },

.. ale taky ze PCIe ASPM (vypinani pcie spojeni pro perifierie) je jina vec nez NVMe APST (uspavani radice v disku, obdoba SATA DEVSLP).
Název: Re:Zapnutí úsporných režimů pro NVMe
Přispěvatel: Ħαℓ₸℮ℵ ␏⫢ ⦚ 01. 10. 2025, 18:45:35
Tak jsem se do toho zakousl a něco zjistil. nvme getfeature neukazuje option 0xc (stav APST ) prostě je tam 0xb a 0xd jenom

ASPM je Disabled i přes pcie_aspm=force, případně setpci -s 3:0 0x40.b=0x43 a nvme reset /dev/...

možná je ASPM podružné a fakt hraje roli APST.
 

Ale to hlavní:
triviálním skriptem while true , sleep 1 , nvme set feature -f 0x2 -V 3 , done  >/devnyll & jsem docílíl snížení spotřeby z 7.9W na 7.1W a teploty   o 9 stupnu ... možná si řeknete necelý watt, ale pro nechci u nonstop disku mít nad 70 stupnů
2: get feature 0x2 hlásí stav 2 nebo 3. bez skriptu vydrží 3 pár sekund.
----> proč se opět nevrátí disk to stavu 3?? tabullka stavů je nahoř.

 ale ... myslím že to není pravé ořechové.... a něce se tam pere. a stále ASPM disabled v lscpit linkCTL.

(linkcap hlasí ASPM L1, exit unlimited a  L1subcap PCI-PM1.1 a 1.2 a ASPM 1.2 a 1.1 s plusy)

takže mě napadá, není v proxmoxu něco, co furt šashá nadisk. je to čistá instalace nic tam není přidané.
Název: Re:Zapnutí úsporných režimů pro NVMe
Přispěvatel: RDa 01. 10. 2025, 18:59:13
takže mě napadá, není v proxmoxu něco, co furt šashá nadisk. je to čistá instalace nic tam není přidané.

Tim jsi mel zacit. VM neni power saving friendly, at uz na strane hostu nebo guesta.

Co je to za desku a disk ?
Název: Re:Zapnutí úsporných režimů pro NVMe
Přispěvatel: Ħαℓ₸℮ℵ ␏⫢ ⦚ 01. 10. 2025, 23:06:48
nějaký board s intel n100, 
disk je 1e95:100b (nenašel jsem id na netu, ale SSSTC  SSSTC  XB2-311024 , možná odpovídá  CL.1 / CL.4 na webu).

co jsem zkoušel: echo y > /sys/module/nvme_core/parameters/force_apst -nic neudělá  (je třeba nutné to mít v boot params, po bootu není už pozdě a nebo je potřeba udělat něco jako reset pcie sběrnice,což nevím jak se dělá)
v biosu nic kolem aspm nenašel

a co jsem zjistil teď: v dmesg
 PCIe ASPM is forcibly enabled (sice hezké, ale proč u všech pcie zařízení je disabled
 nvme 0000:03:00.0: platform quirk: setting simple suspend ----tohle asi je zakopaný pes, vůbec nevím, ale zda tyhle quirky jsou někde definované podobně jako v sysctl.conf nebo modules nebo blacklist a zda nějak mohu udělat override
většina nvme (ssd) quierků se týká uspání+probuzení (hřeje po uspání nebo zmizí po probuzení), což tady(suspend) se nebude dít


běží tam taky @nvme_fabrics (nebo neběží? načten modul nvme_fabrics,ale zastavena služba nvme_fabrics)

takže resumé je, že sice se do stavu PS3 dostanu a je viditelné snížení teploty (když to běží každé 2 s lepší než každých 5s a ještě lepší než vůbec), ale jen ručně. disk vstává do PS0 nebo PS1 nebo PS2 (podle toho, který set-feature zavolám, podobně jako setfeature 0x02 3 pro ps 3)... čili, stavy 0,1,2 "to umí držet" pomocí set feat 0x02, ale 0x02=3 to nastaví jen dočaasně
a taky je divné že chybí ten 0xC (APST)
Název: Re:teploty pro NVMe
Přispěvatel: Ħαℓ₸℮ℵ ␏⫢ ⦚ 01. 10. 2025, 23:14:58
a prakticky: je už 49°C pro flash čip a 64°C pro controller OK pro nonstop provoz? Bez setfeature 0x02=3 každé 2 jsou teploty o 8-10°C jsou vyšší (vliv 800mW !!!)
Název: Re:teploty pro NVMe
Přispěvatel: CPU 01. 10. 2025, 23:21:16
a prakticky: je už 49°C pro flash čip a 64°C pro controller OK pro nonstop provoz?

Jinak položená otázka:
Maximální teplota kontroléru je v plné zátěži a po 15ti minutách 64°C, je to ok?
To by odpověď zněla, že to je naprosto v cajku.

Ale při běžném provozu ne, optimální teploty jsou pod 50°C.
Při teplotě 70°C už disky začínají zpomalovat a výrobce ví moc dobře proč.
Pokud je teplota pod běžnou zátěží 64°C na kontroleru, tak při zvýšení zátěže to určitě začne zpomalovat a to fakt není dobře.
Obvykle stačí přidělat pasiv, pokud není dobrý tok vzduchu, tak i fučák.
Název: Re:Zapnutí úsporných režimů pro NVMe
Přispěvatel: Ħαℓ₸℮ℵ ␏⫢ ⦚ 02. 10. 2025, 00:23:10
podmínky: jde o uplně idle stav. je tam přidělný heatsink. teplota je 55-70 (flash,controler a bez skriptu pro periodické PS3) , před heatsinkem  to bylo 82/6x. šílené.
(stačí malý větráček a dalších 5stupnu dole.)

ASPM:
Další věc: správné zaklínadlo je setpci  -s 03: 0x??=0x43 ...kde ??  se vypočte funny  (https://wireless.docs.kernel.org/en/latest/en/users/documentation/aspm.html#how-to-read-the-link-control-register-for-aspm)způsobem... 
setpci -s 3: 0x90.b=0x43 a setpci -s 1d.0 0x50.b=0x43
ale nemají se provést nejaké resety?

čili se mi podařilo zprovoznit ASPM, hlásí to L0,L1... Ale  k če mu to? co dál?? magicky apst není povoleno,  teploty stejné, 0xc option se nezjevila, čili žádný posun


ááááá)  jestli to co píše xnd, tak se to musí dělat nějak okultně přes efi skript....
Název: Re:Zapnutí úsporných režimů pro NVMe
Přispěvatel: CPU 02. 10. 2025, 00:47:58
Na NVMečkách mám teploty pod 40°C v idle a 60°C v plné zátěži !!!

Ale už se mi stalo, že jsem koupil vážně hřejivé SSD pro PCIe 5.0 (že sice nepotřebuji PCIe 5.0, ale myslel jsem si, že rychlosti budou lepší). No a to topilo i v idle jako **** a horký to bylo i s chladičem....tak letěl.

Pokud je chladič doplněk, aby se to lépe chladilo, tak super. Ostatně čipy jsou malé a teplo je šikovné rozvést.
Ale pokud je chladič takový rovnák na ohýbák, kdy se to bez něj samo na normální teploty neuchladí skoro ani v IDLE, tak je něco brutálně špatně.

Ve zkratce, pokud je to horké už v IDLE, měl bys uvažovat o výměně disku.

EDIT: Taky je možné, že ten disk něco interně vytěžuje. Ale to by mělo po pár hodinách ustat. Mizerné disky mají SLC cache uvnitř QLC, takže se primárně zapisuje do cache, aby se data pak odstěhovala do QLC buněk pomalou rychlostí. Takové SSD může topit i dost dlouho, kdy do něj "vlastně nic neteče". Takové SSD je nejspíš šmejd, ale zase to je jeho vlastnost než chyba...
Název: Re:Zapnutí úsporných režimů pro NVMe
Přispěvatel: Ħαℓ₸℮ℵ ␏⫢ ⦚ 02. 10. 2025, 09:10:42
No je to údajně 4.0x4 ,ale běží v 3.0x4. ostatně je tam psano downgraded. Zápisů je fakt málo, když  se dívám a smartctl -x, tak fakt writes po 5 vetřiách se zvýší o 0 nebo 2. Dokonce se na něj za poslední týden nezapsalo víc než 1GB.... prostě neprodukční počítač
Mělo by to být TLC bez RAM. s 128MB bufferem  v RAM.

Holt mi asi nezbyde exprimenotat s růžnými OS, zkoušet disk v jiných PC a jiné disky v PC, na což nemám náladu...
mimochodem xistuje něco, co ukáže procenta času v sleepu nebo PS stavech (pořád nevím jak je ASPM a APST provázané)


Navíc je mi divné jedna věc, ASPM A APST je minimálně 10 let stará věc, tak je divn, že by to intel alder lake neuumělo.
před 10 lety na windows se dalo vv registrech prikázat aby se v nastavení profilu napájení úkázaly i další možnosti pro položku Disk, a bylo tam DIPM,HIPM,lowest ... a druhá položka "úspora enegie pcie express" jen při nastavení na maximální úspora snížila teploty na jaké vy popisujete, když to bylo střední, žádná, tak bylo o15° vyšší... tolik k windows

a pomůže sys/bus/pcie/00:30/power/{control, runtime_status, runtime_enabled }?
Název: Re:Zapnutí úsporných režimů pro NVMe
Přispěvatel: Jan Fikar 02. 10. 2025, 09:17:05
nějaký board s intel n100,
...

n100 má tu blbou vlastnost, že je potřeba ASPM povolit v biosu. Když je v biosu zakázaný, tak ani pcie_aspm=force nepomůže a disky vaří. Navíc je default vypnutý, nevím proč.

Takže zapnout v biosu.
Název: Re:Zapnutí úsporných režimů pro NVMe
Přispěvatel: Dushino 02. 10. 2025, 15:18:05
Úsporný režim jsem řešil zrovna před pár dny. Všiml jsem si totiž, že ve Windows 11, pokud nechám kompl jen tak puštěný a Windows "nic nedělá", je teplota Kingston FURY Renegade NVMe 1TB značně nižší, než v Xubuntu, kdy také "nic nedělá". Protože tomu houby rozumím, zapojil jsem Claude a takhle to dopadlo:
NVMe power management:
 PCIe power management:
 Výsledek:
 Takže jsem moc zvědav, jak to dořešíte. U mě totiž NVMe přechází do spánku, ale na teplotě se to neprojeví. Spíš mi přijde, že Linux si myslí, že NVMe přejde do sleepu, ale dělá to nějak špatně, takže k uspání nedojde. Celý chat s AI je zde: https://claude.ai/share/ba63141d-5182-446e-94ce-2bc21ea2e166

Název: Re:Zapnutí úsporných režimů pro NVMe
Přispěvatel: Dushino 02. 10. 2025, 15:45:46
Úsporný režim jsem řešil zrovna před pár dny. Všiml jsem si totiž, že ve Windows 11, pokud nechám kompl jen tak puštěný a Windows "nic nedělá", je teplota Kingston FURY Renegade NVMe 1TB značně nižší, než v Xubuntu, kdy také "nic nedělá". Protože tomu houby rozumím, zapojil jsem Claude a takhle to dopadlo:
NVMe power management:
 
  • default_ps_max_latency_us=10000 v /etc/modprobe.d/nvme.conf
  • SSD přechází do PS 4 (0.062W) při nečinnosti
PCIe power management:
 
  • Systemd service pcie-powersave.service aktivní při startu
  • ASPM L0s/L1 + L1 substates (L1.1, L1.2) povoleny
Výsledek:
 
  • Maximum možného power managementu v Linuxu
  • Teplota ~51°C (vs ~38°C ve Windows)
  • Rozdíl 13°C je způsoben vendor-specific optimalizacemi Windows
Takže jsem moc zvědav, jak to dořešíte. U mě totiž NVMe přechází do spánku, ale na teplotě se to neprojeví. Spíš mi přijde, že Linux si myslí, že NVMe přejde do sleepu, ale dělá to nějak špatně, takže k uspání nedojde. Celý chat s AI je zde: https://claude.ai/share/ba63141d-5182-446e-94ce-2bc21ea2e166 (https://claude.ai/share/ba63141d-5182-446e-94ce-2bc21ea2e166)
Ještě dodám, že na SSD mám pasivní chladič a je na vrcholu odkrytovaného mini PC.
No a dále jsem našel https://bugs.launchpad.net/ubuntu/+source/nvme-cli/+bug/2064042/comments/2 z https://bugs.launchpad.net/ubuntu/+source/nvme-cli/+bug/2064042
Název: Re:Zapnutí úsporných režimů pro NVMe
Přispěvatel: xnd 02. 10. 2025, 17:48:43
...
Ale už se mi stalo, že jsem koupil vážně hřejivé SSD pro PCIe 5.0 (že sice nepotřebuji PCIe 5.0, ale myslel jsem si, že rychlosti budou lepší). No a to topilo i v idle jako **** a horký to bylo i s chladičem....tak letěl.

Ve zkratce, pokud je to horké už v IDLE, měl bys uvažovat o výměně disku.
...

Plne suhlasim!
Z mojich (nie vela) skusenosti som mal raz jeden m.2 SSD disk - nejaky Adata ... ktory mal v idle 50+ stupnov.
Potom som si urobil mensi research a zistil som, ze Samsung 980 Pro, resp. vseobecne rada "Pro" ma lepsi power management a nizsiu spotrebu - a teda aj teploty v idle.

Ja uz vsade (asi v 3 miniPC/homeserveroch) pouzivam Samsung 980 Pro 2TB.
Vo svojom hlavnom desktope mam po novom aj 990 Pro, ale ten hreje o dost viac, je to PCIe 4 disk v PC co ma iba PCIe 3 tak som myslel, ze nebude az tak hriat. Radsej by som ho vymenil za starsi model.


Název: Re:Zapnutí úsporných režimů pro `NVMe feature 0x02, 0x0C, 0x11` noPPME
Přispěvatel: Ħαℓ₸℮ℵ ␏⫢ ⦚ 03. 10. 2025, 10:41:42
další nvme get-feature, která smrdí:
nvme get-feature 0x11
NVMe NOPPME(Non-Operational Power State Permissive Mode) je false a je pouze read only
to je co zač, těmhle nvme věcem úplne nerozumím,. Klíčová je pro mě set-feature 0x03=3, jelikož s ní jsem schopen dosáhnout nižší teplot, pokud ji periodicky (každé 3 sekundy, a ještě znatelně i každých 7 s) zapínám. Jinak disk přejde do stavu 0,1,2, který jsem nastavil předtím.
A další záhadná je featura 0x0c , které teď nemohu přijít na jméno týkající se APST asi. A zrovna featura 0x0c chybí!

zatím jsem se do testování nepustilll , čím dál začím věřit, že jiná distribuce nebo windows to budou moci nastavit a stav PS 3 udržet
Název: Re:Zapnutí úsporných režimů pro `NVMe feature 0x02, 0x0C, 0x11` noPPME
Přispěvatel: Jan Fikar 03. 10. 2025, 13:19:54
další nvme get-feature, která smrdí:
...

možná to nějak zapadlo, protože je to na předchozí stránce, ale pro N100 je POTŘEBA ZAPNOUT ASPM V BIOSU! Je to defaultně vypnuté a pak všechna NVMe topí. A ani pcie_aspm=force nepomůže.
Název: Re:Zapnutí úsporných režimů pro NVMe
Přispěvatel: RDa 03. 10. 2025, 20:56:45
nějaký board s intel n100, 
disk je 1e95:100b (nenašel jsem id na netu, ale SSSTC  SSSTC  XB2-311024 , možná odpovídá  CL.1 / CL.4 na webu).

SSSTC dela hlavne OEM disky, takze firmware se muze taky chovat podle specifickych prani zakaznika.

Resil jsem jeden uplne novej quirk abych rozjel jedno wtf frikulinske 867GiB SSSTC NVMe (ma to jine PID nez tvoje):

Kód: [Vybrat]
+       /*
+        * HMB (Host Memory Buffer) should not be used.
+        */
+       NVME_QUIRK_NO_HMB                       = (1 << 23),

        /*
+        * Some drives should not be configured with HMB even if they advertise the need.
+        */
+       if (dev->ctrl.quirks & NVME_QUIRK_NO_HMB) {
+               dev_warn(dev->ctrl.device,
+                       "host memory buffer usage is forbidden for this drive\n");
+               return 0;
+       }

+       { PCI_DEVICE(0x1e95, 0x1000),  /* 931GB Microsoft, SSSTC XA1-311024, Phison E19 */
+               .driver_data = NVME_QUIRK_NO_HMB, },
Název: Re:Zapnutí úsporných režimů pro NVMe
Přispěvatel: RDa 03. 10. 2025, 21:03:29
Ale už se mi stalo, že jsem koupil vážně hřejivé SSD pro PCIe 5.0 (že sice nepotřebuji PCIe 5.0, ale myslel jsem si, že rychlosti budou lepší). No a to topilo i v idle jako **** a horký to bylo i s chladičem....tak letěl.

Pokud je chladič doplněk, aby se to lépe chladilo, tak super. Ostatně čipy jsou malé a teplo je šikovné rozvést.
Ale pokud je chladič takový rovnák na ohýbák, kdy se to bez něj samo na normální teploty neuchladí skoro ani v IDLE, tak je něco brutálně špatně.

Ve zkratce, pokud je to horké už v IDLE, měl bys uvažovat o výměně disku.

Taky takovych disku hromada pak umira. Mam nizsi desitky TB z techto modelu a doufam ze tam alespon NAND prezilo a upekl se tomu jenom radic (a to jsou "znackove" Crucial disky).

Nastesti uz existuje druha generace Gen5 radicu na mensim nm nodu, a v soucasnosti celkem vede WD SN8100 a dalsi znacky, ktere maj stejny radic (napr. Crucial T710).
Název: Re:Zapnutí úsporných režimů pro NVMe
Přispěvatel: Ħαℓ₸℮ℵ ␏⫢ ⦚ 05. 10. 2025, 18:18:58
Tohle Lecos vypovídá
https://lkml.iu.edu/hypermail/linux/kernel/1608.3/04080.html .... Že hodnota minus u Operational flagu je legitimní.

Ty hodnoty  (tabulka nvme vid-ctrl na konci nebo smartctl -X) PS stavů mají každá 3 hodnoty: mp je asi maximum, idle a active .pro můj disk jsem ji psal v uvodu, ale obsahuje jen mp.

Mimochodem co je v nvme.core/parametry/apst* význam hodnot? Co je primáty a  secndary Tol,timeout,latency? Zkusil jsem dát 60000 do primáry tol aby to přesáhlo součet 25000+25000

Modinfo nvme.core moc nenapovedelo.



Zkusil jsem cvičné boot parametr nvme.noacpi=1 a zmizla hláška quirk z dmesg ale nic se nezměnilo


A problém 2, jen zopakují, v BIOSu nemám hodnotu pro povolení aspm.
Název: Re:Zapnutí úsporných režimů pro NVMe
Přispěvatel: Dushino 06. 10. 2025, 12:27:12
A problém 2, jen zopakují, v BIOSu nemám hodnotu pro povolení aspm.
Já také ne. Přesto mám ve Windows NVMe disk chladnější, než v Linuxu. To může znamenat, že buď v BIOSu mám ASPM povolen (jen není vidět), nebo to Windows povolí nějak sám a Linux ne.
Název: Re:Zapnutí úsporných režimů pro NVMe
Přispěvatel: Jan Fikar 06. 10. 2025, 14:34:16
A problém 2, jen zopakují, v BIOSu nemám hodnotu pro povolení aspm.
Já také ne. Přesto mám ve Windows NVMe disk chladnější, než v Linuxu. To může znamenat, že buď v BIOSu mám ASPM povolen (jen není vidět), nebo to Windows povolí nějak sám a Linux ne.

Hmmm, a co to máte?

Asrock N100 to má podle manuálu na stránce 39/44 (číslo stránky, pořadí v pdf) v Chipset Configuration > PCH PCIE ASPM Support

https://download.asrock.com/Manual/Software/Intel%20N100/Software_BIOS%20Setup%20Guide_English.pdf

Radxa X4 to má taky, jestli to máte, tak se doma podívám, kde přesně.
Název: Re:Zapnutí úsporných režimů pro NVMe
Přispěvatel: Dushino 06. 10. 2025, 15:02:17
Hmmm, a co to máte?
Díky za dobrou vůli, mám laptopovou platformu Ryzen 7 8745HS v mini PC. https://acemagic.com/products/acemagic-w1-mini-pc Prosím, nesmějte se mi, je to tak, jak to je. Ale říkám si, že o tom asi napíšu článek sem na root.
Název: Re:Zapnutí úsporných režimů pro NVMe
Přispěvatel: Jan Fikar 06. 10. 2025, 17:31:14
U Ryzenu nevím, u N100 můžu zjistit, jaký je rozdíl v konfiguraci PCI se zapnutým a vypnutým ASPM.
Název: Re:Zapnutí úsporných režimů pro NVMe
Přispěvatel: Ħαℓ₸℮ℵ ␏⫢ ⦚ 07. 10. 2025, 12:29:49
Tak potvrzeno ten krám nemá podporu APST. Přitom to má i 10 let starý jeden SSD  n 80% protože verze hwinfo64 neukazuje atribut APST supported. TAkže mohu si obrazně ten starší disk upilovat u třicátého milimetru a narvat do toho 2230 slotu.

A existuje nějaký ekvivalentní software pro WIndows který umožní funkce nvme get-feature, nvme set-feature, nvme id-ctrl (na konci zobrazit tabulku stavů, má víc info než smartctl -A  ,konkrétně smarctl ukazuje jen max power oproti idle power a active power) ?


u těch mini pc taky je podstatná  "build quality", má třeba chladič na ram, heatsink pro ssd, plastovou izolaci konce m2. wifi karty nebo "zakápnuté"  headery konektorů?  Větrák s 4 piny pro regulaci a tacho oproti 2pinu nebo uchycení větráku aby nerezonoval . To všechno jsou detaily, které odlišují "levnou čínu" a kvalitní čínu. Paradoxně cena to neurčuje..
Název: Re:Zapnutí úsporných režimů pro NVMe
Přispěvatel: Ħαℓ₸℮ℵ ␏⫢ ⦚ 07. 10. 2025, 13:11:41
EDIT: Tak dokonce i druhý bazarový disk asi  má podporu APST, jejich teploty jsou 19° a 30° na Windows , bez heatsinku, ale s mírným tokem vzduchu. Jde o rok tak odhadem 2013 a 2015, a zmíněný SSSTC (79°C pokud by byl bez heatsinku a chlazení, 55° s heatsinkem a 40° s větrákem.) je asi 2022.
vš v idle.

Začímám mít pocit na spiknutí, že controller disku exhibuje feaury NOPPME, APST podle toho, jak pozná prostředí kde je připojen a podle toho si hodí mincí ...
Název: Re:Zapnutí úsporných režimů pro NVMe
Přispěvatel: Martin Poljak 07. 10. 2025, 13:31:30
Díky za dobrou vůli, mám laptopovou platformu Ryzen 7 8745HS v mini PC. https://acemagic.com/products/acemagic-w1-mini-pc Prosím, nesmějte se mi, je to tak, jak to je. Ale říkám si, že o tom asi napíšu článek sem na root.

Smát se čemu? To vůbec není špatné zařízení. Naopak: kéž by takových bylo více a byl větší výběr.
Název: Re:Zapnutí úsporných režimů pro NVMe
Přispěvatel: Jan Fikar 07. 10. 2025, 14:06:46
Tak jsem dělal nějaké pokusy na N100 Radxa x4:

ASPM:
Další věc: správné zaklínadlo je setpci  -s 03: 0x??=0x43 ...kde ??  se vypočte funny  (https://wireless.docs.kernel.org/en/latest/en/users/documentation/aspm.html#how-to-read-the-link-control-register-for-aspm)způsobem... 
setpci -s 3: 0x90.b=0x43 a setpci -s 1d.0 0x50.b=0x43
ale nemají se provést nejaké resety?

Toto je správně vyzaklínačované. Já tam mám ještě síťovku a WiFi, takže pro všechny tři karty je to pak takto:

Kód: [Vybrat]
setpci -s 00:1c.0 0x50.B=0x43
setpci -s 00:1c.6 0x50.B=0x43
setpci -s 00:1d.0 0x50.B=0x43

setpci -s 01:00.0 0x80.B=0x43
setpci -s 02:00.0 0xb0.B=0x43
setpci -s 03:00.0 0x90.B=0x43

Potom to ukazuje všude L0s a L1 zapnuté

Kód: [Vybrat]
# lspci -vv | grep LnkCtl | grep ASPM
                LnkCtl: ASPM L0s L1 Enabled; RCB 64 bytes, Disabled- CommClk+
                LnkCtl: ASPM L0s L1 Enabled; RCB 64 bytes, Disabled- CommClk+
                LnkCtl: ASPM L0s L1 Enabled; RCB 64 bytes, Disabled- CommClk+
                LnkCtl: ASPM L0s L1 Enabled; RCB 64 bytes, Disabled- CommClk+
                LnkCtl: ASPM L0s L1 Enabled; RCB 64 bytes, Disabled- CommClk+
                LnkCtl: ASPM L0s L1 Enabled; RCB 64 bytes, Disabled- CommClk+

Až sem dobrý. Teď jdu do biosu, dám defaults, udělám tyto setpci, ASPM je L0s L1 všude, ale NVMe má stejně 66C :( Když zatopím CPU tak i 80C.

Ta volba v biosu, co je potřeba zapnout mám pod CHIPSET > PCH-IO > PCI-EXPRESS CONFIGURATION > PCI EXPRESS ROOT PORT 9 > ASPM

(https://i.ibb.co/gbLBwxLv/aspm2.png) (https://ibb.co/gbLBwxLv)

default je DISABLED. Dobře, dám L1 a NVMe má 27C  :)

Podívám se na rozdíl mezi lspci -xxx před a po zapnutí této volby a výsledek je, že je potřeba udělat:

Kód: [Vybrat]
setpci -s 00:1d.0 0x4d.B=0x48
Původní defaultní hodnota je 0x40. No, akorát zrovna na tuhle pozici nejde zapsat!  :o Asi je to RO? Takže to nejde. A proto asi nefunguje ani pcie_aspm=force?

Někdo ví, jak zapsat setpci do RO?


Ještě zajímavost, když pustím autoaspm.py (někdo tu zmiňoval) tak mi to vypne čtyři L0s. L1 nechá zapnuté. L1 je stejně důležitější.

Kód: [Vybrat]
# lspci -vv | grep ASPM | grep LnkCtl
                LnkCtl: ASPM L1 Enabled; RCB 64 bytes, Disabled- CommClk+
                LnkCtl: ASPM L1 Enabled; RCB 64 bytes, Disabled- CommClk+
                LnkCtl: ASPM L1 Enabled; RCB 64 bytes, Disabled- CommClk+
                LnkCtl: ASPM L0s L1 Enabled; RCB 64 bytes, Disabled- CommClk+
                LnkCtl: ASPM L1 Enabled; RCB 64 bytes, Disabled- CommClk+
                LnkCtl: ASPM L0s L1 Enabled; RCB 64 bytes, Disabled- CommClk+
Název: Re:Zapnutí úsporných režimů pro NVMe
Přispěvatel: Jan Fikar 07. 10. 2025, 14:48:17
Toto by možná mohlo fungovat jak pro N100 tak pro Ryzen?

https://z8.re/blog/aspm.html

Pán před grubem v UEFI pustí ASPMEnabler.efi. Ten vezme tu:

https://github.com/Jamesits/S0ixEnabler

Nebo spíš tu:

https://github.com/Bootlessjam/ASPM-Tool
Název: Re:Zapnutí úsporných režimů pro NVMe
Přispěvatel: Ħαℓ₸℮ℵ ␏⫢ ⦚ 07. 10. 2025, 15:01:16
Heh, to jsem četl před týdnem. Možná je právě to vysvětlení mnohem jednodušší, že disk neumí APST. Zatím jiný disk jsem tam nezkoušel= nedostal jsem se k vyzkoušení jiných OS

Mimochodem dá se nějak softwarově poznat(podle parametru, nebo podle chování feromonogolicky), jestli disk má pseudo SLC cache (kromě LInuxu i na widnows, jako jsem se ptal i pro id-ctrl, *et-feature) ?
Název: Re:Zapnutí úsporných režimů pro NVMe
Přispěvatel: Jan Fikar 07. 10. 2025, 15:21:06
V tom mým N100 to dělají všechny disky, co jsem zkoušel.

Teď ten aktuální disk možná taky nemá APST:

Kód: [Vybrat]
# nvme get-feature /dev/nvme0 -f 0xc -H
NVMe status: Invalid Field in Command: A reserved coded value or an unsupported value in a defined field(0x2002)

A když nabootuju s nvme_core.default_ps_max_latency_us=0, což má APST vypnout, tak teplota stále 27C.

Takže problém je s ASPM ne s APST.
Název: Re:Zapnutí úsporných režimů pro NVMe
Přispěvatel: Ħαℓ₸℮ℵ ␏⫢ ⦚ 07. 10. 2025, 15:35:13
Aha, utekl mi jeden příspěvek. Teď koukám podle 1.d0. to je pcie root port #9 na radxa x4 N100 a disk je 03:00 (neplést . a : )... Ale já na radxa v biosu nemám  volbu chipset... ...  Ty pokusy jsi dělal na Radxa nebo jiném PC( Asrock)?

Začínám tomu přestávat (chtít) rozumět... Ale dokud asi nezkusím víc disků , více OS a disk na jiných PC, asi stejně se nedozvim, kde je zakopaný Watt.

acemagic-w1-mini-pc Prosím, nesmějte se mi, je to tak, jak to je. Ale říkám si, že o tom asi napíšu článek sem na root.
Možná rozumím, že si musel brát něco z číny. Je snad nějaká evropská značka, kterýá něco takového vyrábí a nestojí to 25000? Beelink, asome... Mají i české zastoupení, ale ta cena...

Název: Re:Zapnutí úsporných režimů pro NVMe
Přispěvatel: Jan Fikar 07. 10. 2025, 16:13:28
Jo, to je Radxa x4 N100 a konkrétně tento bios:

Radxa X4 custom BIOS V002 T: supports IBECC option and hidden option enablement

https://docs.radxa.com/en/x/x4/bios/update-bios

Tak to tam dej, zapni v biosu a pojede to.

Novější bios jsem nezkoušel, tady ten má In-Band-ECC pro LPDDR5.
Název: Re:Zapnutí úsporných režimů pro NVMe
Přispěvatel: Ħαℓ₸℮ℵ ␏⫢ ⦚ 08. 10. 2025, 00:16:32
Díky moc, zapnutí APSM v novém BIOsu je přesně ono, co jsem potřeboval.   APST holt se musí dělat ručně přes while : nvme set-feature 0x02=3 nvme0; sleep 5s;
(Debilní windows nejsou schopné namountovat EFI partition na přes diskpart assign letter=u, jen pokud jde o USB disk, u interního to jde, nakonec jsem to zkopíroval na NASu  8) , )

Disk má teploty 35°/50°C (flash/phison) , s set-feature 0x02=3 každých 5s  o 5° méně.  Spotřeba klesla o 0.8W. Je šílené, že  tak malý rozdíl  energie udělá 30°C rozdíl teplot.  To je asi tou plochou/objemem.

(Ale zůstává jedna záhada, která mi pije krev pořád : ) Nefunguje to hned od začátku spuštění nebo restartu. Musím ten pošahaný disk do toho nějak ručně dostrkat  po loginu, funguje nějaká kombinace setpci (bez rovnítka dokonce pro 03:0 nebo 1.d nebo set-feature 2(možná  až napodesátý:???) nebo odpojení síťovky)). nevím. záhada.



Nepomohlo dát ani do /etc rc.local skript který ručně prostřídá stavy  :
setpci 90.b  setpci 50.b.   0x02=1 ,  0x02=2 ,  0x02=3  setpci 90.b  setpci 50.b , 0x02=3
to funguje zhruba v 50% případů, ale jindy veseledisk má 75°C.  Zkoušel sjem i ASPM pro sousední porty 4 a 7 (wifi,nic),


Každopádně to není zásadní problém, když ten disk jednou konečně přestane topit, tak už je to napořád=do restartu/vypnutí
Taky jsem si všiml, že integrovaná wifi byla (ta ploška u antén) bývala horká, kdy pc startoval bez disku. možná ohřívá nvme zespoda... To zase vymyslel nějaký génius dát tyhle 2 věci pod sebe... když nefunguje powermanagement.
Název: Re:Zapnutí úsporných režimů pro NVMe
Přispěvatel: Dushino 08. 10. 2025, 08:31:18
Nepomohlo dát ani do /etc rc.local skript který ručně prostřídá stavy  :
Nepomohlo by udělat skript v /usr/local/bin/<soubor.service>, který na pozadí spouští váš skript a nechat OS, ať tuto službu nastartuje?
sudo systemctl restart <soubor.service>

Název: Re:Zapnutí úsporných režimů pro NVMe
Přispěvatel: Jan Fikar 08. 10. 2025, 13:04:34
(Ale zůstává jedna záhada, která mi pije krev pořád : ) Nefunguje to hned od začátku spuštění nebo restartu. Musím ten pošahaný disk do toho nějak ručně dostrkat  po loginu, funguje nějaká kombinace setpci (bez rovnítka dokonce pro 03:0 nebo 1.d nebo set-feature 2(možná  až napodesátý:???) nebo odpojení síťovky)). nevím. záhada.

To nevím, mi disk jede studený hned, teda on se při startu trochu ohřeje, ale nic nedělám, kromě toho nastavení v biosu a po čase klesne na 26C.

Toto naopak u mýho disku nic nedělá, asi nepodporuje APST
Kód: [Vybrat]
# nvme set-feature /dev/nvme0 -f 0x02=3;nvme get-feature /dev/nvme0 -f 0x02
set-feature:0x02 (Power Management), value:00000000, cdw12:00000000, save:0
get-feature:0x02 (Power Management), Current value:00000000

V tom biosu jde ještě zapnout ASPM v Chipset > PCH-IO Configuration > PCI Express Configuration > DMI Link ASPM Control = L0sL1

A taky Chipset > System Agent (SA) Configuration > PCI Express Configuration > PCI Express Root Port 1, 2, 3 > ASPM = L0sL1

Ale to nevím, jaký to má vliv, podle všeho to ani není PCIe, ale používá se na USB/SATA/UFS.

Ve fóru říkali zapnout C states v Advanced > Power & Performance > CPU - Power Management Control > C states

Na stejném místě je i Platform PL1 EnablePlatform PL1 Power = 12500, což nastaví PL1 z 6W na 12.5W a procesor může dlouhodobě dosahovat větších frekvencí. Záleží pak na chlazení. Mi jedou 4 jádra na 2.9 GHz.

To PL1 jde udělat i v /etc/rc.local
Kód: [Vybrat]
echo 12500000 > /sys/devices/virtual/powercap/intel-rapl/intel-rapl:0/constraint_0_power_limit_uw
Název: Re:Zapnutí úsporných režimů pro NVMe
Přispěvatel: Ħαℓ₸℮ℵ ␏⫢ ⦚ 08. 10. 2025, 14:34:50
Správná syntaxe je nvme set-feature -f 0x02 -V X /dev/nvme0 (ať žije roztříštěnost příkazů a zápisů linuxu   !!! yaml, ini, sysctl.conf, ) a připomenu, že se  hodnota X={0,1,2} si to pamatuje ale X=3 to nechá pár sekund. (Díky APSM už tohle periodicky nastavovat už má jenom minimální rozdíl 5°C) .  Napadá mě ještě že ta neurčitost faktického přechodu to netopivého režimu jde může záviset, že se čeká na neaktivitu procesoru nebo disku a že díky volbě pouze L1 (0x42 že by?) místo L0s L1  se ASPM zapne z jednoho směru ... Nevím jestli je to analogie windows DIPM&HIPM pro SATA (Device/Host Initiated Powe management) Každopádně ten update biosu problém to přehřívání  skoro vymýtil, jen musím pohlídat, aby to po zapnutí fakt netopilo. Jen je záhada, že v 50% to hned jde od spuštění a jindy ne a v tom případě záhadně když se v tom začnu vrtat, to začne jít-

hodí se:
watch -n 4 'cat /sys/class/hwmon/hwmon1/*input | tail -n 3 | sed -E "s/(.).0\$/.\1/" '


Co jsem přišel, /sys/module/pcie_apsm/parameters/policy hodnota performance okamžitě začne zvedat teploty, to je podle mě ekvivalent  Vypnuto pro "úsporů energie pcie express" Na windows. možná echo default > policy, echo  powersave > policy podruhé by mohlo pomoc. (Samozřejmě že v grub mám .policy=powersave)



(mimochodem to množství voleb BIOSu mě ohromilo, ale v Chipset by se asi nemělo nic bezhlavě měnit, když neznám mechanismus reset biosu nastavení pro Radxa, možná hrozí i bricknutí.)

S TDP a výkonem jsem si moc nehrál, Navíc nastavení TDP mi tam připadá nepřehledné, asi na 3 místech. Překvapilo mě jen, že C-states jsou vypnuté a funguje to OK.   S přehříváním CPU zatím problém není, když tam nic neprovozuju.

MImochodem co je STAPM limit a PPT limit? (to je spíš z AMD)

Citace
/etc/rc.local
Vždyť to mám, obsahuje to náhodný balík příkazů z té množiny setpci 3:0, setpci 1.d , set-feature proložený sleep , celé obalené v ( ) > /dev/null. Je to takové horkou jehlou dělané... a šance je 50% na 50% že po spuštění nebo restartu to zabere nebo ne... nezkoušel jsem třeba jestli sám po 10 minutách  začne šetřit.  On ten nárůst a pokles teplot z horkého do normálního stavu samovolně, bez proudu vzduchu je věc řádu minut, možná 5 minut trvá přecho 35/50   --- 65/80.