[g4.6pre-65-g6701cd284] Freezes on Apple Silicon (M1 SoC)

Bugs that have been investigated and resolved somehow.

Moderator: GZDoom Developers

Forum rules
Please don't bump threads here if you have a problem - it will often be forgotten about if you do. Instead, make a new thread here.
Warrex
Posts: 78
Joined: Thu Aug 08, 2013 2:00 pm

Re: [g4.6pre-65-g6701cd284] Freezes on Apple Silicon (M1 SoC

Post by Warrex »

What are you talking about? I am not an Apple evangelist nor do I point to their marketing material. I did point you to several benchmarks which show the M1s single threading performance. Anandtech is not part of Apple nor is the Standard Performance Evaluation Corporation (SPEC) or Maxon.

If GZDoom is a workload the M1 performs worse in than in these other tests this is fine to me. I was just wondering if there was optimization potential down the road. If there is not or you do not care, this is also fine. Our Core i7s and my Mac Mini are already plenty fast.
User avatar
Chris
Posts: 2983
Joined: Thu Jul 17, 2003 12:07 am
Graphics Processor: ATI/AMD with Vulkan/Metal Support

Re: [g4.6pre-65-g6701cd284] Freezes on Apple Silicon (M1 SoC

Post by Chris »

Graf Zahl wrote:By now ARM looks to be far better suited for the future, as there's a lot more competition and less reliance on one or two manufacturers.
I wonder how things will go if nVidia ends up buying ARM as predicted. There are concerns they may try to raise licensing costs or restrict what has been a relatively easy to access design. RISC-V is another thing I've been hearing more of lately as an up-and-coming competitor to x86 and ARM.
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 49252
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Re: [g4.6pre-65-g6701cd284] Freezes on Apple Silicon (M1 SoC

Post by Graf Zahl »

We'll have to see. If NVidia raises licensing fees it might ultimately play into Apple's hands which surely is not what NVidia wants, though.
Warrex
Posts: 78
Joined: Thu Aug 08, 2013 2:00 pm

Re: [g4.6pre-65-g6701cd284] Freezes on Apple Silicon (M1 SoC

Post by Warrex »

Nice article on RISC-V: https://arstechnica.com/gadgets/2020/12 ... -per-watt/

TLDR: Promising but not there yet, e.g. due to missing software. In the medium to long run a potential threat to ARM which I think makes it more unlikely for Nvidia to raise licensing fees but we will see.

On Apple vs. Nvidia:
"It’s also unlikely – at least according to Alan Priestley, VP Analyst at Gartner – that Apple will make a U-turn on its decision to switch its Mac over to Arm-based processors. Priestley claims Apple already “holds an architectural license for the ARM ISA” which means the Nvidia acquisition should have little influence. Plus, it’s in both Apple’s and Nvidia’s financial interest to continue the partnership."

Source: https://www.trustedreviews.com/news/how ... on-4098618
Cacodemon345
Posts: 422
Joined: Fri Dec 22, 2017 1:53 am
Graphics Processor: ATI/AMD (Modern GZDoom)
Contact:

Re: [g4.6pre-65-g6701cd284] Freezes on Apple Silicon (M1 SoC

Post by Cacodemon345 »

People are expecting Nvidia to alter the Neoverse stuff when Arm is bought by them, which is pretty anti-competitive.
Warrex
Posts: 78
Joined: Thu Aug 08, 2013 2:00 pm

Re: [g4.6pre-65-g6701cd284] Freezes on Apple Silicon (M1 SoC

Post by Warrex »

Is GZDoom using NEON on ARM?

I just saw that on X86 the used SIMD extensions are all listed. NEON does not show up in the log on the M1 though.
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 49252
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Re: [g4.6pre-65-g6701cd284] Freezes on Apple Silicon (M1 SoC

Post by Graf Zahl »

ARM has never been a primary target platform. So it neither has full feature checks nor implementation. It'd only be relevant for the software renderer anyway - unless it uses the extensions for regular math code.
Warrex
Posts: 78
Joined: Thu Aug 08, 2013 2:00 pm

Re: [g4.6pre-65-g6701cd284] Freezes on Apple Silicon (M1 SoC

Post by Warrex »

Arm themselves state that "Neon technology provides a dedicated extension to the Instruction Set Architecture, providing additional instructions that can perform mathematical operations in parallel on multiple data streams" and that "2D/3D graphics or gaming" are a use case.

Source: https://developer.arm.com/architectures ... or-armv8-a
dpJudas
 
 
Posts: 3177
Joined: Sat May 28, 2016 1:01 pm

Re: [g4.6pre-65-g6701cd284] Freezes on Apple Silicon (M1 SoC

Post by dpJudas »

I think Graf does know what SIMD instructions are. ;)

GZDoom actually does use NEON on the M1 simply because clang/llvm itself will automatically use it as it is guaranteed to be available on the platform. It is one of the reasons that the M1 benchmarks perform so nicely as they do, since x64 compiled software generally only can depend on SSE2 per default (the base instruction set for x64) and not AVX2 or newer. That is, the M1 compiled GZDoom uses NEON everywhere where the C++ compiler's autovectorizer can find an usage while x64 builds generally only uses it where a developer manually added intrinsics in the code (*).

*) Technically x64 can be autovectorized using only the SSE2 instruction set. However, that greatly limits what it can do because a lot of the instructions are missing in such an early version of the x64 SIMD instruction set.
_mental_
 
 
Posts: 3820
Joined: Sun Aug 07, 2011 4:32 am

Re: [g4.6pre-65-g6701cd284] Freezes on Apple Silicon (M1 SoC

Post by _mental_ »

For an unknown reason, people think that the list of instructions supported by their CPUs (potentially incomplete as there is no detection for the recent additions) is the list of instructions that is actually used by GZDoom.
It’s certainly not the first time this misunderstanding arises.
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 49252
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Re: [g4.6pre-65-g6701cd284] Freezes on Apple Silicon (M1 SoC

Post by Graf Zahl »

dpJudas wrote:I think Graf does know what SIMD instructions are. ;)

GZDoom actually does use NEON on the M1 simply because clang/llvm itself will automatically use it as it is guaranteed to be available on the platform. It is one of the reasons that the M1 benchmarks perform so nicely as they do, since x64 compiled software generally only can depend on SSE2 per default (the base instruction set for x64) and not AVX2 or newer. That is, the M1 compiled GZDoom uses NEON everywhere where the C++ compiler's autovectorizer can find an usage while x64 builds generally only uses it where a developer manually added intrinsics in the code (*).
Even then, there's very little opportunity to use the auto-vectorizer in the hardware renderer's math code as it does not really work on vector data. But AVX vs. SSE2 does surely not help at all - the main bottleneck in that code is the CPU cache, not the instruction set. Which is why it is almost impossible to further optimize it.
Warrex
Posts: 78
Joined: Thu Aug 08, 2013 2:00 pm

Re: [g4.6pre-65-g6701cd284] Freezes on Apple Silicon (M1 SoC

Post by Warrex »

Rachael wrote:Adding more cores is nice and all but core speed is still ARM's weakest point, in my opinion. But the M1 surprised many of us - including me - so we'll see how that pans out.
This is how, Rachel: https://www.anandtech.com/show/17019/ap ... erformance
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 49252
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Re: [g4.6pre-65-g6701cd284] Freezes on Apple Silicon (M1 SoC

Post by Graf Zahl »

I'll wait untilI see real numbers. Same for Intel's Alder Lake. It has frequently happened that much in these presentations turned out to be bullshit after all.
Warrex
Posts: 78
Joined: Thu Aug 08, 2013 2:00 pm

Re: [g4.6pre-65-g6701cd284] Freezes on Apple Silicon (M1 SoC

Post by Warrex »

Graf Zahl wrote:I'll wait untilI see real numbers. Same for Intel's Alder Lake. It has frequently happened that much in these presentations turned out to be bullshit after all.
Apple rather tends to understate than overstate the performance of their products but I understand what you mean.

I do remenber however that you were not particularly fond of synthetic benchmarks. Just out of curiosity: What are the numbers you would be interested in the most? Do you do anything CPU intensive besides compiling code?
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 49252
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Re: [g4.6pre-65-g6701cd284] Freezes on Apple Silicon (M1 SoC

Post by Graf Zahl »

First, I want to see any number, not some marketing claims. Even if someone states, "1.5x higher IPC" that does not mean much because it is most certainly not factoring in the RAM latency.
Locked

Return to “Closed Bugs [GZDoom]”