Kategórie
Všeobecné

Operačné systémy v multiprocesorových klastroch

10. novembra 2021 sa uskutočnila už štvrtá prednáška série Superpočítanie vo vede. Tentokrát sme privítali Dr. Dušana Bernáta z Fakulty matematiky, fyziky a informatiky Univerzity Komenského so zaujímavou prednáškou na tému Operačné systémy v multiprocesorových klastroch.

Operačné systémy v multiprocesorových klastroch

10. novembra 2021 sa uskutočnila už štvrtá prednáška série Superpočítanie vo vede. Tentokrát sme privítali Dr. Dušana Bernáta z Fakulty matematiky, fyziky a informatiky Univerzity Komenského so zaujímavou prednáškou na tému Operačné systémy v multiprocesorových klastroch.

Účastníci získali prehľad o základných pojmoch a definíciách, ako operačný systém umožňuje a zabezpečuje prístup aplikácií a procesov k prostriedkom a ako tieto prostriedky spravuje. Dozvedeli sme sa viac o stavoch a zmenách stavu jednotlivých procesov. Zaujímavé boli aj informácie o tom, ako vyzerá politika a réžia plánovača (scheduler), ktorý prístup na CPU procesom prideľuje.

Obr. 1: Diagram stavu procesov

Z hľadiska vysokovýkonných výpočtových prostriedkov nás zaujíma, ako funguje OS v prostredí s mnohými procesormi. Zvyšovanie počtu procesorov je prirodzenou odpoveďou na rýchly nárast požiadaviek aplikácií a súčasne limitov zvyšovania výkonu jediného CPU. Operačný systém teda môže úlohy rozdeľovať medzi viaceré fyzické procesory (alebo jadrá), pričom tieto procesy sú nezávislé a môžu bežať súbežne. Programátori môžu využiť výhody viacerých procesorov a svoje úlohy rozdeliť na viacero súbežných podúloh. Tieto už ale nie sú nezávislé a väčšinou je potrebné, aby medzi sebou navzájom komunikovali. Jedna úloha – proces môže mať teda viacero samostatných tokov riadenia, ktoré nazývame vlákna (threads) a ktoré zdieľajú väčšinu prostriedkov tohto procesu, vrátane pamäte. Z pohľadu architektúry to môže vyzerať ako na obrázku ilustrujúcom schému symetrického multiprocesorového systému (Obr. 2), kde je jedna pamäť zdieľaná viacerými rovnocennými procesormi (architektúra UMA – Uniform Memory Access). Tu je potrebné ošetriť synchronizáciu prístupu k tejto spoločnej pamäti, čo je možné urobiť viacerými spôsobmi. Prístup SMP – symetrického multiprocesingu má však nevýhody ako zlá škálovateľnosť, čakanie pri synchronizácii, tzv. cache trashing.

Obr. 2: Symetrický multiprocesorový systém

Ak fyzickú pamäť rozdelíme na viaceré moduly, dosiahneme menšie zaťaženie zbernice, pretože procesory budú najviac využívať vlastnú lokálnu pamäť. Tento prístup poznáme ako NUMA – Non-Uniform Memory Access. Tu je najvýhodnejšie, ak OS alokuje úlohe pamäť pre dáta čo najbližšie k procesoru, na ktorom úloha beží. Na obrázku vidíme príklad prepojenia 4 procesorov:

Obr. 3: Ukážka 4 procesorového point-to-point prepojenia, konfigurácie typickej pre NUMA

Prednáška pokryla aj tému správy pamäte, virtuálnu pamäť a jej alokáciu – vrátane konceptu overcommit a tému súborového systému a jeho hierarchie.

Operačné systémy a ich fungovanie v HPC prostredí by si určite zaslúžili aj viac priestoru, ako náš formát môže poskytnúť. Ak vás téma zaujala, na Fakulte matematiky, fyziky a informatiky UK na túto tému prednáša práve Dr. Dušan Bernát – a ak ste našu prednášku nestihli, môžete si ju pozrieť na Facebookovom profile alebo YouTube Centra spoločných činností SAV.

Harmonogram prednášok:

Viac informácií o prednáškach

EuroHPC JU Call for Proposals for Benchmark Access 2024 14 feb - Cieľom výziev EuroHPC JU Benchmark Access je podporiť výskumníkov a vývojárov HPC aplikácií poskytnutím možnosti otestovať svoje aplikácie na EuroHPC Pre-exascale a Petascale systémoch ešte pred podaním žiadosti o Extreme Scale či Regular Access.
EuroHPC JU Call for Proposals for Development Access 2024 14 feb - Cieľom výziev EuroHPC JU Development Access je podporiť výskumníkov a vývojárov HPC aplikácií poskytnutím príležitosti pre vývoj, testovanie a optimalizáciu aplikácii na EuroHPC Pre-exascale a Petascale systémoch ešte pred podaním žiadosti o Extreme Scale alebo Regular Access. Výzva EuroHPC Development je určená pre projekty zamerané na vývoj a optimalizáciu kódu a algoritmov a na vývoj aplikačných metód AI.
Medzinárodný deň žien a dievčat vo vede 11 feb - Medzinárodný deň žien a dievčat vo vede, ktorý sa každoročne oslavuje 11. februára, vyhlásilo Valné zhromaždenie Organizácie Spojených národov v roku 2015. Tento deň nám pripomína, že ženy a dievčatá zohrávajú vo vede a technike dôležitú úlohu a že je potrebné ich v tom ešte viac podporiť. Príspevok žien vo vede je neoceniteľný, od základného výskumu až po vývoj technológií. Ženy, ako Marie Curie, Rosalind Franklinová a mnohé iné, mali zásadný vplyv na naše pochopenie sveta.