<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/gnome-meets-panfrost-ky0t8r4ct" -->

---
title: GNOME meets Panfrost | daily.dev
description: Alyssa Rosenzweig, an intern at Collabora, achieved the goal of running GNOME3 on the open-source Panfrost Mali GPU driver two months ahead of schedule. Key...
canonical: https://daily.dev/posts/gnome-meets-panfrost-ky0t8r4ct
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: GNOME meets Panfrost | daily.dev
og:description: Alyssa Rosenzweig, an intern at Collabora, achieved the goal of running GNOME3 on the open-source Panfrost Mali GPU driver two months ahead of schedule. Key...
og:url: https://daily.dev/posts/gnome-meets-panfrost-ky0t8r4ct
og:image: https://api.daily.dev/og/posts/Ky0T8R4ct.png
og:image:alt: GNOME meets Panfrost
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# GNOME meets Panfrost

**[Collabora Blog](https://daily.dev/sources/collabora)** · 4 min read · 0 upvotes · 0 comments

## Summary

Alyssa Rosenzweig, an intern at Collabora, achieved the goal of running GNOME3 on the open-source Panfrost Mali GPU driver two months ahead of schedule. Key improvements included researching and optimizing Mali's hierarchical tiling (tile sizes from 16x16 to 2048x2048 pixels), implementing scissor-based tile culling to reduce render bandwidth for desktop composition workloads, and replacing hard-coded GPU job ordering with a topological-sort-based dependency management system (scoreboarding). These changes fixed hundreds of failing dEQP tests and moved Panfrost closer to OpenGL ES 2.0 conformance.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://www.collabora.com/news-and-blog/blog/2019/06/26/gnome-meets-panfrost>

## Questions this post answers

### How does Mali GPU hierarchical tiling work and what tile sizes does it support?

Mali's hierarchical tiling lets the GPU use tiles ranging from 16x16 pixels up to 2048x2048 pixels. This sliding scale allows different content types — such as 3D games versus desktop UIs — to be optimized differently. The tiling configuration is handled by the driver, which must research and tune it for performance and memory usage, even though the hardware executes it.

_Developers working on Mali GPU drivers track Panfrost and Mesa tiling developments on daily.dev._

### What is GPU job scoreboarding in the context of Mali and Panfrost?

GPU job scoreboarding in Mali manages execution order dependencies between GPU jobs (e.g., vertex jobs must complete before tiler jobs can read their output). Panfrost replaced hard-coded job ordering with a generic dependency management system using topological sorting, allowing the driver to specify high-level dependencies and automatically compute submission order and scoreboard flags. This enabled new features like rasterizer discard to be added with ease.

_Open source GPU driver contributors follow Panfrost internals and Mesa developments on daily.dev._

## Similar posts on daily.dev

- [Mesa's Rusticl Now Enables Arm Mali Panfrost Driver Support By Default](https://daily.dev/posts/mesa-s-rusticl-now-enables-arm-mali-panfrost-driver-support-by-default-itpmna5qe) · Phoronix · 0 upvotes · 0 comments
- [Rust-Based Arm GPU Kernel Driver "Tyr" Begins Running GNOME & Basic Games](https://daily.dev/posts/rust-based-arm-gpu-kernel-driver-tyr-begins-running-gnome-basic-games-8w2bxxznp) · Phoronix · 0 upvotes · 0 comments
- [Prominent Mesa Developer Now Working For Arm On PanVK & Panfrost Code](https://daily.dev/posts/prominent-mesa-developer-now-working-for-arm-on-panvk-panfrost-code-xsqflqtlc) · Phoronix · 0 upvotes · 0 comments
- [PanVK Mali Vulkan Driver Lands In-Memory Cache & On-Disk Shader Cache Support](https://daily.dev/posts/panvk-mali-vulkan-driver-lands-in-memory-cache-on-disk-shader-cache-support-y2z1wbliv) · Phoronix · 0 upvotes · 0 comments
- [GNOME Mutter GPU Reset Recovery Becoming A Reality](https://daily.dev/posts/gnome-mutter-gpu-reset-recovery-becoming-a-reality-ynfo0myjs) · Phoronix · 0 upvotes · 0 comments

---

Tags: [#linux](https://daily.dev/tags/linux)

[View this post on daily.dev](https://daily.dev/posts/gnome-meets-panfrost-ky0t8r4ct)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"GNOME meets Panfrost","url":"https://daily.dev/posts/gnome-meets-panfrost-ky0t8r4ct","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/gnome-meets-panfrost-ky0t8r4ct"},"datePublished":"2026-08-11T08:57:19.463Z","dateModified":"2026-08-11T09:35:52.857Z","description":"Alyssa Rosenzweig, an intern at Collabora, achieved the goal of running GNOME3 on the open-source Panfrost Mali GPU driver two months ahead of schedule. Key...","image":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/3406433c07145f145b68bd5ec959ba0f?_a=AQAEuop","thumbnailUrl":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/3406433c07145f145b68bd5ec959ba0f?_a=AQAEuop","isAccessibleForFree":true,"articleSection":"Collabora Blog","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"Collabora Blog","logo":"https://media.daily.dev/image/upload/s--ZGZ0FjqS--/f_auto,q_auto/v1786438306/logos/collabora?_a=BAMAMicg0","url":"https://daily.dev/sources/collabora"},"commentCount":0,"discussionUrl":"https://daily.dev/posts/gnome-meets-panfrost-ky0t8r4ct","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":0},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"linux","timeRequired":"PT4M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Collabora Blog","item":"https://daily.dev/sources/collabora"},{"@type":"ListItem","position":3,"name":"GNOME meets Panfrost"}]}
{"@context":"https://schema.org","@type":"FAQPage","@id":"https://daily.dev/posts/gnome-meets-panfrost-ky0t8r4ct#faq","mainEntity":[{"@type":"Question","name":"How does Mali GPU hierarchical tiling work and what tile sizes does it support?","acceptedAnswer":{"@type":"Answer","text":"Mali's hierarchical tiling lets the GPU use tiles ranging from 16x16 pixels up to 2048x2048 pixels. This sliding scale allows different content types — such as 3D games versus desktop UIs — to be optimized differently. The tiling configuration is handled by the driver, which must research and tune it for performance and memory usage, even though the hardware executes it. Developers working on Mali GPU drivers track Panfrost and Mesa tiling developments on daily.dev."}},{"@type":"Question","name":"What is GPU job scoreboarding in the context of Mali and Panfrost?","acceptedAnswer":{"@type":"Answer","text":"GPU job scoreboarding in Mali manages execution order dependencies between GPU jobs (e.g., vertex jobs must complete before tiler jobs can read their output). Panfrost replaced hard-coded job ordering with a generic dependency management system using topological sorting, allowing the driver to specify high-level dependencies and automatically compute submission order and scoreboard flags. This enabled new features like rasterizer discard to be added with ease. Open source GPU driver contributors follow Panfrost internals and Mesa developments on daily.dev."}}]}
```

