AMD adopts FRED together with Intel for Zen 6 architecture — replacement for decades-old IDT can improve performance and stability
Good riddance, IDT. You won't be missed.
Get 3DTested's best news and in-depth reviews, straight to your inbox.
You are now subscribed
Your newsletter sign-up was successful
AMD appears to be fundamentally redesigning its CPU architecture for the upcoming Zen 6 chips, rather than making it a subset of Zen 5. As a part of those improvements, thanks to X user InstLatX64, we now know that AMD has finally adopted Intel's FRED instructions for its new silicon, along with fresh matrix multiplication and bit reversal instructions.
FRED is a wholesale replacement of the 80286-era Interrupt Descriptor Table (IDT) mechanism that's well over 40 years old by now. The IDT is currently the standard way to handle system events, like a network packet being delivered or mouse input, and passing its data to a driver or application.
AMD's adoption of FRED is the result of both companies creating the x86 Ecosystem Advisory Group to coordinate work on the new instruction set. Last October, one year after the alliance's inception, AMD agreed to implement FRED on its upcoming chips. At this moment, no production chips from either company support FRED, though it's a reasonable expectation that Intel Nova and Panther Lake, and AMD Zen 6, will be the first lineups to do so.
Things looked a little shaky on the interoperability front for a little while, as AMD had its Supervisor Entry Extensions (SEE). While Intel's FRED is a full and complete replacement of IDT, AMD SEE can best be described as a viable workaround that requires as few changes as possible to legacy software.
Linus Torvalds himself clearly outlined his opinion in a forum post, hoping that both vendors would implement both ideas, but praising Intel's approach as a more complete clean-room solution that gets rid of legacy cruft entirely.
Regarding software support, the Linux kernel has had provisional support for FRED since version 6.9. Once again, it's reasonable enough to expect that whichever version of desktop or server Windows comes next will also have the feature enabled. Note that only low-level software like operating systems and drivers can use the feature; it's not a concern for actual applications.
As to what FRED actually is, we can offer an oversimplification. A system event (say, getting an incoming network packet) is called an interrupt and the data and/or code transfer for handling involve a ring transition. This scenario happens constantly in any operating system, across every part, from storage I/O (a write being complete) to mouse input (say, a simple click).
Get 3DTested's best news and in-depth reviews, straight to your inbox.
Until now, programmers had to rely on IDT, for which the accurate technical adjectives are hacky and janky. IDT enabled only a half-assed transition from kernel code to application code, meaning programmers had to perform many other operations manually, be careful about edge cases, think about multiple ring levels, and work around potential race conditions (where two system events happen simultaneously and step over each other).
FRED improves on all fronts by providing one-shot instructions to guarantee a clean transition from kernel to application and back, with a consistent stack (the information about the event and where to continue execution). The main FRED instructions are atomic, meaning they execute all at once (or not at all), so programmers don't have to worry about an inconsistent state when they need to handle an interrupt. There's far less mental overhead, too, as there is much less to think about. Even the old ring levels are gone, being reduced to 0 (kernel) and 3 (user).
All told, this means that developers can just call on FRED and it'll do all the necessary work for them in one sitting, and no longer have to code their way around a lot of corner cases and theoretical issues. This should enable more stable kernels, system drivers, bootloaders, and other low-level software.
At least in theory, FRED is also bound to improve overall system performance, as it consumes fewer CPU cycles, resulting in lower event latency. These can add up under high load scenarios, like handling large network transfers, and perhaps even high-refresh-rate gaming and audio work — though potential uplifts will vary for each type of workload.
FRED will definitely be a performance boon for virtualization scenarios that have particularly involved event handling passing through multiple layers. The x86 architecture has long been criticized for holding on to legacy features for far too long, so it's good news that FRED is arriving soon.
Follow 3DTested on Google News, or add us as a preferred source, to get our latest news, analysis, & reviews in your feeds.

-
ekio Good to see x86 dropping some 40 years old rotten bits.Reply
But still waiting for ARM based AMD upcoming socs.
X86 is a dead end, no matter what component is modernized. -
hotaru251 Reply
except it isn't dead anytime soon.ekio said:x86 is a dead end
They need to lop off the anchor that is 32bit support though.
Apple's already shown that translation layers work well if done correctly so you can emulate it for stuff that needs it while not having it actually weigh the architecture down. -
beyondlogic Replyekio said:Good to see x86 dropping some 40 years old rotten bits.
But still waiting for ARM based AMD upcoming socs.
X86 is a dead end, no matter what component is modernized.
Not even close to deaths door arm might be the next thing once it can scale to the same power as x86 -
Mindstab Thrull Reply
I was thinking Right Said Fred...ravewulf said:Flintstone?
(I'll see myself out) -
edzieba Reply
So x86, a 47 year old architecture is a 'dead end', and should be replace with ARM, a sprightly young architecture at only 40 years old.ekio said:Good to see x86 dropping some 40 years old rotten bits.
But still waiting for ARM based AMD upcoming socs.
X86 is a dead end, no matter what component is modernized.
Both architectures have seen significant change since their origins. -
bmtphoenix Reply
I'm fairly certain that the the next big architecture will be neither. It'll be something new that takesedzieba said:So x86, a 47 year old architecture is a 'dead end', and should be replace with ARM, a sprightly young architecture at only 40 years old.
Both architectures have seen significant change since their origins.
I'm too sexy for this... Architecture?Mindstab Thrull said:I was thinking Right Said Fred... -
bit_user It's pretty awesome that AMD managed to get it into Zen 6! I guess they probably had it ready to go in the silicon, even before finalizing the x86 Advisory Group's spec of the feature.Reply
BTW, I think there are also a fair number of use cases it could apply to that don't involve hardware devices. Timers are one example. Deferred work seems to be another. I think deferred work is something you do to reduce the size of the handler for a non-maskable interrupt, so that the bulk of the work can run in a maskable interrupt handler. -
bit_user Reply
X86S is dead. That was the least controversial portion of legacy stuff, and if they couldn't drop that, I think it's highly unlikely they'll be able to get rid of any more consequential subset.hotaru251 said:They need to lop off the anchor that is 32bit support though. -
bit_user Reply
You mean in terms of Watts? Leave that to Nvidia!beyondlogic said:arm might be the next thing once it can scale to the same power as x86
: D
AArch64 was a bigger & more recent change than x86-64. Given ARM's RISC origins, AArch64 was also starting from a better baseline.edzieba said:So x86, a 47 year old architecture is a 'dead end', and should be replace with ARM, a sprightly young architecture at only 40 years old.
Both architectures have seen significant change since their origins.