Portál AbcLinuxu, 30. října 2025 17:04
root@x220:~# echo $((48*1024*1024)) > /proc/sys/vm/dirty_bytes root@x220:~# echo $((16*1024*1024)) > /proc/sys/vm/dirty_background_bytesJakmile odpojím napájení, klesá rychlost kopírování na 2-10 MB/s, v iotopu vidím kolem 3 MB/s. Jakmile ho zase připojím, zvedne se rychlost zápisu na 60-100 MB/s, než se zapíše buffer, a pak klesne na rychlost flashky. To je kopírování na komprimovaný btrfs. Nevím si s tím rady, a co je zvláštní, nemůžu o tom problému nic najít (hledám x220 msata battery speed problem apod). V dmesg nic. Inicializace zařízení při bootu:
[ 2.335270] ata3: SATA link up 3.0 Gbps (SStatus 123 SControl 300) [ 2.336255] ata3.00: ACPI cmd ef/02:00:00:00:00:a0 (SET FEATURES) succeeded [ 2.336261] ata3.00: ACPI cmd f5/00:00:00:00:00:a0 (SECURITY FREEZE LOCK) filtered out [ 2.336265] ata3.00: ACPI cmd ef/10:03:00:00:00:a0 (SET FEATURES) filtered out [ 2.336621] ata3.00: supports DRM functions and may not be fully accessible [ 2.337986] ata3.00: ATA-10: Crucial_CT500MX200SSD3, MU03, max UDMA/133 [ 2.337990] ata3.00: 976773168 sectors, multi 16: LBA48 NCQ (depth 31/32), AA [ 2.339959] ata3.00: ACPI cmd ef/02:00:00:00:00:a0 (SET FEATURES) succeeded [ 2.339964] ata3.00: ACPI cmd f5/00:00:00:00:00:a0 (SECURITY FREEZE LOCK) filtered out [ 2.339968] ata3.00: ACPI cmd ef/10:03:00:00:00:a0 (SET FEATURES) filtered out [ 2.340297] ata3.00: supports DRM functions and may not be fully accessible [ 2.342790] ata3.00: configured for UDMA/133...
[ 2.720994] ata3.00: Enabling discard_zeroes_data [ 2.721024] sd 2:0:0:0: [sdb] 976773168 512-byte logical blocks: (500 GB/466 GiB) [ 2.721027] sd 2:0:0:0: [sdb] 4096-byte physical blocks [ 2.721195] sd 2:0:0:0: [sdb] Write Protect is off [ 2.721198] sd 2:0:0:0: [sdb] Mode Sense: 00 3a 00 00 [ 2.721251] sd 2:0:0:0: [sdb] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA [ 2.721517] ata3.00: Enabling discard_zeroes_data [ 2.722974] sdb: sdb1 [ 2.723334] ata3.00: Enabling discard_zeroes_dataPozději (při odpojení / připojení napájení) v dmesg už nic. Nabootoval jsem Ubuntu 16.04, chování je podobné, až na to, že po odpojení napájení zůstala rychlost stejná až do doby, než jsem laptop uspal a pak probudil - pak klesla. A nezvýšila se do té doby, než jsem laptop probudil s připojeným napájením (tedy připojení napájení za běhu nemělo vliv, laptop se musel uspat a zase probudit). Pokud je toto důležité, musím to zkusit znovu - už je to nějaká doba co jsem tohle zkoušel. Bios mám od nedávna neoficiální (bez whitelistu a s dostupným "Advanced" menu), jsou tam nějaké volby na SATA power management, bohužel jim nerozumím (Je tam v Advanced -> HDD Configuration položka "Aggressive Link Power, default Enabled, ale teď hledám a vidím, že to by mělo adaptér jen uspávat). Zkoušel jsem v nastavení "Power" změnit položky "on battery" z "balanced" na "maximum performance", to nemělo žádný vliv. Nějaké nápady, co s tím? Hádám, že řešení by mohlo být někde v /sys/bus/scsi/devices/ , ale moc do toho nevidím.
Řešení dotazu:
Je mi jasne, ze dalsim nastavovanim setreni niceho nedosahnu.
No jo, pamatoval jsem si, ze laptop-mode-tools je uz obsolete, ale nemohl jsem si vzpomenout, co jsem instaloval misto nich. TLP pouzivam, kouknu do jeho konfigurace.
A voila, problem je vyresen!
TLP nastavuje pres SMART parametr APM (advanced power management), pri provozu ze zdi na 254 (maximum performance), pri provozu na baterii na 128 (minimum power consumption without standby). Prepnul jsem ted pri provozu na baterii rucne na 254 (smartctl -s apm,254 /dev/sdb) a dosahuji stejne rychlosti, jako pri provozu s pripojenym AC.
Parada, diky za nakopnuti!
Pokud mate stejny promlem jako ja, rekapitulace: Problem s pomalym ctenim a zapisem na mSATA SSD byl zpusoben nastavenim SMART parametru APM (advanced power management) na nejnizsi hodnotu. To se zda byt default hodnota tlp, protoze si nepamatuju, ze bych do jeho konfiguraku zasahoval. Hodnotu je potreba zvysit. Zkousel jsem ruzne hodnoty, nejnizsi, pri ktere nedochazelo ke zpomaleni cteni, pro me bylo 243 (zapis jsem ted netestoval). Hodnotu je mozne zmenit docasne rucne pomoci smartctl -s apm,243 /dev/sdX, v nastaveni TLP (/etc/default/tlp) je to DISK_APM_LEVEL_ON_BAT="128 243" (128 pro sda, protoze tento disk nema s vykonem pri tomto nastaveni problem (mozna jej ignoruje...), 243 pro sdb), a restart tlp pomoci systemctl restart tlp.
Pocitam tedy, ze to je problem tohoto SSD (pripadne jeste pouze pokud je provozovan v SATA2 rezimu), a ne problem radice, a proto jsem taky nemohl nic o tomto problemu najit.
Dekuji vsem za podnety!
BTW na jednoduche benchmarky disku doporucuji nastroj Disks z Gnome (balicek gnome-disk-utility), ac uz gnome nepouzivam, tento nastroj se hodi. Vpravo nahore je hamburger menu (jak jinak...) -> Benchmark disk.
for i in /sys/class/scsi_host/host*; do echo "max_performance" > "$i"/link_power_management_policy ; doneje rychlost čtení/zápisu stále nízká. Neofiko bios jsem našel tady: http://x220.mcdonnelltech.com/resources/. Flashovací utilita dodávaná s ním je pro windows, nechtěl jsem nic riskovat, tak jsem nabootoval nějaké windows live cd (ano, měl jsem den stahování náhodných binárních blobů a jejich spouštění a flashování do hardwaru) a flashnul to z něj. Konečně mám 5 GHz pásmo na wifi.
00:1f.2 SATA controller: Intel Corporation 6 Series/C200 Series Chipset Family 6 port SATA AHCI Controller (rev 04) (prog-if 01 [AHCI 1.0])
Subsystem: Lenovo 6 Series/C200 Series Chipset Family 6 port SATA AHCI Controller
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
Status: Cap+ 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- < TAbort- < MAbort- >SERR- < PERR- INTx-
Latency: 0
Interrupt: pin B routed to IRQ 25
Region 0: I/O ports at 50a8 [size=8]
Region 1: I/O ports at 50bc [size=4]
Region 2: I/O ports at 50a0 [size=8]
Region 3: I/O ports at 50b8 [size=4]
Region 4: I/O ports at 5060 [size=32]
Region 5: Memory at f2528000 (32-bit, non-prefetchable) [size=2K]
Capabilities: [80] MSI: Enable+ Count=1/1 Maskable- 64bit-
Address: fee0200c Data: 41d1
Capabilities: [70] Power Management version 3
Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot+,D3cold-)
Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=0 PME-
Capabilities: [a8] SATA HBA v1.0 BAR4 Offset=00000004
Capabilities: [b0] PCI Advanced Features
AFCap: TP+ FLR+
AFCtrl: FLR-
AFStatus: TP-
Kernel driver in use: ahci
Kernel modules: ahci
Nicmene problem stale stejny.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.