GNU/Linux >> Znalost Linux >  >> Linux

Jak udělat Linux GUI použitelné, když se děje hodně diskové aktivity

Zkuste proces kopírování ionizovat nebo zkrášlit. Problém je způsoben tím, že IO má stejnou prioritu jako GUI, což u desktopu ovlivňuje vnímanou odezvu.

V současné době o tom probíhá brainstorming Ubuntu.


Linux má dlouhodobě problém s programy, které zabírají veškerou systémovou "špinavou" mezipaměť. Dochází k tomu, že proces kopírování plní mezipaměť zápisu daty souborů, která kopíruje, a dělá to velmi rychle. Takže když Firefox přijde a potřebuje zapisovat, musí nejprve počkat na špinavé místo ve vyrovnávací paměti nebo na volný slot pro zápis do fronty disku. Během čekání soutěží s procesem kopírování a vláknem pdflush jádra, které přesouvá data ze špinavých vyrovnávacích pamětí do fronty pro zápis na disk.

Firefox má v tomto scénáři ještě další problém. K ukládání záložek, historie a dalších věcí používá SQLite. SQLite je databáze kompatibilní s ACID a používá transakční systém se zápisy na disk vyprázdněnými na disk . Takže nejenže musí čekat na vyrovnávací paměť, ale musí čekat, až se disková fronta, která je plná zkopírovaných souborů, vyčistí, než bude moci potvrdit úspěšný zápis.

Bylo toho hodně ladění linuxového systému řazení disků a ukládání do vyrovnávací paměti. Změny jsou téměř v každém vydání jádra. Vyzkoušejte některou z novějších verzí. Můžete také zkusit vyladit hodnoty sysctl. Líbí se mi tyto:

vm.dirty_writeback_centisecs = 100
vm.dirty_expire_centisecs = 9000
vm.dirty_background_ratio = 4
vm.dirty_ratio = 80

Můžete také zkusit vyladit počet slotů ve frontě disku. Tato hodnota je v /sys/block/sda/queue/nr_requests . Musíte nahradit sda bez ohledu na to, jaký je váš pohon. Více slotů znamená více šancí na sloučení požadavků IO a plánovač CFQ IO může lépe pracovat s prioritami. Méně slotů obvykle znamená kratší dobu čekání na zápis na disk pro synchronní IO, jako jsou transakce SQLite. Méně slotů také znamená kratší dobu čekání na vstup načtení do diskové fronty, pokud proces náročný na zápis zcela naplní frontu vstupem do fronty pro zápis.


Linux
  1. Jak rozdělit disk v Linuxu

  2. Jak sledovat aktivitu uživatele v Linuxu

  3. Jak najít disk je SSD nebo HDD v Linuxu?

  1. Jak zkontrolovat místo na disku v Linuxu

  2. Linux – Zpomalit kopírování disku/disku?

  3. Jak nainstalovat VIM na Linux, když nemám oprávnění root?

  1. Jak odstranit oddíl v Linuxu

  2. Jak vytvořit oddíly v Linuxu

  3. Jak vytvořit server CS:GO na Linux VPS