On 20/07/2023 11:00 pm, Julien Grall wrote: > Hi Alejandro, > > Great work! > > On 17/07/2023 17:03, Alejandro Vallejo wrote: >> Currently there's a CONFIG_HAS_PDX Kconfig option, but it's >> impossible to >> disable it because the whole codebase performs unconditional >> compression/decompression operations on addresses. This has the >> unfortunate side effect that systems without a need for compression >> still >> have to pay the performance impact of juggling bits on every pfn<->pdx >> conversion (this requires reading several global variables). This series >> attempts to: > Just as a datapoint. I applied this to a tree with Live-Update > support. From the basic test I did, this is reducing the downtime by > 10% :).
I'm not surprised in the slightest. We've had many cases that prove that compression (of 0 bits, on all x86 systems) is a disaster perf wise, and its used in pretty much every fastpath in Xen. Look no further than c/s 564d261687c and the 10% improvements in general PV runtime too, and that was optimising away one single instance in one single fastpath. It's also why I'm not entertaining the concept of leaving it active or selectable on x86. ~Andrew
