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:33 | Nová verze

    Společnost comma.ai po třech letech od vydání verze 0.9 vydala novou verzi 0.10 open source pokročilého asistenčního systému pro řidiče openpilot (Wikipedie). Zdrojové kódy jsou k dispozici na GitHubu.

    Ladislav Hagara | Komentářů: 0
    včera 21:55 | Nová verze Ladislav Hagara | Komentářů: 0
    včera 14:11 | IT novinky

    Řada vestavěných počítačových desek a vývojových platforem NVIDIA Jetson se rozrostla o NVIDIA Jetson Thor. Ve srovnání se svým předchůdcem NVIDIA Jetson Orin nabízí 7,5krát vyšší výpočetní výkon umělé inteligence a 3,5krát vyšší energetickou účinnost. Softwarový stack NVIDIA JetPack 7 je založen na Ubuntu 24.04 LTS.

    Ladislav Hagara | Komentářů: 2
    včera 00:44 | Bezpečnostní upozornění

    Národní úřad pro kybernetickou a informační bezpečnost (NÚKIB) spolu s NSA a dalšími americkými úřady upozorňuje (en) na čínského aktéra Salt Typhoon, který kompromituje sítě po celém světě.

    Ladislav Hagara | Komentářů: 20
    27.8. 16:33 | IT novinky

    Společnost Framework Computer představila (YouTube) nový výkonnější Framework Laptop 16. Rozhodnou se lze například pro procesor Ryzen AI 9 HX 370 a grafickou kartu NVIDIA GeForce RTX 5070.

    Ladislav Hagara | Komentářů: 1
    27.8. 14:22 | IT novinky

    Google oznamuje, že na „certifikovaných“ zařízeních s Androidem omezí instalaci aplikací (včetně „sideloadingu“) tak, že bude vyžadovat, aby aplikace byly podepsány centrálně registrovanými vývojáři s ověřenou identitou. Tato politika bude implementována během roku 2026 ve vybraných zemích (jihovýchodní Asie, Brazílie) a od roku 2027 celosvětově.

    Fluttershy, yay! | Komentářů: 7
    27.8. 13:11 | Nová verze

    Byla vydána nová verze 21.1.0, tj. první stabilní verze z nové řady 21.1.x, překladačové infrastruktury LLVM (Wikipedie). Přehled novinek v poznámkách k vydání: LLVM, Clang, LLD, Extra Clang Tools a Libc++.

    Ladislav Hagara | Komentářů: 0
    27.8. 05:11 | Komunita

    Alyssa Anne Rosenzweig v příspěvku na svém blogu oznámila, že opustila Asahi Linux a nastoupila do Intelu. Místo Apple M1 a M2 se bude věnovat architektuře Intel Xe-HPG.

    Ladislav Hagara | Komentářů: 17
    26.8. 12:55 | IT novinky

    EU chce (pořád) skenovat soukromé zprávy a fotografie. Návrh "Chat Control" by nařídil skenování všech soukromých digitálních komunikací, včetně šifrovaných zpráv a fotografií.

    Ladislav Hagara | Komentářů: 65
    26.8. 12:11 | Nová verze

    Byly publikovány fotografie a všechny videozáznamy z Python konference PyCon US 2025 proběhlé v květnu.

    Ladislav Hagara | Komentářů: 0
    Pro otevření více webových stránek ve webovém prohlížečí používám
     (79%)
     (9%)
     (3%)
     (4%)
     (5%)
     (1%)
    Celkem 104 hlasů
     Komentářů: 9, poslední včera 11:53
    Rozcestník

    Jaderné noviny – 18. 8. 2016: Případ pozdržené kontroly CPU

    28. 8. 2016 | Redakce | Jaderné noviny | 2586×

    Stav vydání jádra. Citáty týdne: Linus Torvalds, Konstantin Ryabitsev, Lara Abbott. Případ pozdržené kontroly CPU.

    Stav vývoje jádra

    Současný vývojový kernel je 4.8-rc2 vydaný 14. srpna. Linus k tomu řekl: „Vypadá to, že se neděje nic divného, takže prosím testujte a hlaste jakékoli chyby, na které narazíte. Očividně jsme na počátku řady rc vydání, ale nemyslím si, že v začleňovacím okně bylo něco znepokojivého, takže se nestyďte.“

    Co se týče známých regresích ve vydání 4.8, viz tento report.

    Stabilní aktualizace: 4.7.1, 4.6.7, 4.4.18 a 3.14.76 byly vydány 16. srpna. Řada 4.6.x verzí 4.6.7 končí.

    Citáty týdne

    Přiznejme si to, s uživatelskými programy, které dělají divné a nepříliš efektivní věci, se do budoucna musí počítat. Šílených uživatelských programů se nikdy nezbavíme, takže bychom mohli opravit problémy s výkonem i v situacích, kdy se nedá říct nic jiného než, že „to je hovadina.“

    -Linus Torvalds

    [I] když vám někdo na bugzilla.kernel.org řekne, abyste něco provedli se svým jádrem, ještě to neznamená, že ten člověk ví, co dělá.

    -Konstantin Ryabitsev

    Ráda bych rozptýlila tuto představu jednou pro vždy. Pro práci na jádře nepotřebujete mít extra talent, pokud jako talent nepočítáte vytrvalost a trpělivost. Práce v nízkoúrovňovém Céčku má své zvláštnosti stejně jako jiné jazyky. Šablony v C++ mě děsí a typový systém (resp. jeho absence) v JavaScriptu mě mate. Dovednosti potřebné k práci na jádře se můžete naučit.

    -Laura Abbott

    Případ pozdržené kontroly CPU

    Dlouhotrvající technické neshody nejsou v jaderné komunitě ničím novým. Obvykle se je nakonec podaří vyřešit a zúčastnění vývojáři se mohou přesunout k novým problémům. Jenže občas může protahovaný status quo vést k rozkolu mezi jádrem a komunitou uživatelů. Probíhající spor ohledně ovladače CPU v nové hierarchii kontrolních skupin začíná vypadat jako jeden z těchto nepříjemných případů.

    Kontrolní skupiny (cgroups) jádro podporuje již téměř deset let. Poskytují mechanismus, který umožňuje hierarchické seskupování procesů a následně jejich regulaci. Netrvalo dlouho a uživatelé si společně s vývojáři po zavedení kontrolních skupin začali uvědomovat, že jejich návrh má jisté zásadní vady. Diskuze o jejich nápravě nabyla na vážnosti začátkem roku 2012. Vedla k popisu druhé verze API kontrolních skupin a začátku procesu, který měl vést k přechodu na toto API. Aktuálně je přechod na druhou verzi API téměř hotov – zbývá jediná nápadná výjimka, a to kontrola CPU.

    Kontrola CPU, jak ze jména samotného zřejmé, řídí přístup k CPU. Umožňuje různým skupinám procesů alokovat konkrétní kvanta procesorového času a zároveň jim brání v tom, aby si navzájem překážely. Nízkoúrovňový kód kontroly CPU může bez problému nové API podporovat, ale vývojáři plánovače prozatím zabránili začlenění API samotného. Nyní tak kontrola CPU zůstává nejvýznamnějším modulem bez podpory druhé verze rozhraní. Ve snaze postrčit věci kupředu (a říct, co se stane, když k posunu nedojde) zveřejnil správce cgroup Tehun Heo podrobné shrnutí situace tak, jak ji vidí on. Pro ty, kdo o toto téma mají zájem, se jedná o zajímavý dokument k přečtení.

    Námitky proti kontrole CPU

    Stručně řečeno, vývojáři plánovače proti novému API protestují ze dvou důvodů, které mají původ v zažitém nesouladu mezi jejich představou o principech kontroly CPU a API samotným. Oba důvody se vztahují k základním rozhodnutím v návrhu druhé verze API kontrolních skupin.

    V původní implementaci kontrolních skupin je možné vložit každé jednotlivé vlákno (proces jich může obsahovat spoustu) do samostatné kontrolní skupiny. Druhá verze API místo toho vyžaduje, aby byla všechna vlákna jednoho procesu ve stejné skupině. V některých jiných případech oddělení vláken nedává velký smysl; týká se to např. kontroly využití paměti, jelikož vlákna jednoho procesu z principu paměť sdílejí, tudíž by jejich oddělení pozbývalo významu. Pro přiřazení různých politik využití CPU různým vláknům ovšem existují rozumné důvody, leč jednotná hierarchie, která je základním aspektem návrhu druhé verze API, vyžaduje, aby všechny kontrolní moduly viděly stejné uspořádání kontrolních skupin. Takže z pohledu kontroly CPU musí být všechna vlákna ve stejné kontrolní skupině.

    Podle všeho je tento požadavek z pohledu vývojářů plánovače principiálně špatný. Nic přímo v plánovači nerozezná abstrakci „procesu“ – na této úrovni je vše vláknem. Aplikace „hrubší“ politiky na úrovni kontrolních skupin z jejich pohledu ubírá důležitou míru flexibility a nepřináší podle nich žádné výhody.

    Jsou uživatelé, kteří chtějí mít možnost aplikovat různé politiky na různá vlákna. Správa poolu vláken (thread pool) je jedním z často jmenovaných případů užití. Avšak Heo stojí za rozhodnutím podle návrhu; také si myslí, že by se stejné rozhraní nemělo používat pro úroveň správce a v rámci dílčích procesů. Navrhl mechanismus, který nazval skupiny zdrojů (resource groups) pro použití uvnitř procesů. Zatím se nesetkal s velkým ohlasem.

    Další věc, která se vývojářům plánovače na druhé verzi API nelíbí, je ta, že kontrolní skupina může obsahovat buď další kontrolní skupiny, nebo procesy – nikoli obojí. Procesy se v hierarchii kontrolních skupin mohou objevit pouze na samém konci jako listy. Opět platí, že toto rozhodnutí bylo přijato s cílem usnadnit podporu kontroly věcí jiných než CPU. Pokud se podskupiny a procesy ocitnou ve stejné skupině, pak tyto dva typy objektů musí soupeřit o stejný zdroj. V případě CPU se dá toto soupeření jednoduše spravovat. Když je „naplánována“ kontrolní skupina, plánovač se rekurzivně vrátí do skupiny a vybere z ní jeden z objektů ke spuštění. Jiné kontrolní mechanismy ovšem s procesy a podskupinami podobným způsobem pracovat nedovedou.

    Hlavní námitka se týká toho, že toto omezení ničí některá elegantní řešení návrhu plánovače CPU. Rozhodnutí při plánování jsou aplikována na „plánované entity“, což mohou být jak procesy, tak skupiny – plánovač se nemusí starat, co je co. Nová verze API některé kontrolní politiky znesnadňuje, ba až znemožňuje. To však podle Hea nemusí příliš vadit:

    Nicméně není jasné, jaké by bylo praktické využití rozložení s přímou konkurencí mezi úkoly a kontrolními skupinami, když uvážíme, že počet a chování úkolů si ovládají aplikace samotné, zatímco kontrolní skupiny se primárně zabývají přerozdělováním zdrojů na úrovni systému. Změny v počtu aktivních vláken by přímo ovlivnily distribuci zdrojů. Během diskuzí se nepodařilo přijít na příklady z praxe, ve kterých by takové rozložení našlo využití.

    V souhrnu lze konstatovat, říká Heo, že pro rozhodnutí ohledně druhé verze API existují solidní důvody. Většina věci funguje tak, jak jsou, a přidání nové funkce, jako jsou skupiny zdrojů, může vyplnit zbývající mezeru. Pokud někdo stále nemůže pracovat s druhou verzí API, první verze bude udržována, dokud bude mít uživatele. Přechod je téměř kompletní: nechybí nízkoúrovňová podpora, jen zbývá začlenit kód na úrovni API, aby kontrola CPU mohla pracovat v jednotné hierarchii nové verze. Tento kód však byl zablokován a zdá se, že není cesty vpřed.

    Co teď

    Heo zjevně doufá, že se znovuotevřením diskuze podaří dojít k jejímu závěru a připravit cestu pro začlenění zbývajících patchů. Prozatím to ale na brzký konec nevypadá. Pokud se k řešení nedospěje tímto způsobem, chystá se Heo zpřístupnit svou funkcionalitu uživatelům jinak.

    Jednou z možností je udržovat potřebné patche tak, že kdokoli, kdo bude chtít kontrolu CPU s druhou verzí API, si je bude moci snadno přidat do svého jádra. Přestože to zatím nikdo neřekl explicitně, je zjevné, že Heo doufá, že distributoři tyto patche zahrnou, aby byly uživatelům k dispozici. Tento přístup byl použit k vyřešení podobných záseků i v minulosti. Je-li patch široce aplikován distributory a využíván, nastává okamžik, kdy nemá smysl bránit mu ve vstupu do upstreamu. Tyto úvahy přivedly do upstreamu mimo jiné také Android.

    Další věcí, kterou je třeba zajistit, je, aby nejrozšířenější nasazení kontrolních skupin – systemd – mohlo novou verzi API používat. Proto zveřejnil žádost o začlenění přidání této funkcionality do systemd se slovy: „Tento commit implementuje podporu systemd kontroly CPU v jednotné hierarchii, takže uživatelé, kteří se rozhodnou nasadit podporu pro druhou verzi kontroly CPU kontrolními skupinami, ji mohou jednoduše využívat.“ Tento kód byl začleněn do upstreamu systemd 14. srpna.

    Tento krok vyvolal mírné neshody v komunitě systemd, jelikož tam je zvykem, že funkcionalita je dříve v „upstreamu“, než se [do systemd] začlení kód, který ji začne využívat. Ačkoliv, nutno podotknout, že většina protestů v tomto případě přichází od jediného hlučného vývojáře. Lennart Poettering tento krok bránil s tím, že vývojáři systemd chtějí, aby se funkce dostala do rukou uživatelů, a že doufá v začlenění jaderných patchů do Fedory. Greg Kroah-Hartman poznamenal, že se nejedná o první případ, kdy byla přidána podpora nezačleněné funkcionality, a že se tak často děje z dobrých důvodů:

    Někdy je třeba přidat kód k projektům, aby bylo možné kód jádra pořádně otestovat. A aby lidé mohli snáze upgradovat svá jádra v budoucnu a aby vše správně fungovalo na jejich stávajících, starších, systémových nástrojích. Tohle se děje pořád, nechápu, proč jste tím najednou tak překvapeni.

    Takhle nějak to vypadalo v době psaní tohoto článku. Předvídání může být nebezpečné, hlavně když jde o budoucnost, ale v tomto případě to vypadá, že se jaderné patche skutečně do různých distribučních jader dostanou. Díky nim bude druhá verze API používanější a protože většina distributorů již používá systemd, je jeden z významných uživatelů připraven API využít. Tlak ze strany uživatelské komunity je sice takovým tupým nástrojem, který by však v tomto případě mohl zaseknutým patchům pomoci.

           

    Hodnocení: 100 %

            š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ář

    28.8.2016 23:18 Fox
    Rozbalit Rozbalit vše Re: Jaderné noviny – 18. 8. 2016: Případ pozdržené kontroly CPU
    Control neni kontrola...
    Fluttershy, yay! avatar 28.8.2016 23:26 Fluttershy, yay! | skóre: 93 | blog:
    Rozbalit Rozbalit vše Re: Jaderné noviny – 18. 8. 2016: Případ pozdržené kontroly CPU
    Pokud je mi známo, kontrolní skupiny jsou zavedený překlad a zde o kontrolu ve stejném slova smyslu jde.
    🇵🇸Touch grass🇺🇦 ✊ ani boha, ani pána
    29.8.2016 11:46 trekker.dk | skóre: 72
    Rozbalit Rozbalit vše Re: Jaderné noviny – 18. 8. 2016: Případ pozdržené kontroly CPU
    Pokud zavedený překlad v tomto kontextu znamená to, co zde bylo zavedeno dříve, tak zavedený překlad za posledních přinejmenším 6 let jsou řídící skupiny. UTFG, pokud mi nevěříte.
    Quando omni flunkus moritati
    Josef Kufner avatar 29.8.2016 12:39 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Jaderné noviny – 18. 8. 2016: Případ pozdržené kontroly CPU
    Řídicí, nikoliv řídící. Jsou to skupiny určené k řízení, nikoliv skupiný, které právě něco řídí. Tedy pokud je o nich jednáno v obecné rovině.
    Hello world ! Segmentation fault (core dumped)
    Fluttershy, yay! avatar 29.8.2016 12:43 Fluttershy, yay! | skóre: 93 | blog:
    Rozbalit Rozbalit vše Re: Jaderné noviny – 18. 8. 2016: Případ pozdržené kontroly CPU
    UTFG proběhlo a kontrolní skupiny se vyskytly tady, na Rootu i jinde (zadání diplomek, školení) o poznání dříve.

    Co se týče jazykozpytné diskuze, viz komentáře na Rootu.
    🇵🇸Touch grass🇺🇦 ✊ ani boha, ani pána
    29.8.2016 14:03 trekker.dk | skóre: 72
    Rozbalit Rozbalit vše Re: Jaderné noviny – 18. 8. 2016: Případ pozdržené kontroly CPU
    Ano, vyskytly se tady, ale v jaderných novinách byl ustálený překlad řídicí skupiny. Mimo jiné i proto - a v tom blogu na rootu se to píše podobně - že kontrolní (kontrolovat) má jako prvotní význam "ověřit (jak něco dopadlo)"
    Quando omni flunkus moritati
    Fluttershy, yay! avatar 29.8.2016 14:20 Fluttershy, yay! | skóre: 93 | blog:
    Rozbalit Rozbalit vše Re: Jaderné noviny – 18. 8. 2016: Případ pozdržené kontroly CPU
    jako prvotní význam "ověřit (jak něco dopadlo)"

    Těžký život inženýra.

    Navíc všechny slovníky, které mám při ruce, v prvé řadě hovoří o dozoru či dohledu.

    🇵🇸Touch grass🇺🇦 ✊ ani boha, ani pána
    29.8.2016 14:34 trekker.dk | skóre: 72
    Rozbalit Rozbalit vše Re: Jaderné noviny – 18. 8. 2016: Případ pozdržené kontroly CPU
    Njn, ne všichni mají žaludek na to věčně studovat nesmysly, vyhýbat se práci a nechat si to platit od jiných.
    Quando omni flunkus moritati
    Fluttershy, yay! avatar 29.8.2016 15:08 Fluttershy, yay! | skóre: 93 | blog:
    Rozbalit Rozbalit vše Re: Jaderné noviny – 18. 8. 2016: Případ pozdržené kontroly CPU
    To eskalovalo rychle.
    🇵🇸Touch grass🇺🇦 ✊ ani boha, ani pána
    29.8.2016 17:54 citanus | skóre: 12 | Cork (Ireland)
    Rozbalit Rozbalit vše Re: Jaderné noviny – 18. 8. 2016: Případ pozdržené kontroly CPU

    Kdyz uz se to musi prekladat, tak se taky primlouvam za ridici skupiny

    2.9.2016 12:47 prcek
    Rozbalit Rozbalit vše Re: Jaderné noviny – 18. 8. 2016: Případ pozdržené kontroly CPU
    +1
    29.8.2016 19:00 win.net | skóre: 23
    Rozbalit Rozbalit vše Re: Jaderné noviny – 18. 8. 2016: Případ pozdržené kontroly CPU
    Jen bych upozornil na chybku: "Netrvalo dlouho a uživatelé si společně s vývojáři vývojáři po zavedení kontrolních skupin" Jednou by ti vývojáři mohli stačit ;-)

    O
    Chi um nens la-kuu
    Fluttershy, yay! avatar 29.8.2016 19:01 Fluttershy, yay! | skóre: 93 | blog:
    Rozbalit Rozbalit vše Re: Jaderné noviny – 18. 8. 2016: Případ pozdržené kontroly CPU
    Díky, opraveno.
    🇵🇸Touch grass🇺🇦 ✊ ani boha, ani pána
    30.8.2016 11:38 Xerces
    Rozbalit Rozbalit vše Re: Jaderné noviny – 18. 8. 2016: Případ pozdržené kontroly CPU
    Na můj vkus je v článku o jádru příliš často použito slovo systemd a Android, ale každopádně díky za překlad.

    Založit nové vláknoNahoru

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