Windows Azure a HPC

High Performace Computing (HPC) je již léta vyzkoušená technologie pro realizaci náročných výpočtů vyžadujících ohromný výpočetní výkon. Typicky se za tímto účelem stavějí superpočítače nebo clustery, v Čechách např. dobře známá Amálka.

Vedle HPC vznikl v posledních několika letech nový fenomén – Cloud computing (dále jen CC). Na první pohled možná podobná věc – velký objem výkonu a datového prostoru koncentrovaný na jednom místě. Na rozdíl od HPC se však u CC předpokládá, že takto koncentrované zdroje jsou sdíleny mezi celou řadou pronajímatelů a celou řadu aplikací, které vyžadují např. variabilní výkon, vysokou spolehlivost, minimalizaci údržby, globální rozsah atd. Tedy požadavky, které na typický HPC systém neklademe.

Otázka, která je ale nasnadě, zní: nelze CC použít pro provoz HPC? A odpověď zní: proč ne. Pokud využijeme Windows Azure, můžeme jednotlivé virtuální stroje využít jako výpočetní uzly v HPC clusteru. Prakticky jde vždy o heterogenní řešení, kdy u provozovatele HPC systému lokálně běží plánovač výpočetních úloh (Scheduler) a dále pak hlavní výpočetní uzel (Head node). Tyto dvě části se do cloudu nepřesouvají. Samotný výpočet se však realizuje na obrovské množině triviálních výpočetních uzlů (Compute node). Ty mohou být kombinovaně umístěny jak lokálně tak v cloudu. Na poměru nezáleží. Přehled takového scénáře lze najít ve whitepaperu od Davida Chappella a technické detaily v MSDN dokumentaci.

Co mně ale k napsání toho postu přimělo, byl ekonomický přinos využití CC jako platformy pro HPC. Celá řada HPC systémů je na plný výkon využívána téměř po celou dobu své životnosti. Existuje ale i celá řada HPC řešení, které svůj „nadupaný“ hardware využijí jen někdy. Nemohu si nevzpomenout na svá dlouhá akademická léta. Na univerzitě jsem měli výpočetní cluster, který býval velmi proměnlivě zatěžován. Často, zejména pro výuku, stačil zlomek výkonu, jindy, pro komerční nebo výzkumné projekty, výkon ještě chyběl. Co by asi v té době univerzita dala za to, kdyby nekupovala zbytečně předražený hardware, ale pořídila jistou „minimální konfiguraci“ a zbytek výkonu si pronajímala. Téměř v nelimitovaném objemu.

Když odhlédnu od akademické sféry a podívám se do komerční, provoz HPC na Windows Azure nabízí dvě ohromné výhody:

1. Přiblíží HPC daleko většímu rozsahu zájemců, kteří si nemusí budovat nákladná clusterová řešení doma.

2. Zajistí možnost krátkodobého pronájmu vysokého výkonu bez nutnosti jakékoli investiční zátěže.