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 23:44 | Komunita

Několik posledních verzí GNOME Shellu obsahuje chybu způsobující memory leak (únik paměti). Viz například videozáznamy verzí 3.26 nebo 3.28. Nalezení chyby #64 a její opravě se věnuje Georges Basile Stavracas Neto v příspěvku na svém blogu [reddit].

Ladislav Hagara | Komentářů: 0
včera 10:33 | Komunita

V pondělí měl na YouTube online premiéru otevřený krátký 2D film Hero vytvořený v 3D softwaru Blender. Cílem stejnojmenného projektu Hero je vylepšit nástroj Grease Pencil (tužka) v Blenderu 2.8.

Ladislav Hagara | Komentářů: 3
20.4. 23:22 | Nová verze

Byla vydána verze 4.0 kolekce svobodného softwaru umožňujícího nahrávání, konverzi a streamovaní digitálního zvuku a obrazu FFmpeg (Wikipedie). Přehled novinek v Changelogu (GitHub).

Ladislav Hagara | Komentářů: 0
20.4. 17:22 | Komunita

Včera vydanou hru Rise of the Tomb Raider pro Linux lze do pondělí 23. dubna koupit na Steamu s 67% slevou. Místo 49,99 € za 16,49 €.

Ladislav Hagara | Komentářů: 0
20.4. 16:11 | Komunita

Na Humble Bundle lze získat počítačovou hru Satellite Reign (Wikipedie, YouTube) běžící také v Linuxu zdarma. Speciální akce končí v sobotu v 19:00.

Ladislav Hagara | Komentářů: 5
20.4. 15:44 | Zajímavý software

Společnost Apple koupila před třemi lety společnost FoundationDB vyvíjející stejnojmenný NoSQL databázový systém FoundationDB (Wikipedie). Včera byl tento systém uvolněn jako open source pod licencí Apache 2.0. Zdrojové kódy jsou k dispozici na GitHubu.

Ladislav Hagara | Komentářů: 0
20.4. 15:00 | Nová verze

Po dva a půl roce od vydání verze 5.7 oznámila společnost Oracle vydání nové major verze 8.0 (8.0.11) databázového systému MySQL (Wikipedie). Přehled novinek v poznámkách k vydání. Zdrojové kódy komunitní verze MySQL jsou k dispozici na GitHubu.

Ladislav Hagara | Komentářů: 2
19.4. 14:44 | Pozvánky

Spolek OpenAlt zve příznivce otevřených technologií a otevřeného přístupu na 151. brněnský sraz, který proběhne v pátek 20. 4. od 18:00 hodin v restauraci Benjamin na Drobného 46.

Ladislav Hagara | Komentářů: 0
19.4. 13:33 | Nová verze

Byla vydána verze 18.04.0 KDE Aplikací (KDE Applications). Přehled novinek v kompletním seznamu změn a na stránce s dalšími informacemi.

Ladislav Hagara | Komentářů: 0
19.4. 13:11 | Nová verze

Bylo oznámeno vydání nové stabilní verze 1.26 a beta verze 1.27 open source textového editoru Atom (Wikipedie). Přehled novinek i s náhledy v příspěvku na blogu. Podrobnosti v poznámkách k vydání.

Ladislav Hagara | Komentářů: 0
Používáte na serverech port knocking?
 (3%)
 (7%)
 (46%)
 (27%)
 (17%)
Celkem 341 hlasů
 Komentářů: 29, poslední 5.4. 12:25
    Rozcestník

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

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

    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: 82 | 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: 35 | 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: 35 | 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.