SAN JOSE, Calif. – Russian engineers are developing software to run x86 programs on ARM-based servers. If successful, the software could help lower one of the biggest barriers ARM SoC makers face getting their chips adopted as alternatives to Intel x86 processors that dominate today’s server market.
Elbrus Technologies has developed emulation software that currently delivers 40 percent of native ARM performance. The company believes it could reach 80 percent native ARM performance or greater by the end of 2014. Analysts and ARM execs described the code as a significant, but limited option.
[Get a 10% discount on ARM TechCon 2012 conference passes by using promo code EDIT. Click here to learn about the show and register.]
A growing list of companies—including Applied Micro, Calxeda, Cavium, Marvell, Nvidia and Samsung—aim to replace Intel CPUs with ARM SoCs that pack more functions and consume less power. One of their biggest hurdles is their chips do not support the wealth of server software that runs on the x86.
The emulation code from Elbrus Tech could help lower that barrier. The team will present a paper on its work at the ARM TechCon in Santa Clara, Calif., Oct. 30-Nov. 1.
The team’s software uses 1 Mbyte of memory. “What is more exciting is the fact that the memory footprint will have weak dependence on the number of applications that are being run in emulation mode,” Anatoly Konukhov, a member of the Elbrus Tech team, said in an e-mail exchange.
The team has developed a binary translator that acts as an emulator, and plans to create an optimization process for it.
"Currently, we are creating a binary translator which allows us to run applications," Konukhov said. "Implementation of an optimization process will start in parallel later this year--we're expecting both parts be ready in the end of 2014."
"The major concern for us is lack of software developers with binary translation expertise," he added. "This is also the reason for us to estimate project release in late 2014."
The Elbrus Tech software uses a parallel compilation process and stores translations in volatile memory to decrease overhead when starting up. The binary translator will have "several levels of optimization for 'cold' and 'hot' regions of code," said Konukhov.
Work on the software started in 2010. Last summer, Elbrus Tech got $1.3 million in funding from the Russian investment fund Skolkovo and MCST, a veteran Russian processor and software developer. MCST also is providing developers for the project.
I think the need for x86 compatibility is overblown and rapidly diminishing. Only legacy closed source applications have a need for such binary compatibility. Cloud infrastructure runs largely on open source technologies such as Linux and couldn't care less whether the instruction set is x86 or ARM. Moving an application from x86 to ARM is usually only a "make" away.
When I visited the Elbrus Laboratories in the early 1990s I was shown big iron Russian supercompters made out of 1970s and 80s vintage technologies. I was told that we built these out of necessity from vacuum tubes, and "they work". Russian/Soviet science and technology has come a long way, and has ways to go. It's gratifying that Elbrus is tackling ARM software and is presenting at the SV venue.
David Patterson, known for his pioneering research that led to RAID, clusters and more, is part of a team at UC Berkeley that recently made its RISC-V processor architecture an open source hardware offering. We talk with Patterson and one of his colleagues behind the effort about the opportunities they see, what new kinds of designs they hope to enable and what it means for today’s commercial processor giants such as Intel, ARM and Imagination Technologies.