reklama

Microsoft a jeho působení v oblasti paralelních výpočtů

Kombinace mnohojádrového hardwaru s paralelními výpočty může přinést do světa počítačů zcela nové možnosti, a to jak technologické, tak obchodní.

Autor: Michal Kvasnička, Sprinx Systems, a.s.

Článek je součástí celého cyklu článků na téma High Performance Computing (HPC) vycházejícího v TechNet Flash zpravodaji.

S vývojovým pokrokem v oblasti grafického uživatelského rozhraní (GUI), internetu a mobilní komunikace se práce s výpočetními systémy všeho druhu (od mobilních telefonů, PDA po osobní počítače a pracovní stanice) stává více osobní, moderní přístroje umožňují snáze a komfortněji komunikovat s jinými lidmi a především jsou stále dostupnější, ať jsme kdekoliv.

Aby tento zaběhnutý trend mohl směle pokračovat, je nezbytný nepřetržitý vývojový posun nejen na softwarové, ale stejně tak na hardwarové bázi. V případě té hardwarové se v současné době nacházíme na jakémsi pomyslném rozcestí, kdy hlavní vývojový proud opouští svou tradiční cestu zvyšování výpočetního výkonu (tj. růstem pracovní frekvence), která se z dlouhodobého hlediska jeví kvůli jistým fyzikálním bariérám jako nereálná (přílišné množství vyzářeného tepla), a tím spíše se orientuje na vícejádrové a mnohojádrové technologie použité ve výpočetních čipech (procesorech).

Gordon Moore v roce 1965 ve svém článku předpověděl, že počet tranzistorů umístěných na integrovaném obvodu se zdvojnásobí každých 18 až 24 měsíců, což se zhruba rovnoměrně projeví na růstu pracovní frekvence procesoru a jeho výpočetním výkonu. Právě tento výkonnostní růst byl jedním ze základních stavebních kamenů, které umožnily například vznik grafického rozhraní, internetu, mobilních přístrojů i softwarových služeb, potažmo pak i komplexních elektronických systémů pro správu informací (informační systémy). Všechny tyto inovace ve svém důsledku přinesly razantní navýšení produktivity prakticky všech firem či osob využívajících moderní technologie.

Každá vlna nových a výkonnějších technologií umožňuje počítačům být více osobní, sociální a mobilní a ty díky tomu mohou udělat ještě větší kus práce za nás. Vyšší výkon a s ním úzce spjaté nové technologie dovolují obohatit práci s počítačem o zcela nové možnosti nebo vylepšit ty stávající. Dnešní domácí počítače například stále ještě nejsou dostatečně výkonné na to, aby byly schopné provozovat mnoho užitečných aplikací, jako jsou různé simulace, analýzy a tvůrčí procesy. Řešení této výzvy spočívá zase jen ve vyšším výkonu. Toho si je vědoma i společnost Microsoft, která investuje značné prostředky do výzkumu toho, jak naplno využívat potenciál vícejádrové a mnohojádrové technologie mikroprocesoru v oblasti mainstreamových aplikací. Jako důkaz svého úsilí firma zřídila projekt zvaný Parallel Computing Initiative, jejímž účelem je vytvořit vizi, strategii a inovativní vývojové prvky, které mají pomoci tohoto cíle dosáhnout.

Poznámka: Vícejádrovým čipem se rozumí takový čip, který obsahuje dvě až osm výpočetních jader, zatímco mnohojádrový čip obsahuje více než osm výpočetních jader.

Vývoj v oblasti hardwaru

Většina stolních i přenosných počítačů se dnes dodává s dvoujádrovým procesorem. Přidávání nových jader do čipu namísto zvyšování pracovní frekvence se již pomalu stává zaběhnutým trendem. Důkazem toho je přechod z dvoujádrových čipů na čtyřjádrové, které se již začínají objevovat mezi uživateli v hojnějším počtu. Nové typy procesorů se zpravidla objevují ve dvou základních variantách - 1) drahé, výkonné a energeticky náročné a 2) levné, slabší a úsporné. Přidáváním nových jader je možné u některých aplikací zvyšovat výkon, aniž by bylo nutné měnit ostatní parametry procesoru.

Vývoj v oblasti paralelních výpočtů

Problémem mnohojádrových systémů je fakt, že mají obrovský výkonnostní potenciál, který není možné dokonale využít. Vývoj aplikací, které by zapřáhly plný výkon všech obsažených jader, je komplikovaný a programátorů paralelních aplikací je nedostatek. Taková aplikace musí být schopna se sama adaptovat na každý systém individuálně a přizpůsobit se každé změně v jeho výpočetních zdrojích, aby mohla využívat veškeré dostupné hardwarové kapacity. Vytvořit efektivní paralelní aplikaci je proto velice náročný úkol, který může provázet celá řada problémů. Microsoft spolu se svými partnery pracuje na vývoji softwarové architektury, nástrojů a aplikací navržených k vyřešení těchto problémů a tím k odstranění překážek stojících v cestě plnému využití potenciálu mnohojádrových čipů. Kromě usnadnění práce programátorům při psaní paralelních aplikací usiluje Microsoft také o zlepšení koordinace systémových zdrojů a služeb při jejich spouštění.

Kombinace mnohojádrového hardwaru s paralelními výpočty může přinést do světa počítačů zcela nové možnosti: počítač může reagovat přirozenou lidskou řečí, vytvářet vize do budoucna, detailně analyzovat a upravovat obrazové informace, provádět sémantickou analýzu dat či pokročilé renderování a simulaci. Na rozdíl od současného způsobu interakce uživatele s aplikací by v budoucnu měly být aplikace schopny přizpůsobit se uživateli na základě vzorců jeho chování, ale například i předpovědět jeho budoucí potřeby.

Vývoj v oblasti osobních počítačů

Projekt Parallel Computing Initiative od firmy Microsoft pomůže domácím spotřebitelům a informačním pracovníkům zvýšit možnosti a efektivitu ve všech činnostech prováděných s pomocí osobního počítače. Zvýší se informovanost uživatelů o tom, co právě dělají. Díky tomu budou schopni dokončit komplexní úlohy rychleji - bez zbytečné ztráty času metodou pokus-omyl. Zde je příklad možných scénářů budoucího využití osobního počítače:

  • Personální modelování: Majitel domu může použít modelovací aplikaci k trojrozměrnému návrhu domovního průchodu s fotorealistickou věrností. Aplikace shromáždí informace o struktuře domu, elektrickém a tepelném vedení, kanalizačním systému, použitých stavebních materiálech apod. a na jejich základě sestaví obraz konečné podoby domovního interiéru se všemi detaily.
  • Personalizované učení: V některých rozvojových zemích je po kvalifikovaných kantorech velká poptávka, a tak na každého z nich obvykle připadá až příliš mnoho studentů. Pomocí nové technologie je však možné tento problém vyřešit. Mnohojádrový systém doplněný o vhodnou aplikaci bude schopen rozpoznat vzorce chování uživatele během studia a na jejich základě sestavit v reálném čase personalizovaný učební plán.
  • Veřejná bezpečnost: Pracovníci na pohotovostních linkách mohou využívat trojrozměrné simulace oblastí postižených katastrofou na základě dostupných údajů. Aplikace je schopna rozpoznávat objekty na videozáznamu či doplňovat chybějící objekty na základě zadaných údajů. Pracovník v reálném čase uvidí věrnou simulaci včetně škod napáchaných na budovách a dokáže předpovědět místa, do kterých se bude například šířit požár nebo povodeň. Tyto nástroje pomohou činit dobře informovaná rozhodnutí, která jsou nezbytná u záchranných akcí, evakuací a jiných vypjatých situací.

Obchodní přínosy

Kromě již zmíněných výhod mají paralelní systémy také velký obchodní potenciál. Možnosti a výkon mnohojádrových infrastruktur může akcelerovat vývoj a dodávku produktů i služeb, což má pro firmu pochopitelně za následek lepší obchodní výsledky, ale třeba i nové tržní příležitosti. Informační pracovníci v organizacích budou produktivnější, protože rychleji zpracují velké množství informací a díky tomu mohou rychleji činit dobře informovaná rozhodnutí a akcelerovat tak workflow (pracovní tok). Potenciál mnohojádrového řešení se může projevit třeba v následujících oblastech:

  • Finanční modelování: Investiční společnosti mohou zlepšit zákaznický servis poskytnutím personálního investičního nástroje, který umožní detailní trojrozměrný náhled a rozsáhlou analýzu komplexních finančních scénářů. Tyto scénáře si klient bude moci prohlížet ze svého (mnohojádrového) osobního počítače.
  • Simulace produktového návrhu: Výrobní společnosti mohou zkrátit čas uvádění nových produktů na trh díky vylepšené správě životního cyklu produktů (PLM), které je dosaženo prostřednictvím trojrozměrné integrované simulace.

Používáním nových nástrojů, programovacích modelů a infrastruktur od Microsoftu mohou vývojáři, nezávislý prodejci softwaru, systémoví integrátoři a dealeři lépe využívat potenciál paralelních výpočtů a díky tomu vytvářet i komplikované řešení rychleji a s menšími náklady. Tato řešení umožňují:

  • Vytvářet a integrovat aplikace pro vertikální trhy (kapitálový trh, výroba, životní vědy apod.) s cílem pomoci těmto trhům dosáhnout vyšších úrovní produktového vývoje.
  • Zvýšit produktivitu informačních pracovníků díky účinným nástrojům pro shromažďování a filtrování dat.
  • Posílit tržní poptávku po řešeních s přirozeným uživatelským rozhraním, lepší přístupností a podporou v oblasti vzdělávání, zábavy a modelování.

Aby bylo možné využívat příležitosti poskytované mnohojádrovými systémy, je nezbytné radiálně změnit způsob vývoje softwaru. V současnosti existuje pouze malá skupina vývojářů majících znalosti paralelního programování a dostatek není nezbytných softwarových nástrojů a programovacích modelů.

Parallel Computing Initiative

Jak již bylo řečeno, jedná se o projekt společnosti Microsoft, který spojuje tři základní prvky: vizi, strategii a vývojářské prvky. Kombinace těchto tří aspektů si klade za cíl využívat potenciál mnohojádrových systémů v běžné výpočetní praxi. V první fázi chce Microsoft zpřístupnit vývojářům potenciál této technologické novinky formou rozšiřujících doplňků (Parallel Extensions) pro stávající platformu .NET Framework. Tyto doplňky umožní vývojářům využívat možnosti paralelního programování při použití důvěrně známých nástrojů, zvyšovat efektivitu a škálovatelnost paralelních aplikací a zjednodušit proces beta-testování. Do budoucna Microsoft plánuje zahrnout tato rozšíření jako součást kódu programovacích jazyků a runtime knihoven. Projekt Parallel Computing Initiative se zaměřuje především na tyto aspekty:

  • Aplikace: Základem vize jsou aplikace, které přinesou do oblasti osobních počítačů zcela nové možnosti, podnikům umožní růst produktivity a otevření nových obchodních příležitostí na trhu.
  • Doménové knihovny: Matematické knihovny a knihovny pro zpracování obrázků jsou stavebními bloky každé paralelní aplikace.
  • Programovací modely a jazyky: V minulosti se do paralelního programování mohli pustit jen vysoce specializovaní vývojáři. Microsoft však plánuje poskytovat programovací modely a jazyky, které umožní všem vývojářům úspěšně navrhovat, vyvíjet, testovat a integrovat paralelní software.
  • Vývojářské nástroje: Zkombinováním programovacích modelů, jazyků, kompilátorů, editorů a diagnostických nástrojů do jednoho integrovaného celku chce Microsoft redukovat komplexitu ve vývoji a tím zvýšit produktivitu vývojářů.
  • Runtime knihovny, platforma a operační systémy - V souladu s požadavky kladenými na paralelismus a QoS (kvalitu služeb) Microsoft optimalizuje operační systém Windows a zvýší jeho úroveň spolehlivosti a zabezpečení.

Závěr

Přechod na mnohojádrové systémy je nevyhnutelným krokem ve vývojovém procesu celého výpočetního průmyslu. K přehnanému optimismus zatím však není důvod. Navzdory faktu, že v hardwaru jsou vícejádrové systémy již samozřejmostí, o jejich podpoře ze strany softwarových aplikací zatím nemůže být příliš řeč. Nechme se tedy překvapit, do jaké míry tento problém vyřeší aktivní podpora ze strany velkých softwarových producentů, jako je například Microsoft se svým projektem Parallel Computing Initiative.

Články ze série Microsoft TechNet nevytváří redakce Živě.cz, ale partneři programu Microsoft TechNet. Jsou publikovány v rámci mediálního partnerství Živě.cz a společnosti Microsoft.

Témata článku: Microsoft, Programování, Gordon

Nejnovější komentáře

Přidat příspěvek
reklama
Určitě si přečtěte

UPC překopli páteřní kabel. V Brně i druhý den nejede internet ani kabelovka

UPC překopli páteřní kabel. V Brně i druhý den nejede internet ani kabelovka

** V Brně byl velký výpadek služeb UPC ** Důvodem je překopnutý páteřní kabel ** V některých lokalitách služby stále nefungují

5.  12.  2016 | Jakub Čížek | 100

17 expertek Microsoftu předpovědělo rok 2027. Splní se alespoň něco?

17 expertek Microsoftu předpovědělo rok 2027. Splní se alespoň něco?

** Zmizí klasické vyhledávače ** Budeme programovat buňky ** Kvantové počítače překonají šifry

6.  12.  2016 | Jakub Čížek | 35

ASUS ZenBook 3 se začal prodávat v Česku. Je ve všem lepší než MacBook, ale bude to stačit?

ASUS ZenBook 3 se začal prodávat v Česku. Je ve všem lepší než MacBook, ale bude to stačit?

** Novinka od Asusu míří přímo proti MacBooku od Applu ** Nabídne daleko více výkonu za stejné peníze

2.  12.  2016 | David Polesný | 146

11 tipů na dobrý stolní počítač: od základu po herní mašiny

11 tipů na dobrý stolní počítač: od základu po herní mašiny

** Postavte si stolní počítač! Máme pro vás 11 vzorových sestav s rozpisem komponent ** Většina tipů cílí na hráče, věnujeme se ale i základnímu PC a počítačům na střih videa ** Nadělte si nový počítač třeba pod stromeček

5.  12.  2016 | Adam Kahánek | 73


reklama