Another Look At The Performance Impact To IBM's POWER9 L1d Flushing Change
But for most common workloads not involving heavy kernel interaction, the performance difference was minimal to no measurable difference.
From this testing on the much larger POWER9 server and running common workloads there like database servers, this kernel security change did possess a large hit to the performance as seen in workloads like MariaDB, PostgreSQL, and Redis. Other synthetic I/O tests were also showing the performance implications of this frequent L1 data cache flushing change for IBM POWER9 processors. And then obviously for workloads not heavily interacting with the kernel or as sensitive to the L1 data cache being flushed out, the performance was effectively unchanged. Those only running trusted code on their systems or taking other precautions can restore the prior behavior on the latest Linux kernel releases by booting with "no_uaccess_flush no_entry_flush" kernel options.
If you enjoyed this article consider joining Phoronix Premium to view this site ad-free, multi-page articles on a single page, and other benefits. PayPal or Stripe tips are also graciously accepted. Thanks for your support.