Linux GPU Driver for Intel Lunar Lake Chip Adds CMRR Variable Refresh Rate Feature

13th Gen Intel Core mobile CPU
(Image credit: Intel)

A recent graphics driver update to Intel's upcoming Lunar Lake CPU adds CMRR to the chip's integrated graphics (via Phoronix). CMRR, short for Content Match Refresh Rate, is based on Variable Refresh Rate (VRR), the technology featured in Adaptive Sync, AMD FreeSync, and Nvidia G-Sync. This new feature could be a big deal for both Lunar Lake and future Intel GPUs that might also come with CMRR.

The drivers in question are Lunar Lake's Linux GPU drivers and haven't been officially announced — all we have to go on is this comment from the update itself:

"CMRR is a display feature that uses adaptive sync framework to vary Vtotal slightly to match the content rate exactly without frame drops. This feature is a variation of VRR where it varies Vtotal slightly (between additional 0 and 1 Vtotal scanlines) to match content rate exactly without frame drops using the adaptive sync framework."

That's not exactly a ton to go off of, unfortunately. However, Vtotal seems to be short for Vertical Total, which is a technical term associated with display technology. Basically, a higher Vertical Total means less strobe crosswalk (sometimes called ghosting). CMRR could be intended to reduce strobe crosswalk without impacting the framerate.

CMRR is exclusive to Intel GPUs with display version 20, which presumably will be present on Lunar Lake. However, it's also possible that other Intel GPUs, such as Arc Battlemage discrete graphics cards, will have display version 20 and CMRR. For now we can only really speculate on what CMRR will actually do, how useful it will be, and what GPUs will get it.

That Lunar Lake's drivers are getting this new feature nearly a year before the CPU is set to launch is a good sign. Lunar Lake is due in the second half of 2024, and a steady march of Linux updates to various apps and drivers indicates that progress on Lunar Lake must be going decently well.

Matthew Connatser

Matthew Connatser is a freelancing writer for Tom's Hardware US. He writes articles about CPUs, GPUs, SSDs, and computers in general.

  • edzieba
    This article seems to be incredibly confused over terminology.:

    DP Adaptive Sync: the eDP (embedded DisplayPort) function to change display update rate as needed to reduce power by allowing panels to self-refresh (PSR) or just to vary refresh rate within the display's regular refresh capaciblity.

    'FreeSync': AMD's initial use of DP Adaptive Sync to (somewhat) match the capabilities of GSync. It's roots in eDP are why the early Fresync demos were with laptops using eDP rather than with external monitors.

    GSync: Nvidia's VRR implementation predating FreeSync, and not based on eDP Adaptive Sync but instead a clean-sheet implementation. Also refers to the FPGA modules acting as panel controllers to implement this protocol, but later monitors have had 3rd party controllers that also implement the same protocol.

    Variable Refresh Rate: general heading for all variable refresh rate techniques and protocols, not any specific technique or protocol.

    OK terminology out of the way. What is going on here with Intel's CMRR is nothing to do with VRR for gaming. Instead, this is an implementation of good ol' eDP Adaptive Sync in order to match panel refresh rate to (or to an integer multiple of) the framerate of media being played back. e.g. a 60 FPS video would drive the display at 60Hz, a 24 FPS video would drive it at 24Hz (or or 48Hz or 96Hz), etc. More specifically, this is for dealing with the weird 23.97 FPS and 29.97 FPS media (due to legacy colour subccarrier tomfoolery with NTSC) that needs only slight variance in update rate to remain in sync with audio. Adding and removing lines from the frame (the VTotal modification) without modifying VF allows for that slight change in update rate to keep things in sync.
    Reply