
Expected GPU performance on an M1 - With 14 core GPU
What is the expected fps in benchmarks & games with a M1 Pro (with a 14 core GPU)?
System
Mac: MacBook Pro 14in - M1 Pro (G13S C0) - 8 Core CPU, 14 Core GPU
Distro: OS: Fedora Linux Asahi Remix 44 (KDE Plasma Desktop Edition) aarch64
Kernel: Kernel: Linux 7.1.6-400.asahi.fc44.aarch64+16k
Desktop: KDE 6.7.4
KDE Power Profile: Performance (PSA: Balanced is default, and takes a huge performance hit on games)
Games
Games are borderline unplayable. Issue seems to be GPU bound, since the resolution of the game has a big impact and CPU usages doesn't even get to 50%. (seems the GPU driver doesn't have a GPU usage feature)
Most games need to bet set to lowest with 720p resolution to get even there. I have tried both steam x86 and arm as well as proton arm and x86 versions and didn't notice any large differences.
Roboquest
30 to 50fps - Lowest with 720p. Some graphic glitches as well, sometimes doe dip below 30fps. Not enjoyable because this is a fast paced shooter.
Gatekeeper
50 to 90fps - Lowest with 720p. Plays well, but this is a very simple game graphically, however it might slow down in a longer run.
Palworld
23 to 33fps - Lowest with 720p. This fps is on a new save file, so won't be playable once anything else is going on.
Enshrouded
3fps (300-310ms/frame) - Unplayable. Lowest with 25% resolution scaling. Same fps on the title-screen and in game. fps is the same while sharders are compiling or done.
Benchmarks
vkmark - 2025.01
Vendor ID: 0x10005
Device ID: 0x0
Device Name: Apple M1 Pro (G13S C0)
Driver Version: 109056006
Device UUID: XXXXXXXXXXXXXXXXXXXXXX
[vertex] device-local=true: FPS: 6418 FrameTime: 0.156 ms
[vertex] device-local=false: FPS: 6557 FrameTime: 0.153 ms
[texture] anisotropy=0: FPS: 7796 FrameTime: 0.128 ms
[texture] anisotropy=16: FPS: 7584 FrameTime: 0.132 ms
[shading] shading=gouraud: FPS: 5497 FrameTime: 0.182 ms
[shading] shading=blinn-phong-inf: FPS: 5441 FrameTime: 0.184 ms
[shading] shading=phong: FPS: 4851 FrameTime: 0.206 ms
[shading] shading=cel: FPS: 4844 FrameTime: 0.206 ms
[effect2d] kernel=edge: FPS: 5589 FrameTime: 0.179 ms
[effect2d] kernel=blur: FPS: 4127 FrameTime: 0.242 ms
[desktop] <default>: FPS: 7305 FrameTime: 0.137 ms
[cube] <default>: FPS: 7972 FrameTime: 0.125 ms
[clear] <default>: FPS: 13900 FrameTime: 0.072 ms
vkmark Score: 6760
Furmark - v2.10.1 - arm64
[ Demo Quick Stats ]
- demo : FurMark (VK) (built-in: YES)
- renderer : Apple M1 Pro (G13S C0)
- 3D API : Vulkan 1.4.354
- resolution : 1920x1080
- SCORE : 2302
- duration : 60074 ms
- FPS (min/avg/max) : 29 / 38 / 42
GravityMark - arm64 v1.89
Performance is so low that there has to be some kind of bug going on with either the GPU driver or GravityMark itself.
./run_windowed_vk.sh -raster 1 -vulkan -mode hd -fps 1 -info 1 -asteroids 50k -lod 1 -temporal 0
Score = 58
Found a result from anther Asahi user
Summary
If I had to guess, I think some GPU features are very un-optimized since some games (Enshrouded) and some benchmarks (GravityMark) have wildly low fps. I know that the GPU driver for Linux was written from scratch, without any help from Apple, so I do appreciate this is working at all. However I would like to understand if this level of performance is expected and if there is any settings or work arounds to improve the GPU performance on games.