Článek Procesory AMD AMD

AMD EPYC: útok na serverový trh | Kapitola 3

Jan Vítek

Jan Vítek

3

Seznam kapitol

1. AMD EPYC: útok na serverový trh 2. Architektura Zen 3. AMD Secure processor a Infinity Fabric 4. Paměti a I/O 5. Spotřeba a příklady z praxe

Procesory AMD EPYC představují dosavadní vrchol architektury Zen, v jejímž rámci nabídnou až 32 jader pro jedno a dvoupaticové servery. Velkou roli zde hraje již známé rozhraní Infinity Fabric, které si v dnešním článku také rozebereme.

Reklama

AMD Secure Processor

Secure Processor se dá pokládat za architekturu v architektuře, ale nejde o nic nového, co by AMD nemělo k dispozici dříve. Jedná se o 32bitové jádro ARM Cortex-A5, které je tak zcela odděleno od zbylé části, což je jasné už jen kvůli tomu, že ta využívá architekturu x86.

AMD EPYC: útok na serverový trh

Jádro ARM zde využívá zabezpečený firmware a slouží k tvorbě kryptografických klíčů, které jsou pak určeny různým aplikacím. K dispozici je také technologie SME (Secure Memory Encryption), která umožní s využitím jednoho klíče zašifrovat celou operační paměť, což platí i pro virtuální stroje, které ji využívají, čímž ji chrání proti útokům zvenčí. To platí i pro takové útoky, kdy má nepovolaná osoba přístup fyzicky přímo k serveru, což se v případě velkých a různě lokalizovaných datových center nedá vyloučit. 

SME je přitom pro správce plně transparentní a nevyžaduje využití žádných ovladačů, neboť ani nepracuje pod žádným OS. Umožní přitom přístup k zašifrovaným stránkám v paměti různým hardwarovým zařízením, což může být třeba grafický čip na samostatné kartě, a to s využitím DMA, čili přímého přístupu do paměti. Nicméně to představuje i nebezpečí, neboť útoky s využitím DMA dokáží dle AMD technologii SME obejít. 

AMD má i další technologii pro šifrování paměti, a to SEV (Secure Encrypted Virtualization), která je určena zvláště pro ochranu virtuálních strojů (VM), a to jednak od prostého útoku zvenčí, tak mezi nimi samotnými. Dokáže generovat jeden klíč pro hypervisor, který virtuální stroje tvoří a řídí, další pro VM a pak i pro skupinu VM, což umožní izolovat hypervisor od VM či kontejnerů. To vše se bude opět hodit v případě, že si jen pronajmeme prostor na serveru pro virtuální stroj a potřebujeme, aby byl chráněn i od ostatních, stejně jako od poskytovatele. 

Společnost AMD se také chlubí, že zapnutí šifrování dat v operační paměti představuje zvýšení latence při přístupu jen o 7 až 8 ns, což znamená dle SPECInt jen o 1,5 % nižší výkon.

AMD Infinity Fabric

Sběrnice Infinity Fabric je velice důležitou součástí architektury, která propojuje procesory Zen na několika úrovních. Slouží např. už jen k tomu, aby spojila desítky, nebo v případě EPYC možná i stovky senzorů v celém procesoru, které slouží k detekci napětí, spotřeby či teplot s přesností na millivolty, milliwatty a stupně Celsia. Pak je tu ale i jako sběrnice propojující jednotlivé CCX, čili čtyřjádrové komplexy v rámci jednoho křemíkového čipu. V případě procesorů EPYC je ale Infinity Fabric využita k dalším účelům, které v případě desktopových procesorů Ryzen nepoznáme. 

AMD EPYC: útok na serverový trh

Procesory EPYC jsou složeny ze 4 samostatných čipů umístěných na jedné destičce, jejichž propojení zajistí také Infinity Fabric a pokud jde o komunikaci procesorů ve dvoupaticovém systému, nejde také o nic jiného než o ni.

Infinity Fabric je receptem na nutnost vysokorychlostního propojení jednotlivých čipů, v jejichž případě má AMD výhodu ve vyšší výtěžnosti, než kdyby tvořilo celé 32jádrové čipy. Jde o to, že pokud by potřebovalo bezchybné 32jádrové čipy, při stejné výtěžnosti jich bude mít méně, než když si může tvořit výsledné procesory z menších 8jádrových čipů.

Vedle toho je tu i myšlenka, která hovoří o finanční a časové náročnosti tvořit 8jádrové (Ryzen), 16jádrové (Threadripper) a 32jádrové (EPYC) zvlášť, neboť je jasné, že pokud by AMD mohlo vytvořit pouze jeden typ 8jádrových procesorů, byl by pro něj proces výroby po tzv. tape-out mnohem levnější. Je ale otázka, zda jednotlivá jádra v EPYC jsou stejná, jaká najdeme i v procesorech Ryzen.

AMD EPYC: útok na serverový trh

V každém případě bylo nutné přijít s novým způsobem jejich propojení, přičemž na jedné procesorové destičce to Infinity Fabric zvládne tak, že každý čip je obousměrně spojen se všemi ostatními. Máme tu tak celkem 6 linek. 

AMD EPYC: útok na serverový trh

V případě jednoho procesoru tak není možné, aby data musela putovat ke svému cíli přes více než jeden skok a fyzicky to zajistí obousměrná linka s propustnotí 42 GB/s. Zajímavé je také to, že přenos každého bitu si vyžádá energii jen 2 pikojoulů, což znamená, že plně zaměstnaná linka s provozem v obou směrech potřebuje jen 0,7 W. 

AMD EPYC: útok na serverový trh

Ve dvouprocesorovém systému už jde o komunikaci po spojích vedených v základní desce, ale opět se zde uplatní Infinity Fabric. Ta už pochopitelně v takovém případě nefunguje tak efektivně, a to především kvůli delším drahám, po nichž musí data proudit, takže každá obousměrná linka si vezme 2,75 W, ale propustnost tak neklesne a činí 38 GB/s. 

Co se týče způsobu propojení, komunikují vždy stejné čipy v daném procesoru a z toho všeho vyplývá, že data putující mezi procesory jdou maximálně přes 2 skoky. 


Předchozí
Další
Reklama
Reklama

Komentáře naleznete na konci poslední kapitoly.

Reklama
Reklama