Author |
Message |
|
Apple Silicon M1 Emulating x86 is Still Faster Than Every Other Mac in Single Core Benchmark - MacRumors
Rosetta 2 running x86 code appears to be achieving 78%-79% of the performance of native Apple Silicon code.
This is pretty interesting. It sounds like Apple's M1 ARM processor only loses about 20% of its performance when emulating x86 code. And even with that, it's still out-performing every existing Intel Mac in single-core performance!
Looks like PrimeGrid will still be quite usable on Macs for now :)
____________
8915 × 2 ^ 1507177 + 1 -- 453,710 digit PPSE
6603 × 2 ^ 1411654 + 1 -- 424,955 digit PPSE (DC) |
|
|
|
I am doubtful that the M1 does cpu extensions like FMA or AVX. And Rosetta2 emulating something like that...unlikely.
Note: I *like* what apple is doing with their custom CPUs. I am just not sure if it will be useful here on PG. I would be happy to be proven wrong.
____________
Reno, NV
|
|
|
rogueVolunteer developer
 Send message
Joined: 8 Sep 07 Posts: 1218 ID: 12001 Credit: 18,565,548 RAC: 0
 
|
I am doubtful that the M1 does cpu extensions like FMA or AVX. And Rosetta2 emulating something like that...unlikely.
Note: I *like* what apple is doing with their custom CPUs. I am just not sure if it will be useful here on PG. I would be happy to be proven wrong.
Agreed on FMA/AVX/AVX2 support.
mlucas runs on ARM and I know that Ernst has the goal of supporting PRP/primality tests for k*b^n+/-1 forms.
Any GPU app using OpenCL and no x86 asm should run on the M1. How fast is a different question.
If my wife lets me get one in spring, then I will port the mtsieve framework over to ARM. Most of the programs using the framework should port without a problem. Others will take a little more work. |
|
|
|
It seems if there can be a M1 ARM application made, then phones and pads could get code to crunch?
____________
My lucky numbers are 121*2^4553899-1 and 3756801695685*2^666669±1 |
|
|
Michael Goetz Volunteer moderator Project administrator
 Send message
Joined: 21 Jan 10 Posts: 13513 ID: 53948 Credit: 236,960,660 RAC: 0
                           
|
It seems if there can be a M1 ARM application made, then phones and pads could get code to crunch?
(Regarding phones and pads...) Doubtful.
iOS doesn't support BOINC. We have nobody to develop Android apps. So anything phone/tablet is a non-starter at the moment.
Then there's the part about us not really having a whole bunch of apps that *don't* use AVX anymore. Right now, the only non-AVX app we have is PPS-Sieve, and I'm not putting GPUs and phones together in the same app.
The only other sieve on the horizon is CW sieve, and there again we wouldn't want to mix GPUs and phones.
For non-AVX apps, I could see it being practical to have an app for Apple's ARM laptop. Whether we would *want* to do so is a different question. It's not clear whether we'll want to support it. We have enough trouble supporting MACs with x86 processors.
____________
My lucky number is 75898524288+1 |
|
|
Yves GallotVolunteer developer Project scientist Send message
Joined: 19 Aug 12 Posts: 644 ID: 164101 Credit: 305,010,093 RAC: 0

|
The Apple M1 CPU is a 2 x 4-core ARMv8: four performance cores (L1=128KB, L2=12MB shared) and four power-efficiency cores (L1=64KB, L2=4MB shared).
The SIMD instructions of ARMv8 are Neon (128-bit registers) which are similar to SSE4 instruction set.
Then M1 CPU will be faster than Intel Celeron (Gemini Lake) because of a larger cache and maybe a higher frequency but slower than Intel Core i3-10x00 (Comet Lake) because of AVX2/FMA3.
The speed of the Apple M1 GPU is 2600 GFLOPS (FP32/INT32). This is similar to the GeForce GTX 1650 (TPD 75W). But because the TDP of the M1 will be lower, a GPU app will certainly not run at full speed (GPU apps are slower on the mobile version of Nvidia GPUs).
In conclusion, a cheap gaming laptop with an i5 / Ryzen 5 and a GTX 1650 / Radeon RX 560X will clearly outperform a Mac with new M1 chip for crunching. |
|
|
|
Right now, the only non-AVX app we have is PPS-Sieve
The AP27 app can run without AVX; it has an SSE mode which can be activated using either the -sse2 or -sse41 flags. But that requires app_config.xml, which can't be accessed on Android unless the phone is rooted. (and that's assuming the Android client actually reads config files)
Could be fine for ARM Macs though, as SSE will likely be emulated in Rosetta 2 using ARM's NEON instruction set.
____________
8915 × 2 ^ 1507177 + 1 -- 453,710 digit PPSE
6603 × 2 ^ 1411654 + 1 -- 424,955 digit PPSE (DC) |
|
|
Yves GallotVolunteer developer Project scientist Send message
Joined: 19 Aug 12 Posts: 644 ID: 164101 Credit: 305,010,093 RAC: 0

|
The AP27 app can run without AVX; it has an SSE mode which can be activated using either the -sse2 or -sse41 flags. But that requires app_config.xml, which can't be accessed on Android unless the phone is rooted. (and that's assuming the Android client actually reads config files)
Could be fine for ARM Macs though, as SSE will likely be emulated in Rosetta 2 using ARM's NEON instruction set.
The GPU is more than ten times as fast as NEON code:
CPU: 3.2 GHz * 4 (Neon) * 8 (cores) = 102 INT32 GIPS
GPU: 2.6 FMA32 TFLOPS => 1300 INT32 GIPS
If you want to run a PrimeGrid app on Android or ARM Macs, the most efficient method is to translate OpenCL code to Vulkan compute shader. |
|
|
Michael Goetz Volunteer moderator Project administrator
 Send message
Joined: 21 Jan 10 Posts: 13513 ID: 53948 Credit: 236,960,660 RAC: 0
                           
|
Right now, the only non-AVX app we have is PPS-Sieve
The AP27 app can run without AVX; it has an SSE mode which can be activated using either the -sse2 or -sse41 flags. But that requires app_config.xml, which can't be accessed on Android unless the phone is rooted. (and that's assuming the Android client actually reads config files)
Could be fine for ARM Macs though, as SSE will likely be emulated in Rosetta 2 using ARM's NEON instruction set.
Of course a non-AVX version of the apps can be made for ARM processors, but it would be much slower. Do you have an old computer from about 10 years ago that predates the Sandy Bridge AVX CPUs? It will be like running on that.
Phone/pads are dead in the water because BOINC doesn't run on iOS and we have no Android developers. Even when we *did* have an app that was suitable for Android devices, we couldn't do it because we couldn't get anyone to work on the app.
Unless something radical changes, the only question is whether we're going to support Apple's ARM CPU under MacOS.
____________
My lucky number is 75898524288+1 |
|
|