Home > News content

Apple Mac switching ARM architecture: why can't X86 software?

via:驱动之家     time:2020/11/14 17:59:15     readed:1050

As you all know, Apple announced its new MacBook product in its latest autumn launch. The new MacBook replaced the M1 chip based on ARM architecture developed by apple, and apple turned from x86 camp to arm.


ARM chip for apple MacBook replacement

Traditionally, ARM is a mobile platform architecture, which is more energy efficient and weak than desktop X86 chips. This time Apple MacBook ARM, and macOS 11 still compatible with software that has been developed based on X86macOS, which confuses many friends


Before the use of ARM chip surface tablet, running x86 software effect is not ideal, macbook will repeat the same mistake?

There is a reason for this concern. Before this, Microsoft has already made this kind of attempt. Microsoft has launched a surface Pro x tablet with ARM chip, which is compatible with win10 software of X86. However, people find that the experience is not ideal, and the traditional software runs slowly and slowly. Can MacBook with ARM chip have such a problem? This is to analyze.

Is MacBook's arm chip strong enough?

Whether the new MacBook is slow to run the old software or not, the key factor is naturally the new M1 chip. It is generally believed that the performance level of ARM chip can not be compared with that of X86. After all, arm is a simple instruction set RISC, while x86 is a complex instruction set CISC. The complex instruction set is naturally much more powerful, but in fact, this is a misunderstanding.


On a scale, Apple M1 chips enough to match top X86 desktop processors

With the development of CPU, the boundary between RISC and CISC has been relatively blurred. In the current x86 processor, complex instructions are also split into class simple instructions for execution.

On a scale, ARM chips designed by Apple have caught up with X86, The A14 chip area, for example, mm,88 A total of 11.8 billion transistors, AMD area of one CCD in the latest Zen3 processor is 80.7 mm,.(Agencies A total of 4.15 billion transistors. Taking into account that A14 also encapsulates AI modules, GPU, etc, A14 chip uses five nm of technology, The 5800 X uses a 7 nm process, As a matter of fact, everyone's CPU unit, The scale is already parallel.

After understanding the scale, let's take a look at the performance measurement. Here, we refer to the data of AnandTech. AnandTech used the industry authoritative performance test suite spec 2006 to compare and test the performance of Apple A14, AMD zen3 and Intel tiger lake. The results are as follows.

The first is the integer performance. You can see that the A14 is not falling behind.


Let's look at floating-point performance. A14 and zen3 are significantly ahead of tiger lake.


AnandTech also used geekbench, which is very familiar to all, and the results are as follows.


As you can see, A14 has been able to catch up with the current top-level x86 processor in terms of single thread performance. This time, the M1 processor used by Apple MacBook is similar to the A14 processor, but the specification is higher. The scale of transistors has reached 16 billion, and two cores are added. The performance is reassuring.

As a matter of fact, it is not difficult to find out why the Surface Pro X is running slowly. Surface Pro X use Qualcomm SQ1/SQ2 processor, which is basically Cellon 855 vest. While even Cellon 865, compared with A14 and the latest X86 processors, performance is still not very good enough

This situation, coupled with Win10on ARM low efficiency of instruction translation, Surface Pro X the experience of running X86 software is not very ideal. Yes, here you can see that ARM processor runs X86 software, other than its own performance

Is MacOS 11 instruction translation efficient?

If x86 software wants to run on ARM chip, it needs instruction translation. Although arm instruction set does not mean low performance, it is different from x86 after all. Instructions need to be translated before ARM chip can execute.

At this year's WWDC conference, apple has unveiled a translation plan. The company announced that it will roll out Rosetta 2 intermediate transition layer for macOS smooth transition to a ARM platform. If you're old Rosetta, you must be familiar with the word


Mac the migration platform, Apple has done it once, when Mac moved from PPC to a compatible layer called

The function of Rosetta 2 is that it can make the Mac OS of arm platform run the vast majority of X86 software directly through instruction translation. From Apple's introduction, Rosetta 2's performance is quite good. It does not translate instructions when the software is running, but completes the conversion when the software is installed.

Of course, this does not mean that Rosetta 2 can achieve complete lossless performance, and it is not compatible with AVX instructions. If x86 software relies on AVX or even avx2, the running efficiency of Rosetta 2 will decline significantly due to the lack of corresponding high-performance instructions on ARM platform. Not all software will use AVX instruction set. Generally speaking, Rosetta 2's performance should be acceptable.


This time, MAC is moving from x86 to arm, and Rosetta 2 also plays an important role in compatibility of old x86 software

What about Rosetta 2's actual performance? We can measure it in two ways.

First, the reference Rosetta.When Apple moved from PowerPC to x86, it also used a similar scheme. At that time, there were not many people complaining about the low performance of Rosetta. Naturally, we can expect Rosetta 2.

Secondly, it refers to the actual measurement of developers.As a matter of fact, Apple has launched a Mac Mini development machine based on a12z chip earlier. Developers have been exposed to Rosetta 2 very early, but so far, there is no news about the low performance of Rosetta 2. It can be seen that Rosetta 2's actual combat performance should be quite good.


Before MacBook switched to arm, arm's Mac Mini development machine had already existed, and there was no negative performance news

At this point, we can analyze why the performance of surface Pro x is so bad. Running x86 software in Windows 10 on arm of surface Pro x is transcoding while running. It is not like apple Rosetta 2 that transcoding is done well during installation, and there is no need to transcode again when running. Coupled with the weaker SQ1 / SQ2 processor, it is reasonable to slow down the running of X86 software.


At this point, I believe everyone can draw a conclusion. The M1 processor used in MacBook is very powerful enough to compete with the top-notch x86 processor on the same platform; and apple has prepared an efficient Rosetta 2 instruction translation scheme in Mac OS 11, so we need not worry too much about whether the previous x86 software can run smoothly.

According to apple, the situation is more optimistic than the analysis in this paper. Apple claims that the M1 is twice as good as the x86 processor used in macbooks and consumes only 25% of its power. From a variety of perspectives, the new MacBook is worth looking forward to. Let's wait for the actual launch.


Is the new MacBook really as powerful as Apple announced?



Link to the original text:Pacific computer network

China IT News APP

Download China IT News APP

Please rate this news

The average score will be displayed after you score.

Post comment

Do not see clearly? Click for a new code.

User comments