abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
včera 13:00 | Komunita

Do 30. října se lze přihlásit do dalšího kola programu Outreachy (Wikipedie), jehož cílem je přitáhnout do světa svobodného a otevřeného softwaru lidi ze skupin, jež jsou ve světě svobodného a otevřeného softwaru málo zastoupeny. Za 3 měsíce práce, od 4. prosince 2018 do 4. března 2019, v participujících organizacích lze vydělat 5 500 USD.

Ladislav Hagara | Komentářů: 38
21.9. 22:22 | Komunita

Společnost Purism představila kryptografický token Librem Key. Koupit jej lze za 59 dolarů. Token byl vyvinut ve spolupráci se společností Nitrokey a poskytuje jak OpenPGP čipovou kartu, tak zabezpečení bootování notebooků Librem a také dalších notebooků s open source firmwarem Heads.

Ladislav Hagara | Komentářů: 8
21.9. 20:33 | Nová verze

Společnost NVIDIA oficiálně vydala verzi 10.0 toolkitu CUDA (Wikipedie) umožňujícího vývoj aplikací běžících na jejich grafických kartách. Přehled novinek v poznámkách k vydání.

Ladislav Hagara | Komentářů: 0
21.9. 20:00 | Upozornění

Příspěvek Jak přežít plánovanou údržbu DNS na blogu zaměstnanců CZ.NIC upozorňuje na historicky poprvé podepsání DNS root zóny novým klíčem dne 11. října 2018 v 18:00. Software, který nebude po tomto okamžiku obsahovat nový DNSSEC root klíč, nebude schopen resolvovat žádná data. Druhým důležitým datem je 1. února 2019, kdy významní výrobci DNS softwaru, také historicky poprvé, přestanou podporovat servery, které porušují DNS standard

… více »
Ladislav Hagara | Komentářů: 6
21.9. 15:55 | Pozvánky

Spolek OpenAlt zve příznivce otevřených řešení a přístupu na 156. brněnský sraz, který proběhne v pátek 21. září od 18:00 v restauraci Na Purkyňce na adrese Purkyňova 80.

Ladislav Hagara | Komentářů: 0
21.9. 13:22 | Nová verze

Alan Griffiths z Canonicalu oznámil vydání verze 1.0.0 display serveru Mir (GitHub, Wikipedie). Mir byl představen v březnu 2013 jako náhrada X serveru a alternativa k Waylandu. Dnes Mir běží nad Waylandem a cílen je na internet věcí (IoT).

Ladislav Hagara | Komentářů: 0
20.9. 22:00 | Nasazení Linuxu
Stabilní aktualizace Chrome OS 69 (resp. Chromium OS), konkrétně 69.0.3497.95, přináší mj. podporu linuxových aplikací. Implementována je pomocí virtualizace, a proto je tato funkce také omezena na zařízení s dostatkem paměti a podporou hardwarové akcelerace, tudíž nejsou podporovány chromebooky s 32bitovými architekturami ARM, či Intel Bay Trail (tzn. bez Intel VT-x).
Fluttershy, yay! | Komentářů: 5
20.9. 21:32 | Zajímavý projekt

Došlo k uvolnění linuxové distribuce CLIP OS, vyvíjené francouzským úřadem pro kybernetickou bezpečnost ANSSI, jako open source. Vznikla za účelem nasazení v úřadech, kde je potřeba omezit přístup k důvěrným datům. Je založená na Gentoo.

Fluttershy, yay! | Komentářů: 1
20.9. 16:00 | Komerce

Zjistěte více o bezpečné a flexibilní architektuře v cloudu! IBM Cloud poskytuje bezpečné úložiště pro Vaše obchodní data s možností škálovatelnosti a flexibilitou ukládání dat. Zároveň nabízí prostředky pro jejich analýzu, vizualizaci, reporting a podporu rozhodování.

… více »
Fluttershy, yay! | Komentářů: 12
20.9. 12:22 | Nová verze

V dubnu letošního roku Mozilla představila webový prohlížeč pro rozšířenou a virtuální realitu Firefox Reality (GitHub). V úterý oznámila vydání verze 1.0. Ukázka na YouTube. Firefox Reality je k dispozici pro Viveport, Oculus a Daydream.

Ladislav Hagara | Komentářů: 2
Na optické médium (CD, DVD, BD aj.) jsem naposledy vypaloval(a) data před méně než
 (13%)
 (14%)
 (21%)
 (23%)
 (25%)
 (4%)
 (1%)
Celkem 390 hlasů
 Komentářů: 33, poslední 16.9. 11:55
Rozcestník

Jaderné noviny – 5. 10. 2017: Vylepšení v blokové vrstvě

22. 10. 2017 | Redakce | Jaderné noviny | 2480×

Stav vývoje jádra. LTS vydání linuxového jádra nyní na 6 let. Vylepšení v blokové vrstvě.

Stav vydání jádra

Současné vývojové jádro bylo 4.14-rc3, vydané 1. října. Linus k tomu řekl: „Takže 4.14 je i nadále poněkud problémové vydání a já začínám aspoň zčásti vinit skutečnost, že se jedná o LTS vydání."

Seznam regresí z 1. října čítá čtyři známé regrese v jádře 4.14.

Stephen Rothwell oznámil, že v říjnu nebude pracovat na vydávání linux-next. Integrační testy znovu začnou až 31. října, takže by z toho mohl být patřičně halloweenský zážitek krátce před plánovaným vydáním 4.14.

Stabilní aktualizace: 4.13.4, 4.9.52, 4.4.89 a 3.18.72 byly vydány 28. září. Následovaly je 4.13.5, 4.9.53, 4.4.90 a 3.18.73, které byly v době psaní tohoto článku v procesu revidování a vyšly 5. října.

LTS vydání linuxového jádra nyní na 6 let (Ars Technica)

Ars Technica informuje o oznámení, že vydání jader s dlouhodobou podporou budou udržována po dobu šesti let namísto dvou. „Šestileté okno podpory poskytne Googlu, dodavatelům SoC a OEM spoustu času na vývoj zařízení a jeho uvedení na trh, přičemž koncovým uživatelům stále zbydou zhruba čtyři roky podpory. Google pro své telefony v současné době poskytuje dva roky velkých aktualizací operačního systému a tři roky bezpečnostních aktualizací, ale pokud by chtěl tuto podporu rozšířit, bylo by takové oznámení velmi důležitým prvním krokem.“ Stránka kernel.org nyní ukazuje, že jádro 4.4 bude udržované až do února 2022.

Vylepšení v blokové vrstvě

Improvements in the block layer. Tom Yates. 3. říjen 2017

Jens Axboe je správcem blokové vrstvy v jádře. Z této role mluvil na konferenci Kernel Recipes 2017 o tom, co je pro Linux nového ve světě úložišť. Zvláštní důraz věnoval novému subsystému více front blokové vrstvy: do jaké míry byl přijat, řada nedávno provedených optimalizací a trocha spekulací o tom, jak se bude zlepšovat v budoucnu.

V roce 2011 vydala společnost Intel linuxový ovladač NVM Express (nebo NVMe, kde NVM znamená Non-Volatile Memory Host Controller Interface), což byla její nová sběrnice pro přístup k SSD. Tento ovladač byl začleněn do hlavního repozitáře jádra v roce 2012, poprvé se objevil ve vydání 3.3. Umožňoval novým, rychlým SSD zařízením možnost běžet plnou rychlostí, ale nedošlo k žádnému zlepšení v případě, že blokový subsystém tyto disky stále pokládal za klasické pevné disky. Byla tedy vyvinuta nová, škálovatelná bloková vrstva, známá jako blk-mq (block multique), která měla lépe využívat výhod těchto rychlých zařízení. K jejímu začlenění došlo k vydání 3.13 v roce 2014. Byla představena s vizí, že všechny staré ovladače budou časem portovány na blk-mq. Tento proces stále pokračuje, ačkoliv většina běžných blokových úložných zařízení již byla úspěšně portována. Axboe se tedy nejprve zaměřil na aktuální stav tohoto procesu.

Některé staré, vynikající ovladače flash byly nedávno převedeny, stejně jako NBD, ovladač síťového blokového zařízení. Mechanismus scsi-mq, který umožňuje SCSI ovladačům používat blk-mq, je jako možnost součástí jádra již nějaký čas, ale Axboe jej nedávno nastavil jako výchozí. Tato změna musela být vrácena z bezpečnostních a výkonnostních důvodů, které se jejím zavedením objevily u rotačních disků. Axboe se domnívá, že se tyto problémy povedlo do značné míry vyřešit, a doufá, že se scsi-mq vrátí brzy do výchozího nastavení.

Staré ovladače cciss nyní přešly na SCSI, což potěší každého, kdo musel pracovat s řadiči HP Smart Array. Těší to také Axboeho, protože to znamená, že cciss bude implicitně převeden na blk-mq v okamžiku, kdy se scsi-mq stane výchozí. Ke konverzi tak zůstává asi 15 ovladačů – práce budou pokračovat až do konce, což by se podle Axboea mohlo podařit převedením (úsměvně) floppy.c – za kterou je ochoten udělit menší odměnu.

Nedávno přidané stěžejní funkce se týkají plánování I/O, protože jeho absence byla jedním z hlavních zdrojů odporu při převodu ovladačů na nový vícefrontový framework. Různá rozhodnutí při návrhu, která byla v blk-mq učiněna dříve, učinila práci složitější, než bylo nutné, ale navzdory tomu byl blk-mq-sched přidán v cyklu 4.11 (zpočátku) se dvěma přístupy k plánování: žádným a mq-deadline. První nijak nemění výchozí chování, které Axboe popisuje jako „zhruba FIFO“, a druhý je vlastně reimplementací starého plánovače deadline. V cyklu 4.12 přibyly další dva: Budget Fair Queuing (BFQ), což je plánovač založený na CFQ, který existuje již mnoho let, leč nebyl nikdy integrován do jádra, a Kyber, plnohodnotný vícefrontový plánovač, který podporuje záležitosti jako férovost mezi čtenáři a písaři.

Další novou funkcí je škrcení zpětného zápisu (writeback throttling). Jedná se o pokus lépe řešit pravidelnou snahu jádra zapisovat špinavé stránky na disk (nebo libovolné jiné odpovídající úložiště), což v současné době způsobuje velké zatížení páteře I/O, které Axboe přirovnal k Homeru Simpsonovi, který konzumuje souvislý, avšak nerovnoměrný proud koblih. Při škrcení zpětného zápisu se blk-mq snaží dosáhnout maximálního výkonu bez nadměrné I/O latence pomocí strategie, kterou si půjčilo ze síťového plánovače CoDel: CoDel sleduje pozorovanou minimální latenci síťových paketů a pokud překročí prahovou hodnotu, začne pakety zahazovat. Na zahazování zápisů se v subsystému I/O pohlíží s nevolí, ale podobná strategie se řídí tím, že jádro sleduje minimální latenci jak čtení, tak zápisu, a pokud ta překročí prahovou hodnotu, začne snižovat množství zápisů na pozadí. Toto chování bylo přidáno pro vydání 4.10 a Axboe řekl, že vykazuje docela dobré výsledky.

Tato práce vychází ze stížností vývojářů Facebooku, kteří zaznamenali vysoké latence při aktualizaci obrazů. Aby to Axboe kvantifikoval, vytvořil test zpětného zápisu: dva balíčky RPM, které je možné instalovat do systému, z toho jeden vytvoří mnoho malých souborů, druhý malý počet velkých, přičemž myšlenkou je, že se monitoruje výkonnost služeb při instalaci těchto balíčků. V kontextu malé, ale předvídatelné služby (testovací aplikace zvané io.go) Axboe viděl (na SSD i rotačních úložištích) maximální časy požadavků, které se s použitím škrcení zpětných zápisů snížily o faktor deseti. Nejhorší případ na rotačním úložišti se škrcením byl I/O požadavek, který potřeboval 478 ms k dokončení, zatímco bez použití škrcení trval ten stejný případ 6,5 sekundy.

Dalším zlepšením je I/O polling. Tradičně, pokud chce aplikace vykonat I/O, přejde vykonání požadavku do jaderného prostoru a dále do ovladače zařízení a potom zatímco čeká na dokončení vykonávání požadavku, buď pokračuje něčím jiným, nebo se uspí. Dokončení je oznámeno přerušením, přijetí oznámení o dokončení probudí aplikaci, aby se opět pustila do svého úkolu. Je pravděpodobné, že během fáze spánku v případě nepřetíženého systému se procesor, na kterém běžela spící aplikace, také odebere ke spánku a režie spojená se spánkem a následným probuzením se bude významně podílet na celkovém času nutném dokončení úlohy. Takže strategií, která má předcházet této zvýšené režii, je nepřetržitý polling ze strany jaderného kódu: předá I/O požadavek hardwaru a okamžitě se začne opakovaně ptát, zda už skončil – chování, které bude známo každému rodiči malých dětí při cestách autem. Tím se dají minimalizovat náklady na spánek a probouzení, ale plýtvá se výkonem CPU k pollingu – má to dopad také na spotřebu. Střední cesta by v tomto případě byla žádoucí.

Axboe a další, kdo pracují na tomto subsystému, přišli s řešením, kterému říkají hybridní polling. To se opírá o skutečnost, že rychlá zařízení mají také tendenci být deterministická. Při hybridním pollingu jádro sleduje doby dokončení I/O požadavků v závislosti na jejich velikosti. Potom, jakmile jádro odešle daný I/O požadavek hardwaru, nastaví časovač na polovinu střední doby potřebné k dokončení žádostí srovnatelné velikosti. To probudí aplikaci (běžící uvnitř jádra), zatímco je pravděpodobné, že požadavek ještě nebyl dokončen, a přepne na nepřetržitý polling, aby se na dokončení žádosti přišlo co nejdříve. Tím by se měla snížit cena průběžného pollingu na polovinu, zatímco většina ceny probuzení je splacena před dokončením I/O požadavku, takže nedojde ke zvýšení latence.

V Axboových testech měla tato strategie za následek latence nerozeznatelné od nepřetržitého pollingu. Pro ty, kdo by chtěli toto chování nastavit, jsou připravena dvě nová systémová volání pwritev2() a preadv2() (je třeba nastavit určité příznaky). K dispozici jsou také přidružené ovládací prvky sysfs: io_poll, který povoluje nebo zakazuje příslušné chování, a io_poll_delay, který má ve výchozím nastavení hodnotu -1, tedy žádný polling. Je-li tato hodnota nastavena na nulu, použije se hybridní polling podle popisu. Je-li nastavena na kladnou hodnotu, nastaví se specifická latence (v mikrosekundách). Nadšení ladiči by si měli být vědomi toho, že Axboovy testy ukazují, že je velmi těžké porazit hybridní strategii a že je velmi snadné výsledky zhoršit. Nejen vůči hybridnímu polling, ale dokonce i výkonu tradičního řešení založeného na přerušeních.

Vylepšená manipulace s přímým I/O (tj. O_DIRECT), která zpracovává velké a malé požadavky odlišně, a odpovídající vylepšení v fs/iomap.c snížily celkový čas I/O o dalších 6 %. Toto vylepšení se dostalo do vydání 4.10. Subsystém „účetnictví“ I/O používá podle pozorování 1-2 % CPU, což je na subsystém, který pouze sleduje výkon, velká provozní režie. Změny začleněné do vydání 4.14, které byly díky návrhu blk-mq snadné, snížily tyto náklady velmi významně.

Byla přidána také podpora informací o životnosti zápisu, což je funkce představená na hardwarové úrovni v NVMe 1.3. Umožňuje řadiči flash zařízení zjistit očekávanou životnost dat, která jsou ve frontě k zápisu. Flash zařízení seskupují zápisy do struktur známých jako mazací bloky (erase blocks), které mohou mít v moderních zařízeních velikost i několika gigabajtů. Pokud je později zápis zneplatněn přepisem odeslaným z aplikace, musí být mazací blok, ve kterém se zápis nacházel, interně zkopírován do nového upraveného, což je nákladné. Pokud řadič zařízení zná očekávanou životnost dat, může vylepšit svůj vlastní výkon vytvořením mazacích bloků zápisů, u kterých se očekává, že budou mít podobnou životnost, takže bude možné je zrušit všechny společně. Současná podpora jádra umožňuje poskytovat náznaky životnosti v kategoriích short, medium, long a extreme, ačkoliv tyto velikosti nemají absolutní hodnoty, proto se počítá, že se budou mezi aplikacemi lišit. Nicméně se těmito změnami podařilo – v kontextu pracovní zatíže databází – omezit fyzické zápisy na úložné zařízení o 25-30 %, což Axboe po právu označuje jako „ohromné“, a navíc je doprovází odpovídající zlepšení latence.

Axboe uzavřel svou řeč tím, že ukázal svůj seznam žádoucích zlepšení od roku 2015, a (za potlesku) poznamenal, že se povedlo dosáhnout všech z nich. Jeho seznam na rok 2017 je tudíž mnohem kratší: determinismus I/O a zlepšení efektivity. První bod představuje způsob, jak dané aplikaci garantovat latenci I/O, a vyhnout se tak problémům s „hlučným sousedem“, kdy dvě aplikace používají stejné úložné zařízení a I/O jedné aplikace nadměrně snižuje výkon té druhé. Druhý bod představuje sázku na jistotu, jde totiž o dost široké pole a historie naznačuje, že příští rok něco, co pod to spadne, vymyslí.

Pokud nepoužíváte počítač, který si nikdy nepamatuje, co dělá, potom vy osobně máte zájem o I/O subsystém. Takové zprávy jsou v tom případě dobrou zprávou pro nás pro všechny.

       

Hodnocení: 50 %

        špatnédobré        

Nástroje: Tisk bez diskuse

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

Komentáře

Vložit další komentář

22.10.2017 19:48 huehuehue
Rozbalit Rozbalit vše Re: Jaderné noviny – 5. 10. 2017: Vylepšení v blokové vrstvě
"zahazování písařů"... WTF :D
Fluttershy, yay! avatar 22.10.2017 20:14 Fluttershy, yay! | skóre: 83 | blog:
Rozbalit Rozbalit vše Re: Jaderné noviny – 5. 10. 2017: Vylepšení v blokové vrstvě
Šmankote, to jsem myslel, že jsem v překladu opravil. „Zápisů“, samozřejmě. Mea culpa.
23.10.2017 22:22
Rozbalit Rozbalit vše Re: Jaderné noviny – 5. 10. 2017: Vylepšení v blokové vrstvě
skrytý komentář Náš administrátor shledal tento komentář závadným.

off topic (kindrporno v systemd)

Zobrazit komentář
24.10.2017 10:16 pc2005 | skóre: 36 | blog: GardenOfEdenConfiguration | liberec
Rozbalit Rozbalit vše Re: Jaderné noviny – 5. 10. 2017: Vylepšení v blokové vrstvě
Staré ovladače cciss nyní přešly na SCSI, což potěší každého, kdo musel pracovat s řadiči HP Smart Array.
Hele tenhle řadič možná mám. Je vtipnej tím, že nenabootuje na stroji novějším než athlonXP (tedy například c2d z 2006).
24.10.2017 21:04 R
Rozbalit Rozbalit vše Re: Jaderné noviny – 5. 10. 2017: Vylepšení v blokové vrstvě
Radice, ktore pouzivaju tento driver, sa robili dost dlho. Videl som ich v nejakom serveri s Opteronmi.
25.10.2017 11:55 pc2005 | skóre: 36 | blog: GardenOfEdenConfiguration | liberec
Rozbalit Rozbalit vše Re: Jaderné noviny – 5. 10. 2017: Vylepšení v blokové vrstvě
Aha tak ne, já mám ještě Compaq Smart Array, nejspíš z toho vzniklo HP smart array po tom co byl compaq koupenej HP. Driver je ale podle všeho cpqarray.

Založit nové vláknoNahoru

ISSN 1214-1267   www.czech-server.cz
© 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.