Panfrost Gallium3D Driver Now Competing With Mali's Binary Driver In Some Workloads
While the "Panfrost" open-source, reverse-engineered Gallium3D driver for Arm's Mali Midgard/Bifrost graphics architectures were only merged to Mesa weeks ago, with a performance optimization added this weekend, the performance for this community-driven driver already makes it competitive to the official Arm binary driver at least for some OpenGL workloads.
Panfrost lead developer Alyssa Rosenzweig added a patch overnight to the Panfrost driver in Mesa 19.1-devel that closes much of the performance gap with the binary driver. They discovered a fast path that previously wasn't enabled for their metadata. This fast path discovered through reverse engineering is able to explain much of their previous performance shortcomings with the driver.
When enabling this fast path, which they assume is related to the GPU's tiler, the performance in tests like GLMark2 sees frame-rates going from previously around 20 FPS all the way up to being vsync capped at 60 FPS. Or in other tests with vsync disabled, the performance shoots up even higher.
Alyssa notes in the patch, "With this patch, on GLES 2.0 samples not involving FBOs, it appears performance is converging with (and sometimes surpassing) the blob."
This is quite the achievement with the Panfrost driver project still being so young. It's great the performance is getting in order. Though the driver isn't quite ready for end-users yet until they get their kernel-side bits also in order.
Panfrost lead developer Alyssa Rosenzweig added a patch overnight to the Panfrost driver in Mesa 19.1-devel that closes much of the performance gap with the binary driver. They discovered a fast path that previously wasn't enabled for their metadata. This fast path discovered through reverse engineering is able to explain much of their previous performance shortcomings with the driver.
When enabling this fast path, which they assume is related to the GPU's tiler, the performance in tests like GLMark2 sees frame-rates going from previously around 20 FPS all the way up to being vsync capped at 60 FPS. Or in other tests with vsync disabled, the performance shoots up even higher.
Alyssa notes in the patch, "With this patch, on GLES 2.0 samples not involving FBOs, it appears performance is converging with (and sometimes surpassing) the blob."
This is quite the achievement with the Panfrost driver project still being so young. It's great the performance is getting in order. Though the driver isn't quite ready for end-users yet until they get their kernel-side bits also in order.
9 Comments