Portál AbcLinuxu, 5. května 2025 10:40

Jaderné noviny – 3. 8. 2017

10. 9. 2017 | Redakce
Články - Jaderné noviny – 3. 8. 2017  

Stav vydání jádra. Email2git. Citáty týdne: Marc Zyngier, Rusty Russel a Avi Kivity. Přehledově: Přehodnocení heuristiky plánovače wake_wide() a Milník pro řídící skupiny.

Stav vydání jádra

Současné vývojové jádro je 4.13-rc3 vydané 30. července. Linus řekl: „rc2 bývá velmi klidné vydání, ale tenhle cyklus rc2 byl poměrně rušný, a tak jsem měl obavy, jestli se ve 4.13 neděje něco špatného. Ale ne, šlo jen o náhodné načasování a lidé začali posílat opravy dříve a tento vývojový cyklus se pro změnu jedná o malý rc3.“

Pro cyklus 4.13 se vrátilo sledování regresí, současný report ukazuje osm známých problémů. Za povšimnutí stojí, že Thorsten Leemhuis začal používat nový identifikační mechanismus, který by měl sledování zjednodušit.

Stabilní aktualizace: 4.12.4, 4.9.40, 4.4.79 a 3.18.63 byly vydány 27. července.

Email2git: Přiřazení linuxového kódu odpovídajícím diskuzím v poštovní konferenci (Linux.com)

Na Linux.com vyšel článek o email2git napsaný přímo jeho vývojářem Alexandrem Couroublem. Email2git představuje způsob, jak k sobě přiřadit commity a e-mailová vlákna, ve kterých se o nich diskutovalo. Aktuálně se zaměřuje na jádro a vlákna z poštovní konference linux-kernel. Dá se použít dvěma různými způsoby: jako rozšíření pro cregit (https://cregit.linuxsources.org/), které umožňuje procházení změn na úrovni tokenů, nebo prostřednictvím rozhraní na hledání ID commitu. „Proces revidování založený na e-mailu, který se používá v projektu Linux, je vysoce efektivní ve filtrování open-source příspěvků na jejich cestě z diskuzí poštovních konferencí směrem do gitového repozitáře Linuse Torvaldse. Ovšem jakmile dojde k integraci, může být cesta opačným směrem, tedy přiřazení commitů v Gitu příslušným revidujícím komentářům v poštovních konferencích, obtížná, zvláště pokud jde o commity, které prošly několika verzemi (a tedy několika koly revizí), které patří k řadě o více patchích, nebo které byly ručně vybrány. Jako odpověď na tyto a další problémy jsme vytvořili email2git, systém pro získávání patchů, sestavený pro linuxové jádro. Nástroj je schopen pro daný commit najít odpovídající e-mail s patchem, a také e-mailovou konverzaci, ke které došlo během procesu revidování. V současné době systém doplňujeme o podporu řady více patchů a explicitního výběru kódu z patche.“ Kód email2git je dostupný na GitHubu.

Citáty týdne

Chcete-li získat představu o návrhu, doporučil bych začít patchi #33 a #57, které se snaží vrhnout trochu světla na přístup, který jsem zvolil. Předtím prosím zkuste strávit něco z dokumentace architektury GICv3/GICv4 (méně než 800 stránek!). Jakmile se budete cítit přiměřeně šíleně, budete ve správné náladě na čtení kódu.

Marc Zyngier

Za posledních 15 let se stala zajímavá věc. Když vytáhnete telefon a podíváte se na webovou stránku, na stroji, který vám danou stránku poslal, pravděpodobně běží Linux. Z 500 nejrychlejších superpočítačů na světě 497 používá Linux. A Linux je srdcem Androidu ve více než miliardě telefonů. Místo abychom vyhráli na desktopech, vyhráli jsme všude jinde. A proto jsem minulý rok opustil své pohodlné zaměstnání ve velké firmě, kde jsem 12 let dělal na Linuxu, a začal jsem pracovat na plný úvazek v komunitě kolem Bitcoinu.

Rusty Russel

Gah, I'm so rusty, if I were any rustier I'd be doing bitcoin.

Avi Kivity

Přehodnocení heuristiky plánovače wake_wide()

Reconsidering the scheduler's wake_wide() heuristic. Matt Fleming. 27. července 2017

Jak by měl plánovač rozhodovat o rozložení procesů na [víceprocesorovém] stroji?

Různé typy zátěže si žádají různý přístup k plánování – v závislosti na tom, nakolik využívají paralelizace – a od toho se odvíjí využití procesoru, cache a také spotřeba energie. Je tedy žádoucí, aby plánovač vhodně shlukoval (pro lepší využití cache nebo úsporu energie), nebo naopak rozprostřel úlohy mezi procesory (pro lepší využití procesorů). Funkce wake_wide() plánovači poskytuje takovou heuristiku.

Stávající heuristika (z roku 2015) vznikla, aby uspokojila potřebu Facebooku minimalizovat latence ve vícevláknové aplikaci s modelem producent-konzument, kde nadřazené úlohy běží na uzlech NUMA a odpovídá jim řada podřazených úloh. Heuristika počítá probuzení úloh, aby odhadla, které úlohy jsou nadřazené a které podřazené. Pokud je podřazených méně než procesorů se společnou vysokoúrovňovou cache (last-level cache), měly by tyto úlohy zůstat pospolu. V opačném případě mohou být úlohy rozprostřeny napříč systémem a plánovač vybere procesor, který je ve stavu nejméně šetřícím energii, protože změna takového stavu přidává režii.

V současnosti probíhá debata, zda by heuristiku nešlo vylepšit, leč bez jasného výsledku.

Článek na Linux Weekly News.

Milník pro řídící skupiny

A milestone for control groups. Jonathan Corbet. 31. července 2017

Poslední části přepracovaného API řídících skupin jsou po pěti letech úsilí připraveny.

Nové rozhraní, které navrhl Tejun Heo, míří do vývojového cyklu 4.14. Oproti svému předchůdci navíc podporuje řídící skupiny vláken (threaded groups). V rámci možných rozšíření do budoucna se hovoří např. o režimu, který by umožnil přeskočit (bypass) některé úrovně v hierarchii řídících skupin, aby se omezila režie; tento podnět Waimana Longa ale zatím není hotový.

Článek na Linux Weekly News.

Odkazy a zdroje

LWN.net

Další články z této rubriky

Jaderné noviny – přehled za březen 2025
Jaderné noviny – přehled za únor 2025
Jaderné noviny – přehled za leden 2025
Jaderné noviny – přehled za prosinec 2024
Jaderné noviny – přehled za listopad 2024

Diskuse k tomuto článku

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.