9. Sálové počítače a servery

Kromě běžně využívaných osobních počítačů existuje rovněž skupina počítačů, u kterých je požadován velmi velký výkon. Pro speciální použití (rozsáhlé vědeckotechnické výpočty, vojenské využití, zpracování rozsáhlých dat,...) se stále využívá velmi výkonných sálových počítačů či minipočítačů. Ty jsou většinou sestavovány přímo pro konkrétní využití a nasazení. Vysoký výkon a spolehlivost jsou ovšem vyváženy obrovskými pořizovacími náklady. S rozvojem architektury klient/server se objevila nová kategorie s názvem server.

9.1. Anatomie serveru

První servery byly vlastně jen lépe vybavené osobní počítače a jako souborové a tiskové servery byly využívány v rámci lokálních sítí. S nástupem architektury klient/server se objevily databázové, komunikační a aplikační servery, jejichž nároky na výkon a hlavně spolehlivost jsou mnohonásobně vyšší. Současné servery proto kombinují technologií osobních počítačů s technologiemi sálových počítačů a minipočítačů. V mnohem větší míře než u sálových počítačů se využívá standardizace, což podporuje otevřenost a modularitu systémů. Nejdále se standardizace dostala v oblasti tzv. PC serverů.

Procesory serveru se postupně přesunují od 32 bitových k 64 bitovým procesorům, jejichž taktovací frekvence se blíží hranici 1 GHz. Důležitější než kmitočet procesoru je jeho architektura, která je superskalární a superzřetězená. Procesory mají všechny moderní rysy: spekulativní provádění instrukcí, předpověď větvení, provádění instrukcí mimo pořadí a podobně. Pro zrychlení práce s pamětí se zvětšuje velikost paměti cache L1 umístěné přímo na čipu procesoru i cache L2. Běžným se stává vytváření víceprocesorových systémů.

Nároky na operační paměť serverů jsou samozřejmě mnohonásobně větší než běžných počítačových systémů a kapacita se pohybuje v řádech stovek MB až desítek GB. V oblasti kvality paměti se však serverové systémy od běžných počítačových systémů podstatně neliší.

Důležitým faktorem výkonnosti je systémová sběrnice, která se mnohdy stává nejužším místem systému. Proto se u víceprocesorových serverů klasická technologie sdílené systémové sběrnice nahrazuje například technologií přepojování datových toků.

Víceprocesorové servery můžeme podle míry sdílení operační paměti a vstupně výstupních systémů rozdělit na tři základní skupiny:

  1. Symetrické multiprocesorové systémy (SMP)
  2. Masivně – paralelní systémy (MMP)
  3. Klastry

9.1.1. Symetrické multiprocesorové systémy

V technologii SMP jsou procesory z hlediska prováděných funkcí a z hlediska vztahu k dalším komponentám serveru rovnocenné. Koordinaci činnosti všech procesorů provádí sdílený operační systém. Jedině cache první a druhé úrovně je prvkem, který patří jen určitému procesoru, operační paměť je sdílená. Díky tomu je vývoj aplikací pro SMP servery relativně jednoduchý a neliší se příliš od vývoje pro běžné systémy. Největším problémem této architektury bývá sdílená systémová sběrnice, která se u víceprosorových serverů stává úzkým místem systému.

9.1.2. Masivně – paralelní systémy

Na rozdíl od SMP systémů, kde jsou sdíleny téměř všechny části počítače (od operačního systému, operační paměti až po vstupně-výstupní zařízení), je MMP systém složen s několika relativně samostatných subsystémů. Jednotlivé procesorové uzly jsou vybaveny vlastní operační pamětí i vlastními vstupně-výstupními kanály a zařízeními. To klade mnohem nižší nároky na datovou propustnost jednotlivých kanálů pro komunikaci mezi jednotlivými procesorovými uzly. U MMP je pak možné zvyšovat počet procesorů až do řádů stovek nebo tisíců a využívají se pro extrémně náročné aplikace. Nevýhodou tohoto systému je vysoká náročnost při vytváření aplikací, které by důkladně využívaly možnosti architektury MMP.

9.1.3. Klastry

Tato technologie využívá shlukování (klastrování) samostatných serverů do virtuálního superserverů. Jednotlivé uzly klastru mohou být tvořeny jednoprocesorovými servery nebo servery SMP. Jednotlivé uzly disponují vlastním operačním systémem, vlastní operační pamětí i diskovým subsystémem, který však ukládá jen kód operačního systému a aplikace. Zpracovávaná data jsou ukládána na sdílených diskových systémech, které bývají sdíleny prostřednictvím rychlé počítačové sítě, případně rozhraním Fibre Channel. Klastrování nabízí zvýšení bezpečnosti a odolnosti vůči selhání, například pomocí zrcadlení diskových subsystémů, zdvojení komunikačních kanálů či zrcadlení serverů (jeden z dvojice serverů slouží jako záloha). Další výhodou technologie klastrování je, že další uzly nemusí v systému sloužit pouze jako záloha, ale mohou paralelně řešit danou aplikaci. K nevýhodám dané architektury patří náročnější správa, složitější programování a vyšší ceny. Klastry se nasazují všude tam, kde technologie SMP naráží na výkonnostní hranice a kde je stále potřeba pracovat se sdílenými daty.

Kromě výše uvedených technologií se používají i méně standardní řešení, která například dané technologie různým způsobem kombinují.

9.2. Mainframe

Mainframe (mainframecomputer, superpočítač, sálový počítač) je velmi výkonný počítač, který je založený na obrovském výpočetním výkonu, rozsáhlých diskových a paměťových kapacitách, masivním paralelním zpracování dat. Pracuje jako řídící jednotka, ke které jsou připojeny terminály. Mezi nejznámější mainframy patří počítače firem IBM (S/390), DEC, HewlettPackard, počítače řady Cray. Počítače jsou pro svůj vysoký výpočetní výkon určeny hlavně pro rozsáhlé vědeckotechnické výpočty v oblasti vědy a výzkumu (například simulace složitých fyzikálních jevů).