News Russian Company Tapes Out 16-Core Elbrus CPU: 2.0 GHz, 16 TB of RAM in 4-Way System

The choice of VLIW for this long makes me curious about its inner workings and how Elbrus managed to succeed where others (namely Intel and Transmeta) failed.

But alas, I don't think we'll ever know unless someone at Elbrus is willing to defy the Russian government.
 

AlB80

Commendable
Jul 20, 2020
12
5
1,515
The choice of VLIW for this long makes me curious about its inner workings and how Elbrus managed to succeed where others (namely Intel and Transmeta) failed.
TL;DR or read chapter 10.1

But alas, I don't think we'll ever know unless someone at Elbrus is willing to defy the Russian government.
Yep. This project is supported by government. But how a Russian rebel can say anything new about the failure of Intel and Transmeta?

Who is gonna fab it?
Officially TSMC.
 

Chung Leong

Reputable
Dec 6, 2019
493
193
4,860
The choice of VLIW for this long makes me curious about its inner workings and how Elbrus managed to succeed where others (namely Intel and Transmeta) failed.

There's little evidence Elbrus succeeded. Fundamental problems with VLIW remain: inability to find parallelism in everyday code, poor code density, low clock compare to OoO design.
 
There's little evidence Elbrus succeeded. Fundamental problems with VLIW remain: inability to find parallelism in everyday code, poor code density, low clock compare to OoO design.
I'm seeing modern processor designs not all that much different from VLIW designs anyway, it's just they have a more complicated front-end to satisfy a wide execution unit. The problem with Intel + HP's EPIC was they demanded that software be re-written. Transmeta was just too small to bring their product to maturity. If anything, NVIDIA's Denver and Caramel carried on Transmeta's legacy.

And by "succeeded", I'm alluding more to the fact they've kept up with that design for so long. If it wasn't successful, then I don't see why they'd bother for six generations. Russia doesn't want Elbrus to export their technology, so I have no delusions of it succeeding in the commercial market in the same vein Intel or ARM has.
 
  • Like
Reactions: mshigorin

yaapelsinko

Honorable
Oct 19, 2014
4
2
10,515
  1. Elbrus is not about "commercial success", it's a matter of technological independence.
  2. Thus, Elbrus doesn't exist in the same "dimension" with either ARM or x86. Imagine if Apple, having all their money and the access to IT-technologies, which mostly possessed by the West, develops a CPU of its own. Will it become just a third x86 CPU we'll be able to stick in our PCs just like Intel's or AMD's? Uh-huh, fat chance. Real chances are the Apple's proprietary CPU remains exclusively inside Apple's ecosystem.
  3. We don't actually see many companies trying to compete in any CPU market. There are no actual markets, but rather there are niches. Any new competitor for Intel/AMD? Any competition for ARM? Even Intel and NVIDIA failed miserably trying to get into the mobile market.
  4. General-purpose CPUs do not exist to please fanboys so that they could have it in their "PC-build" or to supply office workers with new electronic typewriters. They did some time ago, but not today. Now there is processing power everywhere: military equipment, industrial machinery, infrastructure management equipment, medicine, data-centers, data-centers, data-centers, consumer devices, oh, and did I mention data-centers?

Having all that said, what is the actual success criteria for Elbrus?

The development is funded by the government. The government presents the specs and requirements each CPU generation should meet. If Elbrus meets them => success. Because then it can be used to supply specified equipment with a specified amount of GFLOPs. As the architecture develops and CPU is becoming more and more capable, its possible applications widen up.

To my view, Elbrus was quite successfully developed in that fashion step by step. Elbrus models 8C and 8CB are already good enough to build a workstation or a server for data storage and running web-services. Now, it may not be as fast, or as good, but it doesn't have to. It just needs to be exactly good enough. As for the price, it doesn't even matter. Elbrus CPU being a Russian property is bought with rubles, not USDs. You buy Elbrus - you put the money into the Russian economy, not someone else's.

As the article says, Elbrus-16C is gonna be suitable for cloud servers which, again, widens up the application range for Elbrus. Now Russia can have Elbrus-based "grown-up" data-centers. And there are models for workstations (12C) and devices (2C3) in development too. All looks good, and again I will repeat: it doesn't have to compete with any CPUs in any benchmarks, it only has to be good enough. Good enough means you don't have to put an entire server rack where one other server would suffice. But if sometimes you have to put 2 CPUs instead of one into a server, then it's not a big deal.

The next step is for the government to tighten up the restrictions for its own structures when purchasing IT-equipment. An American wouldn't want the FBI to run its servers and PCs on some Chinese CPU, right? The same here. Then the same for commercial companies in which the government has a major share. It may not be as profitable from a single entity's point of view but it benefits the economy as a whole in the end.

As the production quantities will grow, the development price will spread across. Then it even could become affordable for a consumer to buy. But there is no universe for it to ever compete with the Wintel ecosystem even if it would be a miracle of a CPU. Well, maybe if Microsoft will port Windows for Elbrus and will promote it as a first-class platform so that any software and games would be optimized for the architecture, then maybe, he-he.
 
Oct 13, 2020
4
1
15
en.altlinux.org
The choice of VLIW for this long makes me curious about its inner workings and how Elbrus managed to succeed where others (namely Intel and Transmeta) failed.
Others tried borrowing (the Transmeta guy previously worked at Sun where he learned about MCST -- which was founded as Moscow Center for SPARC Technology back in 1990s) or brute stealing (Intel hijacked Babayan and a bunch of others from MCST). It's not enough, and fortunately the real compiler guys stayed with MCST.

There's little evidence Elbrus succeeded. Fundamental problems with VLIW remain: inability to find parallelism in everyday code, poor code density, low clock compare to OoO design.
It has succeeded for me at least, I've moved to e2k from then-recent Intel i5 system back in 2018. Yes, crappy javascript will be slow -- but a multi-meg framework for each of the bells and whistles I didn't need in the first place is definitely not Elbrus' blame. Works good enough for me on any of my daily tasks, including occasional maps.yandex.ru.

PS: no need to defy our government or our partners, they don't do anything wrong for that matter so it would be a traitor's act, not a whistleblower's one; and MCST has recently published a hefty official developer's guide that's quite useful to anyone optimizing their software, including SSOoO targets either: mcst.ru/elbrus_prog
 
Last edited:
  • Like
Reactions: hotaru.hino
Oct 13, 2020
4
1
15
en.altlinux.org
It just needs to be exactly good enough.
Exactly. And it already is: sdelanounas.ru/blog/shigorin :)

But if sometimes you have to put 2 CPUs instead of one into a server, then it's not a big deal.
In fact, MCST tends to ship single and quad systems -- 4C, 8C and 16C are all Quad Capable in Xeon speak -- even if I've tested their 802 model and it worked too.

Then it even could become affordable for a consumer to buy.
These are good enough for some of us already: 125 thousand roubles for E8C-mITX mobo is about $1500 and I can afford that any month, for example.

Thank you for a decent overview, saved as en.altlinux.org/elbrus/faq if you don't mind.
 
Oct 13, 2020
4
1
15
en.altlinux.org
Some article proofreading in case Anton sees this:
One interesting feature of the MCST Elbrus-16C processor is its support for 4-way symmetric multiprocessor configurations, a first for the company.
Definitely not the first: we've got 4.4 and 804 servers that employ quad 4C and 8C, accordingly; don't remember what was up with 2C, IIRC there were dual-CPU configurations possible.

Virtualization and 4-way SMP support will allow Russian server makers to build cloud servers based on the MCST Elbrus-16C parts over time when there are appropriate operating systems available.
These are available already, and we can port ALT Virtualization Server to e2kv6 just as we already did for aarch64 and ppc64le: getalt.org/en/alt-server-v

Спасибо за статью, несмотря на эти ляпы. Привет из Москвы ;-)
 
All looks good, and again I will repeat: it doesn't have to compete with any CPUs in any benchmarks, it only has to be good enough. Good enough means you don't have to put an entire server rack where one other server would suffice. But if sometimes you have to put 2 CPUs instead of one into a server, then it's not a big deal.
I wish this point were driven harder in tech circles. Often times it's not about how many bogomarks you can get. It's whether or not you get enough.
 

yaapelsinko

Honorable
Oct 19, 2014
4
2
10,515
The choice of VLIW for this long makes me curious about its inner workings and how Elbrus managed to succeed where others (namely Intel and Transmeta) failed.

But alas, I don't think we'll ever know unless someone at Elbrus is willing to defy the Russian government.

There were not as many open-source projects at the time of Itanium, while all the existing code-base was not even "paradigm-centric" but rather "Intel-x86-CPU-centric" and proprietary. "Open-source" and "cross-platform" weren't even a thing then. What even harder, Itanium had to fit into the entire existing ecosystem right away, while Elbrus doesn't.

Now one can gradually propose patches into public source-code repositories and build up and maintain Linux distros and software repositories for them. Software applications today tend to not rely on hardware much, having some interim layers instead, like Java and DotNet, let alone python or God forbid Javascript. And if it's built to run natively on the particular CPU, it will almost always run quite decently without even actual architecture-related optimizations.

For example, here we have a natively compiled Doom3BFG running on an Elbrus-8C processor at around 100fps and higher most of the time, while the CPU itself is at 10% to 30% load.
(from 51:00)
View: https://www.youtube.com/watch?v=buWzWtXHimk
 
Oct 13, 2020
4
1
15
en.altlinux.org
"Open-source" and "cross-platform" weren't even a thing then
Erm, Itanic started off in 2001 and here's what Linux 2.4.0's arch/ looked like already:
alpha arm i386 ia64 m68k mips mips64 parisc ppc s390 sh sparc sparc64

What I've quoted was sure being hyped by wintel camp but not true at all back at the day.

Software applications today tend to not rely on hardware much, having some interim layers instead
Those layers have started off with SSOoO arches and they are hard to get right, particularly with VLIW arches. Your best friend with e2k is still rather C++/Qt/Pg than some Java stack, for example (even if one can run Java or Python there as well).