Současná architektura počítačů a prostor na optimalizace

Architektura dnešních počítačů se příliš neliší od té, která byla určená pro desítky let staré počítače. Míst k optimalizaci je tak hodně - třeba i u virtuální paměti.

Už od poloviny minulého století se snažíme počítače stále zrychlovat, čipy mají více tranzistorů, vyšší frekvence, propustnost rozhraní v rámci komponent je také stále vyšší.

Při honbě po vyšším výkonu a zlepšování však stejně jako v jiných oborech ale často zapomínáme na úplný začátek a základ samotné architektury. Proč je vlastně něco tak, jak to bylo kdysi a jestli nepřišla doba na to, to změnit. Časy se mění a s nimi i systém použití počítačů. Už se nejedná o jeden velký počítač jako kdysi. Máme chytré telefony i datacentra složená z obrovského množství menších počítačů.

Při optimalizaci na té nejnižší úrovni je tak možné přepracovat některé staré části, které zpomalují proces zpracování informace.

Proč je skládanka taková, jaká je?

Počítače dneška jsou extrémně komplexní, jednoduché kliknutí na internetový odkaz v prohlížeči znamená takové množství procesů a zpracovaných jedniček a nul, že je to téměř nepředstavitelné.

Klepněte pro větší obrázek
Vrstvy počítačové architektury (Zdroj: Mark Hill)

A i když se v rámci počítačové architektury snažíme „skládanku“ složit stále rychleji, příliš se nezabýváme tím, proč je třeba „skládanka“ taková, jaká je a zda není čas ji změnit.

A právě tímto principem se zabývá profesor Mark Hill, jehož život patřil především počítačovému hardwaru a všeho kolem něj. V rámci optimalizace se soustředí na to, jak se dnešní počítače používají a kde jsou skryté rezervy, které je možné využít a případné zbytečné a zpomalovací části optimalizovat nebo odstranit úplně.

Klepněte pro větší obrázek
Ukázka jaké je zaměření u stávajícího vývoje a prostor, který ukrývá optimalizace základních částí, které mohou přinést další zlepšení (Zdroj: Mark Hill, Darpa)

Pro běžného uživatele i řadu programátorů je komplexita počítače téměř zcela ukrytá a schovaná pod mnoha vrstvami, které může jen těžko ovlivnit. Přitom právě v tom nejhlubším základu se často nachází tolik prostoru na optimalizaci, že by to mohlo znamenat stejné zvýšení výkonu jako třeba u cyklu technologického vývoje.

Neefektivní virtuální paměť

Při zkoumání jednotlivých částí počítačové architektury, sledování výkonu a času zpracování běžných úkonů tak Mark Hill narazil na oblast, kde vzniká obrovská ztráta – virtuální paměť. Podle jeho měření může někdy až za 50 procent cyklů procesoru.

Virtuální paměť je jedna z typických starých technik z dob, kdy počítače měli milionkrát méně operační paměti a podobné technologie byly nutné pro správný chod mnoha prgoramů. Virtuální paměť se stará o to, aby každý program měl k dispozici část v operační paměti ve vlastní virtualizované podobě, která může mít i větší velikost než reálná fyzická paměť.

Klepněte pro větší obrázek
TLB si vezme velkou část výkonu a tedy i spotřeby (Zdroj: Mark Hill)

Většinu času totiž program tolik paměti nepotřebuje a je zbytečné zabírat kapacitu fyzické paměti – k dispozici je totiž ještě pevný disk (dnes už i SSD), na který lze nepoužívané stránky paměti uložit mnohem efektivně z pohledu velikosti a ceny za prostor.

Klepněte pro větší obrázek
Nové řešení v podobě zjednodušení překladu adres u operačního systému pro základní programy sníži ztrátu na TLB k 1 % (Zdroj: Mark Hill)

A právě systém stránkování je jednou z oblastí, kde je podle Marka Hilla velký prostor na optimalizaci pro dnešní dobu a brání využití maximálního potenciálního výkonu. Rychlý překlad virtuálních adres na fyzické zajišťuje cache TLB (Translation Lookaside Buffer) a největší ztráty procesorových cyklů jsou v případě kdy TLB nemá potřebnou adresu. Tento systém se v průběhu vývoje takřka nezměnil a Marc Hill představil řešení s jednodušším překladem adres pro klíčové části a programy počítače. Ztráty s TLB se tak mohou dostat k hranici pouze 1 %.

Malá změna v hardwaru i softwaru

I když se jedná o naprosto miniaturní oblast s malou optimalizací vyžadující malou změnu v hardwaru a operačním systému, může mít viditelný vliv na výkon. V případě běžných počítačů, které jsou ve většině případů v klidu, by asi nešlo o nic výrazného, ale u datacenter kde jsou systémy většinu času plně vytížené, může jít o optimalizaci, která ušetří nákup spousty dalších serverů.

Klepněte pro větší obrázek
Optimalizace TLB může znamenat i významnou úsporu energie (Zdroj: Mark Hill)

V běžné oblasti či mobilních zařízeních je spíše tlak na nízkou spotřebu ale i tam mohou mít takové optimalizace velký vliv. Menší zátěž procesoru totiž znamená, že může být delší dobu v úsporném režimu a šetřit baterii. Zmíněná optimalizace s virtuální pamětí je tak pouhá ukázka toho, že míst a starých technik, které čekají na optimalizace, je hodně.

I ty nejlepší optimalizace ale budou nakonec překonány zcela novou technologií a architekturou, která přijde v budoucnu – třeba kvantové počítače.

Témata článku: Hardware, Technologie, Operační systémy, Hill, Ccc, Mark, Translation

16 komentářů

Nejnovější komentáře

  • Peter Fodrek 21. 4. 2014 12:03:52
    Bravo Slide 11-14 ucim studentov 2. a 3. smestra Bc. na jedmom slide...
  • Petr Rezek 20. 4. 2014 2:41:42
    Nějak jsem nepostřehl, jaké je vlastně navrhované vylepšení Marca Hilla....
  • cabman 19. 4. 2014 23:28:55
    Přečetl jsem první větu a to stačí. napsat: "Architektura dnešních...
Určitě si přečtěte

Operační systém běžným počítačům nedal Bill Gates, ale Gary Kildall

Operační systém běžným počítačům nedal Bill Gates, ale Gary Kildall

** Gary Kildall pochopil, že levné výpočetní čipy mohou posloužit jako univerzální počítače pro všechny ** Připravil pro ně proto první operační systém ** Později mu systém vyfoukl Microsoft a nazval ho MS DOS

23.  4.  2017 | Pavel Tronner | 56

Umělá inteligence je sice v plenkách, už teď ale přestáváme rozumět, jak vlastně funguje. To je problém

Umělá inteligence je sice v plenkách, už teď ale přestáváme rozumět, jak vlastně funguje. To je problém

** Už je to tady, lidé přestávají chápat počítače ** Systémy neuronových sítí začínají pracovat tak, že ani jejich tvůrci přesně neví, co se uvnitř děje ** Do budoucna to může být závažný problém

24.  4.  2017 | Jakub Čížek | 112

Před 35 lety měl premiéru legendární počítač ZX Spectrum. Připomeňte si „Gumáka“

Před 35 lety měl premiéru legendární počítač ZX Spectrum. Připomeňte si „Gumáka“

** Slavný osmibitový počítač Sinclair ZX Spectrum byl uveden právě před 35 lety ** Připomeňte si tento průkopnický počítač v tematických článcích ** Podívejte se, jak funguje dnes

23.  4.  2017 | Pavel Tronner | 13

Správný počítač má alespoň dva monitory. Anebo je to jinak?

Správný počítač má alespoň dva monitory. Anebo je to jinak?

** David si nedokáže představit práci bez dvou a více monitorů ** Kubovi naopak stačí jeden a ve více displejích se ztrácí ** Jaký přístup je lepší?

23.  4.  2017 | Jakub Čížek | 59

Brněnské soudy daly stop Uberu. Je to dobře, nebo krok zpět?

Brněnské soudy daly stop Uberu. Je to dobře, nebo krok zpět?

** Před několika měsíci začal Uber nabízet své služby i v Brně ** Nyní ale narazil, soudům se to totiž nelíbí ** Má sdílená ekonomika dostat zelenou?

22.  4.  2017 | Jakub Čížek | 28


Aktuální číslo časopisu Computer

První test AMD Ryzen

Velké testy: 22 powerbank a 8 bezdrátových setů

Radíme s koupí Wi-Fi routeru

Co dokáží inteligentní domy?