With some surprise, I discovered that for most habrizhiteli it goes without saying that there are very ordinary Xeons inside the server. All other processors are something far away and almost non-existent, therefore the article “
Processors for Corporations ” aroused a very lively interest. Since the topic is so interesting, let's try to fill the information vacuum. So,
Who buys them and why?
In one of these bulletins, Gartner clearly identifies three reasons for buying something other than x86:
- platform dependent code;
- performance;
- reliability.
Let's take it in order.
')
ELF Country
The first reason is simple: recompiling the code is always a risk, even if the platforms are similar, like, for example, SPARC / Solaris and POWER / AIX. And if the platform does not look like anything, then it is almost impossible to “get down” from it.
Now, with the ubiquity of Java, x86 is increasingly being used as an application server. Even Oracle, having in its portfolio a line of SPARC, as an application server focuses on Exalogic based on x86-servers. However, not all applications have been written in the last 3-5 years, so there are pretty often applications for HP-UX, Solaris and even System i in banks. Although, of course, in this segment of servers on x86 - the vast majority.
Size matters
Naturally, the question arises: maybe all these unusual processors are much more productive than Xeon's?
There are lots of tests of different degrees of objectivity. Here, for example, a command that can be executed on any * nix-machine:
openssl speed md5
But her results:

With this set of parameters, openssl simply calculates the hashes and detects how many such hashes could be calculated in three seconds. More precisely, how much data could be processed when calculating with blocks of appropriate length (the larger the block, the larger the total volume). Only the speed of the processor itself is tested - no buses, ports, peripherals are involved in the test.
The picture is far from the entire sample I have, but if you look closely, you can see a lot of interesting things:
- The UltraSPARC IV server processor, released in 2006, is only slightly more powerful than ARM, which can be found in any mobile phone today.
- The computing power of industrial RISC-processors 5-6 years old is about the same; IBM POWER is leading today.
- Xeon is not only not lagging behind, but also surpasses traditional RISC processors.
Of course, there is no more sense in this test than in the well-known exercise with a ruler. Moreover, the new SPARC processors (T4 and older) tear any Xeon like a Tuzik heater: a number of hashing algorithms are implemented in hardware. But nevertheless it is clear - the point is not in the speed of calculations. What is it?
For corporations, the overall server performance matters, which is achieved not only by the performance of a single processor, but also by the number of these processors.
Did you know that PayPal started with large Sun servers? First, the server was one, then two, and only then, when PayPal realized that the existing servers had long overgrown and would soon outgrow any, the applications were rewritten to work on clusters. There are not so many banks that have outgrown the Largest Servers in the world, only about fifty. Why are there banks, if Tom Kite himself says that there is no database capable of completely occupying a modern server ...
In general, Sun, HP and IBM have the largest Xeon-based servers today with 80 cores (8 chips with 10 cores), and Dell is limited to 40 cores.
At the same time, Sun released the
SPARC Enterprise M9000 server back in July 2008, containing up to 256 SPARC64 VII cores (note: the server went on sale in April 2007, but until July 2008 only 128 SPARC64 VI cores could be installed in it). Competitors have long lagged behind, but in 2011, IBM released its
POWER 795 server with 256 POWER 7 cores, and in 2013, HP came up with its
Integrity Superdome .
Sun had hard times, but they are over. The SPARC line is developing by leaps and bounds. Even though the size of Oracle servers is still far from the record (128 cores in the
SPARC Enterprise T5-8 or up to 192 cores in the
SPARC Enterprise M5-32 ), the record still belongs to the SPARC / Solaris platform:
Fujitsu M10-4S , up to 1024 SPARC M10 cores .
An inquiring mind will immediately cite the example of
SGI UV (up to 2048 Xeon cores) or Project Odyssey on x86 implantation in the Superdome. However, something is not seen until the database servers on such machines. And why do they need application servers? ..
RAS, two, three ...
Finally, the third reason for buying RISC servers is reliability. Reliability, Availability, Serviceability. Unlike Google, which knows that the server can disappear at any moment, and therefore there is no point in buying an expensive and reliable server, traditional relational DBMSs consider that the server is reliable.
Of course, there are all sorts of clustering technologies at various levels. However, if the server crashes, then, firstly, restoring the service on another cluster node will take some time (from several minutes to several hours), and secondly, there is always a risk that the restoration will be incomplete and / or incorrect. In general, the best protection is the one that didn’t work. Therefore, engineers are trying to protect the server from various surprises. The table below shows a set of such “surprises” on the example of Sun servers:

Note the following:
- The larger (and more expensive) the server, the higher the degree of its protection. Therefore, even if relatively small servers are needed, then from the point of view of reliability, it is better to buy big ones and cut them into domains.
- The security level of x86 servers (the first column is the Sun X2-8 server) roughly corresponds to mid-range RISC servers. HP's x86 servers are better off, but they still don't make it to the Superdome
How many buy them?
The server market has a fairly pronounced seasonality (a graph according to the IDC Worldwide Quarterly Server Tracker newsletter):

Of course, the data are very approximate. Moreover, when you take a bulletin for the first quarter of this year, where the figures are compared with the first quarter of last year, the figures for the last year differ from the last year's bulletin. If we normalize the graph, it turns out like this:

That is, HP and IBM, controlling approximately 30% of the market, periodically take away the palm from each other, approximately 15% of the market from Dell and Oracle (Sun) + Fujitsu, and 10% from the rest.
What are these astronomical sums made of? But from what (schedule for 2009 according to the materials of the Gartner “Market Trends: Transformation of Non-x86 Servers” newsletter):

If you count the server in pieces, then the share of x86 will be about 98%. The share in monetary terms is growing steadily, breaking the 50% mark in 2005.
About a third of the revenue comes from the RISC server, and the “other” significant part is the IBM System z and Fujitsu BS2000 mainframes (80% and 12%, respectively), and the rest is some kind of exotic.
And what's on the market?
Let's now figure out the server lines.
Ibm
Blue Giant has the largest set of rulers.
Firstly, these are mainframes leading their lineage from the famous System / 360 (with which the Single Series was copied). Then there were System / 370, System / 390, zSeries and, finally, System z, where "z" means "zero downtime". It is a world of its own with its own processors up to 5 GHz, with its tires and multiple duplication of everything. Scope - core banking (i.e. key banking systems) and plastic card processing.
Secondly, “systems for small business” - that’s how it was positioned when creating an AS / 400. Now, the ABSs on this platform work in several Russian banks from the top 30. At various times, the platform was called AS / 400, iSeries (yes, girls have an iPhone, and real kids have an iSeries) and, finally, System i. The basis of the platform is a virtual machine containing a relational database management system, user interface development tools and everything else. Like a JVM, only better. As a result, applications written several decades ago run on modern servers without recompilation.
Third, the AIX platform, which has its ancestry, like all commercial Unixes, from Unix System V. The servers were at different times called RS / 6000, pSeries, System p, and POWER systems.
From the hardware point of view, POWER Systems and System i are absolutely identical: this is a RISC server based on the POWER processor.
And finally, a line of servers based on x86 processors: PC Server, Netfinity, eServer xSeries, System x.
HP
The core of the company's wealth is a line of ProLiant servers based on x86 processors, purchased from Compaq.
The Integrity line is a server first on PA-RISC processors, and then on Intel Itanium.
The NonStop platform is widely known in narrow circles; its hardware is identical to Integrity Blade. However, talk about her in the next series.
Sun, Oracle and some Fujitsu
Oracle has two lines of servers: SPARC Enterprise based on RISC-processors SPARC and Sun x86 Servers (formerly SunFire X) based on x86. The SPARC line, in turn, consists of a T-series (formerly SunFire T) based on the “younger” SPARC T, M-series processors (formerly SunFire E and SunFire V) based on the “older” SPARC M processors and Fujitsu SPARC servers which can only be purchased from Oracle.
Dell
Dell is launching a single line of x86-based PowerEdge servers.
Words words...
Now it's time to figure out what RISC, NUMA, CMT is ...
RISC vs CISC
As is known, RISC stands for "Reduced Instruction Set Computer". Usually it is translated into Russian as “a computer with a limited set of instructions”, but this is not quite true. Rather, "a computer with a set of limited instructions."
Let's compare the same ADD command on Intel 80486 processors (typical CISC, Complex Instruction Set Computer) and SPARC V7:
| Intel 80486 | SPARC v7 |
Operand Types | al (ax, eax), imm8 (16,32) r / m8 (16,32), imm8 (16,32) r / m16 (32), imm8 r / m8 (16,32), r8 (16,32) r8 (16,32), r / m8 (16,32) | r, r, r r, r, d12 |
Team length | 2 - 9 | four |
Number of cycles | 13 | one |
80486 has many options for addressing command parameters, while the command itself has a variable length and a different execution duration.
Life has shown the advantage of RISC over CISC: it is easier to predict transitions, the internal pipeline is shorter, therefore, there is less overhead when switching tasks. Why does the x86 family show good performance? Because starting with the Pentium Pro processor, released in 1995, the complex system of x86 commands is translated into a set of simple RISC-core commands before execution.
Itanium in all statistical calculations is included in RISC, but in fact it is VLIW (Very Long Instruction Word), or rather, EPIC (Explicit Parallel Instruction Computer). Truly, what do you call a yacht?
The essence of this architecture is that there are several calculators in the processor, and the control word contains instructions for all calculators at once. For example, if we have this program
R2 = R3 + R4
R1 = R5 + R6
R7 = R2 + R1
then this microcode will be generated for it:
R2 = R3 + R4; R1 = R5 + R6
R7 = R1 + R2; nop
Parallelization is performed not by the processor, but by the compiler. As a result, writing a code generator becomes a difficult task.
Compared to VLIW, EPIC contains a number of improvements: command pre-selection, speculative execution, a marker for the dependence of the next operation on the current one ... But the essence is the same.
SMP vs NUMA
SMP is Symmetric Multiprocessor, i.e., an architecture in which each processor has access to each cell of shared memory. NUMA - Non-unified Memory Access, i.e., the processor has faster access to its memory and less fast access to someone else's:

Left - SMP, right - NUMA
It is clear that there are no miracles, and the exchange rate with the memory located on the same board as the processor is higher than with the memory on the other board. That is, from the point of view of physics, any sufficiently large machine in which there is more than one processor board is NUMA. The difference comes down to the fact that in SMP systems (AIX, Solaris) the operating system takes care of optimizing the placement of pages in physical memory, and in NUMA (HP-UX), an application can work on this optimization through a special API. As practice shows, applied optimization in this case does not justify itself.
There is another term in this field - CMT, Chip Multithreading. This refers to the T-line of SPARC processors. In fact, this is the same SMP, but the bus bandwidth is significantly limited. It is assumed that each core refers to its own memory area, which is typical for application servers, but not typical for a DBMS. Therefore, prior to T3, Sun did not officially recommend running the DBMS on T-series servers; on T4, Oracle already worked well, but the T5 line is already full-featured SMP servers.
And actually about RISC servers
So we got to the most interesting - industrial RISC-servers (the chart for 2009 according to the Gartner “Market Trends: Transformation of Non-x86 Servers” newsletter):

If we talk about Unix-servers, then there is a one-to-one correspondence “manufacturer — name of platform — processor — OS”:
Company | Ibm | HP | Oracle |
Ruler | POWER systems | Integrity | SPARC Enterprise |
CPU | Power | Intel itanium | SPARC |
OS | Aix | HP-UX | Solaris |
Architecture | SMP / RISC | NUMA / EPIC | SMP / RISC |
Well, now a little story ...
Where did RISC go?
In 1980, a RISC project was opened at Berkley University, which ended in 1982 with the advent of the RISC I processor. The processor itself did not go into the industrial series, but it spawned many followers.

HP
One of the first followers was MIPS. On these processors, the famous Silicon Graphics graphic stations were assembled, painting the harsh Russian reality of the 90s in Pelevin's novel “Generation P”. They also built servers Tandem NonStop - horizontally scalable ultra-reliable database platform and applications. Subsequently, Tandem was bought by Compaq, and they tried to remake it on Alpha, but without success. When Compaq was purchased by HP, NonStop was transferred to Itanium. Today, MIPS is found only in industrial computers.
ARM associates us rather with portable devices - phones, tablets and other iPhones. However, HP is launching a low-power Moonshot project. Prototypes are made on ARM processors, but most likely, the version on Intel Atom will go on sale.
Servers DEC Alpha all administrators with experience remember fondly. In the 90s, it would never occur to anyone to compare these high-performance 64-bit RISC processors with x86. By the way, one of the first search engines, Altavista, was created by Digital to demonstrate the power of Alpha processors to the world.
As it happens with many good technologies, Alpha was unlucky: in 1999, Digital was bought by Compaq, and in 2001, Compaq decided to switch to “industry standard” - Itanium.
HP itself before buying Compaq also created its RISC-processor - PA-RISC. Based on this processor, HP Integrity servers were released, which in some places still serve, despite the fact that the delivery of PA-RISC was terminated on December 31, 2008. Even in the form of spare parts.
In 2001, a joint initiative was announced by HP and Intel to create a "single industry standard server." The architecture was called IA64 (as opposed to IA32, which is nothing more than x86), the trademark is Itanium. True, evil tongues immediately renamed it Itanic. Intel made one mistake after another: first, the choice of the EPIC architecture can hardly be considered a good solution. Secondly, the processor claimed support for x86 instructions: companies bought new servers with the expectation that while old software based on x86 would work on them until they wrote a new one. But the old one worked poorly, not at all with the money that was paid for the new equipment, and nobody hurried to write the new one.
The release of servers on the new platform started IBM, Dell and HP. However, Intel's ongoing breakdowns in terms of developing new chips have led IBM to return to POWER, while Dell focused on x86. HP, on the other hand, transferred to Itanium all the platforms that it ended up with as a result of development and a series of acquisitions: HP-UX, OpenVMS and NonStop.
Now, especially after the loud statement of Oracle, Itanium is slowly bending down. And after HP buried so many interesting platforms, it seems fair ...
SPARC
SPARC (Scalable Parallel ARChitecture) is an open standard developed by Sun. The SPARC standard is registered in IEEE under the number 1754-1994, and its development is handled by the organization SPARC International, Inc., founded in 1989. Everyone can produce SPARC processors; all you need is to buy a license worth $ 99. Over the years, Texas Instruments, Ross Technology and even the Soviet company MCST (Moscow Center of Spark Technologies) were involved in the release of SPARC processors. But the main producers of processors and servers are, of course, Sun Microsystems and Fujitsu.

The figure shows green processors corresponding to the seventh version of the specification (SPARC V7), orange - SPARC V8, red - SPARC V9. Yellow fill means multi-core chip.
So, the UltraSPARC line was developed until 2004. After that, Sun began working on a brand new UltraSPARC V processor, codenamed Rock. It came to making a prototype and testing, but suddenly the work was stopped.
In parallel, in 2005, a new Niagara processor appeared. It was intended for application servers. He was distinguished
- low clock frequency (the application does not need a large computing power);
- a large (16) number of nuclei on a crystal;
- a simplified bus that worked well only when each core addressed its own memory region.
Time has shown that applications still need computational resources, so this niche was firmly occupied by Xeon, displacing the T-series from there.
Actually, all SPARC servers that were released until recently (M3000, M5000, M8000, M9000) are Fujitsu. How, you ask, did Sun control them? And it's very simple: nobody needs a server without an operating system, and Sun has the rights to Solaris. Here is a mutually beneficial cooperation.
Just a couple of years ago, analysts predicted the early death of SPARC, especially after the accident at Fukushima. Oracle seemed to have buried this trend, considering that the RAC on x86 would replace the big servers. However, this did not happen, and we had to develop what was, that is, the T-series.
Successes, it must be said, are simply amazing. Today, Oracle has a core code-named S3, on the basis of which all modern SPARC processors are built. T5 differs from T4 in an increased clock frequency (3.6 GHz versus 3.0 GHz), the number of cores on a chip (16 vs. 8) and the number of external links. As a result, the largest server on the T4 processor consists of 4 crystals (T4-4, 4 Ă— 8 = 32 cores), and on T5 - of 8 crystals (T5-8, 8 Ă— 16 = 128 cores). M5 is the same T5 with a large number of external interprocessor connections and a cache, but with a smaller number of cores. The maximum server is M5-32 (32 Ă— 6 = 192 cores).
Oracle SPARC processors have a lot of interesting properties: depending on the load, the number of threads executed by one core (from 1 to 8) is automatically adjusted, and when the number of cores involved decreases, the clock frequency of the working ones increases. A number of hashing and encryption algorithms are implemented in hardware.
Fujitsu after a long break also released a new processor - M10. This is the development of the SPARC64 line: the clock frequency has been increased, the floating point computing block has been redesigned ... In addition, the server architecture has been changed. Now they can be assembled from blocks, like IBM POWER 770. As a result, there can be up to 1024 cores (2048 threads) in one server.
Today, Oracle is the only Big Three company that has a distinct roadmap for the development of its RISC processors. On the official website, you can take a simple
picture for the presentation .
In lectures and seminars, Oracle talks about a new kernel that is in the testing phase. In addition, the software in silicon program is proclaimed, that is, hardware support for, for example, data types and Oracle Database compression algorithms.Power
1985 ( , Watson) «» RISC . 1986 IBM RS/6000; 1990 POWER — RS/6000 (RISC System/6000).

32- , — 64-. .
AIM (Apple, IBM, Motorola) PowerPC. , 2005 Freescale Semiconductor (, ) power.org — PowerPC. .
PowerPC64, — Sony PlayStation, Nintendo Wii, Microsoft Xbox 360…
, POWER 7 — RISC-. 1 4 (SMT1, SMT2, SMT4), , SPARC, . , , POWER 780, «-» — .
— POWER 795, 256 , 1024 .
POWER 8 , — …
Instead of conclusion
,
, 7 . :
- CAP-?
- Oracle RAC ?
- , Microsoft?
- ?
- , ?
- And much more...