IBM má procesor podporující naráz dvě instrukční sady: Z a Arm

Včera jsme psali o tom, že AMD opět (už podruhé) zrušilo plán vyrábět Arm procesory. Ovšem zřejmě největší veterán světa počítačů IBM se teď naopak k instrukční sadě Arm přiklání a začíná ji používat. Ovšem zajímavým způsobem – nenahrazuje jí svou stávající architekturu (nebo aspoň zatím ne), ale představuje procesor, který má svou vlastní instrukční sadu, ale současně je také plně kompatibilní s architekturou Arm.

IBM teď představilo novou generaci procesorů pro mainframy řady Z Series (či z Series, grafická podoba se během let měnila), která podporují současně dva režimy – svou vlastní původní instrukční sadu a současně 64bitovou instrukční sadu Arm. Ta bude sloužit k běhu serverových aplikací na Linuxu (IBM tuto platformu nazývá systém LinuxONE). Procesor bude tímto z pohledu softwaru nabízet přímou kompatibilitu se softwarem, vydaným a odladěným pro tuto platformu, aniž by vyžadoval jakékoli úpravy. Uživatelé mainframů tak vedle svých speciálních nebo legacy systémů určených pro mainframy budou moci flexibilně používat i mainstreamový serverový software na stejném hardwaru.

Je třeba upozornit, že tato zpráva se netýká procesorů IBM Power, které nejspíš znáte (v jejich linii IBM nedávno vypustilo novou generaci Power11). Firma IBM stále pokračuje i s vývojem svých tzv. mainframe počítačů, česky by se řeklo sálových počítačů pro vysoce náročné kritické aplikace a systémy, s avizovanou 99,999999% dostupností.

Prezentace dual-ISA procesoru IBM Z series s nativní podporou architektury Arm na Hot Chips
Prezentace dual-ISA procesoru IBM Z series s nativní podporou architektury Arm na Hot Chips

Tato platforma nazvaná IBM Z Series, Z Architecture nebo z/Architecture je pokračováním historických sálových počítačů IBM System/360 (z roku 1964), System/370 (1970) a System/390 (rok 1990) a stále podporuje běh historického softwaru z té doby – ovšem s 64bitovou instrukční sadou navíc k podpoře starších instrukčních sad. První generace 64bitové architektury Z vyšla v roce 2000 a postupně vzniklo, pokud to dobře počítáme, deset generací, poslední je označená z17 (počítání začalo u z9) s procesorem také označeným IBM Telum II.

Prezentace dual-ISA procesoru IBM Z series s nativní podporou architektury Arm na Hot Chips
Prezentace dual-ISA procesoru IBM Z series s nativní podporou architektury Arm na Hot Chips

Nový dual-ISA procesor Z

Zatím nevíme, jak se nyní prezentovaný procesor s duální podporou architektury Z a architektury Arm („LinuxONE“) bude jmenovat. Možná Telum III, měl by snad pohánět generaci počítačů z18. Bude opět splňovat parametry třídy sálových počítačů ohledně spolehlivosti a dalších funkcí specifických pro tento segment. Čip je vyráběný 2nm procesem a obsahuje 11 jader – respektive zřejmě 12 jader fyzicky v křemíku s tím, že jedno je vždy vypnuto. To dovoluje uplatnit i čipy s defektem. Takt jader je plánován 5,7 GHz nebo vyšší („5,7 GHz+“) a podporují technologii SMT – každé zpracovává dvě vlákna. Procesory by se měly sdružovat do nodů po osmi kusech (tzv. drawerů).

Všechna tato jádra podporují jak instrukční sadu IBM Z, tak 64bitovou instrukční sadu Arm, konkrétně ArmV9.3 včetně SVE a SVE2. Celkově má jít o 2792 Arm instrukcí a jádro pro ně bude mít 239 fyzických registrů. Jedná se o plnohodnotnou nativní podporu binárního kódu běžícího na jádru (včetně kompatibility se standardem SystemReady), nikoliv nějakou formu emulace nebo pouze funkcí k urychlení emulace. Tato instrukční sada používá little endian formát dat (pořadí bajtů), zatímco Z architecture je nativně big endian.

Prezentace dual-ISA procesoru IBM Z series s nativní podporou architektury Arm na Hot Chips
Prezentace dual-ISA procesoru IBM Z series s nativní podporou architektury Arm na Hot Chips

IBM na konferenci Hot Chips prezentovalo některé detaily, které potvrzují, že jádra podporují obě instrukční sady nativně napříč v celé své pipeline. IBM za tímto účelem přidalo do jader potřebné schopnosti či přepracovalo různé jednotky tak, aby fungovaly v obou režimech, pokud nebylo možné jednotku určenou pro instrukce Z použít rovnou. Například prediktory větvení nebo TLB bylo možné adaptovat bez velkých změn, výpočetní jednotky vyžadovaly tu menší, tu větší změny – například pro podporu SIMD instrukcí SVE/SVE2 bylo třeba předělat řídící logiku a vykonávací jednotky musely dostat podporu práce s datovými typy FP16/Bfloat16.

Prezentace dual-ISA procesoru IBM Z series s nativní podporou architektury Arm na Hot Chips
Prezentace dual-ISA procesoru IBM Z series s nativní podporou architektury Arm na Hot Chips

Procesor zpřístupňuje softwaru běžícímu v režimu Arm i různé speciální akcelerátory architektury Z, jako akceleraci kryptografie, komprese gzip nebo jednotky pro akceleraci AI. Zatímco v architektuře Z se používají pomocí CISC instrukcí CPU, v režimu Arm s Linuxem jsou zpřístupněné jako separátní zařízení.

Linuxový OS by na těchto serverech měl běžet ve virtualizaci KVM, která umožňuje spouštět současně jak Linux v režimu Arm, tak Linux běžící nad instrukční sadou s390x. Vedle toho na jádrech může běžet i původní a výchozí operační systém platformy z/OS – pro každý mohou být na procesoru vyhrazené logické oddíly jader. Režim instrukční sady, kterou jádro (respektive vlákno) procesoru zpracovává, je podle IBM možné přepnout během několika nanosekund.

Prezentace dual-ISA procesoru IBM Z series s nativní podporou architektury Arm na Hot Chips
Prezentace dual-ISA procesoru IBM Z series s nativní podporou architektury Arm na Hot Chips

Každé jádro má velmi velkou privátní L2 cache o kapacitě 36 MB. Ač jde ale o privátní cache jádra, ostatní pro ostatní jádra je kombinace všech L2 cache zpřístupněná jako virtuální L3 cache (u té IBM uvádí kapacitu 432 MB, což by odpovídalo všem fyzicky přítomným 12 jádrům, možná jsou tedy poskytnuté i bloky cache vypnutého jádra?). Procesor má také virtuální L4 cache o kapacitě 3,5 GB. To by snad měla být kombinace všech L2 cache v osmiprocesorovém nodu („drawer“) tvořícím stavební komponentu počítačů Z Series. Tato dost nezvyklá koncepce je přejatá z předchozích procesorů IBM Telum (z16) a IBM Telum II (z17).

Procesor IBM Z Series s podporou instrukční sady Arm
Procesor IBM Z Series s podporou instrukční sady Arm

Tento hardware asi stejně jako předchozí mainframy IBM neuvidíme v nějakém širokém využití a zůstane v těch oblastech, kde je používaný nyní – zda se IBM povede podporou Arm Linuxu pro architekturu Z dobýt nějaké nové trhy či větší rozšíření, to teprve uvidíme. Podpora dvou historicky nesouvisejících instrukčních sad stejným procesorem je každopádně zajímavý počin, i když je pravda, že ne zcela bezprecedentní – je pravda, že 32bitová a 64bitová instrukční sada Arm nejsou kompatibilní, takže CPU jádra, která měla podporu pro obě, byla v jistém smyslu podobný koncept. Ale asi ne tak složitý k implementaci.

V minulosti bývaly vyslovovány návrhy na to, aby vznikly procesory podporující současně architekturu Arm a x86 pro kompatibilitu s existujícím softwarem, obvykle asi se záměrem postupně přejít na Arm a x86 časem opustit. Ale taková CPU by logicky musely vyvinou firmy AMD nebo Intel vlastnící (a „chránící“) licenci na instrukční sadu x86, pro které by to nebylo takticky chytré. Přechod světa z x86 procesorů na architekturu Arm by jim vzal jejich unikátní konkurenční výhodu. IBM teď demonstruje podobnou architekturu a to, že technicky je možné takový duální procesor udělat – byť je pak asi dražší na výrobu kvůli tomu, že v každém jádru je třeba mít logiku navíc. Ale je otázka, zda tento koncept někdo bude následovat.

Zdroje: IBM, ServeTheHome

Jan Olšan, redaktor Cnews.cz


Contents

Nové x86 instrukce ACE: Detaily akcelerace AI v jádru AMD Zen 7

Odvěcí konkurenti AMD a Intel byli dotlačeni k tomu, aby založili společné konsorcium, která má do budoucna sladit kompatibilitu a nová rozšíření jejich x86 procesorů, zatímco doteď odlišnosti často sloužily jako zbraň proti konkurenci. Na podzim byly představeny technologie, které se takto stanou společným standardem: AVX10/AVX-512, APX, ChkTag, FRED a nově také maticové rozšíření pro AI výpočty ACE, o kterém jsme doteď moc nevěděli. Celý článok „Nové x86 instrukce ACE: Detaily akcelerace AI v jádru AMD Zen 7“ »

Lepší výkon pro procesory Intel: Přínos technologie FRED změřený

Zatímco k procesorům AMD Zen 6 toho zatím moc známo není, docela dost toho uniká na internet o konkurenčních procesorech Nova Lake od Intelu. I Nova Lake by mohla být zajímavá inovativní generace díky novým jádrům, která vedle návratu AVX-512 také poprvé přinesou rozšíření APX. Jejich výkon ovšem podpoří ještě jedna nová technologie: FRED. Je již v procesorech Panther Lake a v některých programech má zajímavé přínosy. Celý článok „Lepší výkon pro procesory Intel: Přínos technologie FRED změřený“ »

Unified Core: Intel chystá přelomovou změnu v procesorech

Jak známo, od roku 2021 používá Intel hybridní architekturu CPU s velkými a malými jádry (od procesorů Core 12. generace, ale vyzkoušel si to už s experimentálním procesorem Lakefield o rok a půl dříve). Malá jádra „E-Core“ odvozená od někdejších čipů Atom jsou ovšem u řady lidí dost nepopulární. Na obzoru se teď ale rýsuje razantní změna – zatímco teď má Intel dvě zcela rozdílné architektury, v budoucnu přejde na jedinou. Celý článok „Unified Core: Intel chystá přelomovou změnu v procesorech“ »

Pridaj komentár

Vaša e-mailová adresa nebude zverejnená. Vyžadované polia sú označené *