Diit.cz - Novinky a informace o hardware, software a internetu

Elbrus Technologies má x86 emulátor pro ARM, pracuje na zrychlení

ARM-x86
K odvážnému tahu se rozhodlo „pár ruských nadšenců“ Эльбрус Технологии (Elbrus Technologies). Vyvíjejí emulační software pro běh x86 aplikací na procesorech ARM a prý jim to docela jde…

Pojem Elbrus možná některým z vás nebude neznámý. Pamětníci budou asi vědět, že tímto pojmem byl označen už ruský pardon, sovětský počítač z roku 1975, přičemž pod vedením Moscow Center of SPARC Technologies pokračuje vývoj Elbrus procesorů i nadále, relativně nedávno se na YouTube objevilo poměrně nekvalitní video, kterak na procesoru Elbrus-3M1 bootují Windows 2000.

Každopádně to vypadá, že Elbrus Technologies s tím nemá moc společného, snad kromě části názvu, původu a faktu, že procesory Elbrus nejsou nativně x86, stejně tak jako snaha Elbrus Technologies je rozjet x86 kód na nenativním hardwaru, konkrétně procesorech architektury ARM. Elbrus Technologies tak je společnost, na kterou pasuje moderní označení „start-up“.

Co se samotného produktu Elbrus Technologies týče, vývojáři pracují na softwaru, s jehož pomocí by bylo možné spouštět na ARM platformách přímo binárky určené pro x86, rovnou, bez překládání do nativního kódu, kterému ARM rozumí. Situace je dokonce tak daleko, že tento software už vlastně existuje. Zatím je ale jeho výkon poměrně malý, prý dosahuje 40 % nativního ARM výkonu. V Elbrus Technologies jsou nicméně přesvědčeni, že jsou schopni dosáhnout až na 80 % výkonu ARMu, ne-li více. Nejzazší termín dosažení tohoto stádia je konec roku 2014. Na ARM TechCon (30. 10. a 1. 11.) chtějí tvůrci svůj projekt představit.

Dejme tomu, že nejde o nějaké vodění za nos a připusťme, že se tak skutečně stane a bude na světě software, který dokáže rozběhat x86 binárky na ARM platformě. To zní samo o sobě jako pecka, dokud si neuvědomíme, co to vlastně znamená „100 % výkonu ARM“. Jelikož nemáme přímo s ARM zkušenosti a neviděli jsme třeba běh srovnatelných aplikací na Windows RT vs. Windows 8, je pro nás „100 % výkonu ARM“ momentálně neznámá. Pokud však budeme vycházet z nějakých reálných možností daných spotřebou, frekvencemi a aktuálním stádiem výrobních procesů, dokázali bychom si představit, že takové ARM jádro může být obdobně rychlé jako třeba jádro procesoru Intel Atom. Bude se to možná lišit o jednotky, možná desítky procent, v krajním případě nějaká ta stovka, ale určitě to bude bližší srovnání než třeba s Core i5. Dává nám to hrubý odhad smysluplnosti takového řešení. Ano, stavějí se servery na Atomech a pokud zapomeneme na Windows, stavějí se i servery na ARMech. Otázkou je, kam má ARM namířeno a jak moc může být zajímavé provozovat x86 kód na ARMech. Nedá se ani vyloučit, že by v případě úspěchu tohoto emulátoru zamířil ARM výš (aneb „když nám na tom poběží to samé, co na Intel procesorech, zkusme na úkor spotřeby zvýšit výkon“).

V Elbrus Technologies se tak vlastně vydali opačnou cestou než třeba Microsoft. Ten udělal novou verzi Windows 8 rovnou pro ARM, ponese označení Windows RT a Microsoft s ní sází v podstatě na všechno, neboť funkčnost Windows RT bude i v x86 platformě. A to je právě rozdíl v tom přístupu, zatímco Microsoft se snaží vývojáře přesvědčit, aby začali dělat úplně nový kód, který díky ekosystému WinRT poběží na ARMu i na x86, Elbrus Technologies jde cestou jistým způsobem atraktivnější, kdy již hotové aplikace určené pro x86 prostě na tom ARMu spustíte a nemusíte nic znovu kódovat nebo překládat. Otázkou ovšem bude právě výkon, tedy zda bude mít význam rozběhat na ARMu aplikaci, jejíž tvůrce při programování tak nějak počítal s tím, co dnes zvládne x86.

Dokážeme si samozřejmě takové aplikace představit, cizí by našim myšlenkovým pochodům nebyl ani scénář, že by šlo o jisté přechodné období, kdy by si tvůrci aplikací touto cestou nejprve vyzkoušeli, co jim ARM nabídne (např. z hlediska úspory energie) a pokud by se jim to zalíbilo, třeba by pak začali kódovat přímo pro ARM, což by jejich aplikace pochopitelně zrychlilo (až na oněch „100 % nativního výkonu ARM“). I z tohoto pohledu by však 80 % výkonu ARM neznělo jako něco, co se šmahem odmítá. To už prostě zní zajímavě a stojí to minimálně za vyzkoušení, už jen proto, že pokud by se to rozšířilo, mohlo by dojít na osvobození od x86, čemuž dnes, ať chceme, nebo ne, vládne Intel za výrazného přispění AMD, přičemž na rozdíl od ARM není moc šance, že by mu v tom mohl někdo další konkurovat.

WIFT "WIFT"

Bývalý dlouholetý redaktor internetového magazínu CDR-Server / Deep in IT, který se věnoval psaní článků o IT a souvisejících věcech téměř od založení CD-R serveru. Od roku 2014 už psaní článků fakticky pověsil na hřebík.

více článků, blogů a informací o autorovi

Diskuse ke článku Elbrus Technologies má x86 emulátor pro ARM, pracuje na zrychlení

Sobota, 6 Říjen 2012 - 01:16 | webwalker | Že by v NET framework nešla udělat pořádná...
Pátek, 5 Říjen 2012 - 23:41 | mmmmario mmmmario | To webwalker: Uff tak .Net bych sem netahal,...
Pátek, 5 Říjen 2012 - 23:25 | danieel | Nemusi se drzet dve binarky - v jedne muzou byt...
Pátek, 5 Říjen 2012 - 21:05 | webwalker | V C++ se můžeš přiblížit HW blíže, než je zdrávo...
Pátek, 5 Říjen 2012 - 20:36 | webwalker | EPIC ano :)
Pátek, 5 Říjen 2012 - 20:25 | Jack FX | Explicitně paralelní architektura - tzn. to samé...
Pátek, 5 Říjen 2012 - 20:22 | Jack FX | emulátor by mohl fungovat podobně jako Dalvik VM...
Pátek, 5 Říjen 2012 - 18:27 | Rado | presne tak.
Pátek, 5 Říjen 2012 - 18:22 | mmmmario mmmmario | Celou dobu co jsem teto thread četl jsem chtěl...
Pátek, 5 Říjen 2012 - 16:40 | Rado | Jojo, máš pravdu teraz sa od VLIWov upúšťa....

Zobrazit diskusi