Dynamic Caching will be the force behind M3 chips

Emre Çitak
Oct 31, 2023

Apple's new M3-series chips have introduced a number of new features and improvements, including a new GPU feature called Dynamic Caching. Dynamic Caching is a revolutionary new way for GPUs to handle memory, and it has the potential to significantly improve performance and efficiency for a wide range of applications.

Before we dive into Dynamic Caching, it's important to understand what GPU caching is in general. GPU caching is the process of storing frequently accessed data in the GPU's local memory for faster access. This can significantly improve performance, as the GPU does not have to waste time fetching data from system memory.

Traditional GPU caching schemes typically use a static allocation of memory for different types of data, such as textures, vertex buffers, and shader code. This approach can be inefficient, as it is possible that some types of data will be used more frequently than others.

How does Dynamic Caching work
Dynamic Caching is set to increase the rendering and gaming performance of the new Macs - Image courtesy of Apple

How does Dynamic Caching work?

Dynamic Caching addresses the inefficiencies of traditional GPU caching by dynamically allocating memory to different types of data in real-time. This is done by monitoring how often different types of data are being accessed and allocating more memory to the types of data that are being accessed more frequently.

Dynamic Caching is implemented in hardware on the M3-series chips. This means that it is completely transparent to developers and does not require any changes to applications.

Dynamic Caching offers a number of benefits, including:

  • Improved performance: Dynamic Caching can significantly improve performance by ensuring that the GPU is always using the optimal amount of memory for each task. This is especially beneficial for graphics-intensive applications and games
  • Increased efficiency: Dynamic Caching can also increase efficiency by reducing the amount of data that needs to be transferred between the GPU and system memory. This can free up bandwidth for other tasks and reduce power consumption
  • Reduced latency: Dynamic Caching can also reduce latency by ensuring that the GPU always has access to the data it needs. This is important for applications that require real-time responsiveness, such as virtual reality and augmented reality applications

Dynamic Caching is a relatively new technology, but it has the potential to become a standard feature in all GPUs in the future. As more applications and games take advantage of Dynamic Caching, we can expect to see even greater performance improvements.

Featured image credit: Apple.


Tutorials & Tips

Previous Post: «
Next Post: «


  1. Michael Khalsa said on November 12, 2023 at 5:52 am

    Question: is this not the same as CUDA dynamic memory virtualization for gpu that has been around for many years?

    Is not the amount of memory needed for a gpu shader set by the kernel driver, and thus requires an analyses of the code by an aware compiler?

    I noticed in some m3 benchmarks by art is right for certain Lightroom functions that a lower binned m3 pro beet the higher binned m3 pro with more gpu cores. He ran the benchmark several times, which was consistent. Perhaps this is an oddity from an improperly tuned dynamic caching, because the amount of unified memory was equal for both machines, and maybe the lower core count version did not require the dynamic caching (as more ram available per core)???, of which the overhead was not needed???

    Hoping someone who is fluent with this can answer

Leave a Reply

Check the box to consent to your data being stored in line with the guidelines set out in our privacy policy

We love comments and welcome thoughtful and civilized discussion. Rudeness and personal attacks will not be tolerated. Please stay on-topic.
Please note that your comment may not appear immediately after you post it.