The work carried out by a Meta engineer to AMD’s INVLPGB instruction within the Linux kernel for broadcast TLB flush handling has been merged for the in-development Linux 6.15! AMD INVLPGB has the possibility of helping with the performance in some areas and is found supported by recent generations of Zen CPU cores.
The INVLPGB goes back to AMD Zen 3 cores and only in recent months has there been work within the Linux kernel led by Meta engineer Rik van Riel for making use of the instruction. Just before Christmas the first Linux kernel patches for INVLPGB were posted with promising results:
Since then they have continued to be refined and then yesterday were merged as part of the x86 changes for the now open Linux 6.15 merge window for boosting broadcast TLB invalidation on recent AMD Linux systems.
Back in December when the patches were first posted I did run some benchmarks within Benchmarking The AMD INVLPGB Linux Kernel Patches For Better Performance. Now that these patches have been merged, I’ll be running some more AMD EPYC/Ryzen benchmarks as the Linux 6.15 kernel cycle progresses.
Linux 6.15 is looking very nice from the performance department not only for this AMD broadcast TLB invalidation work but also faster x86_64 crypto performance and other optimizations expected to be merged over this two week merge window.