On Mon, Jul 31, 2023, at 17:43, Jisheng Zhang wrote: > On Mon, Jul 31, 2023 at 07:39:30AM +0200, Arnd Bergmann wrote: >> >> Not just the flushing, but also loading back the invalidated >> >> cache lines afterwards is just very expensive. I don't think >> >> you would be able to measure a difference between the static > > I read this as: the cache clean/inv is so expensive that the static > key saving percentage is trivial, is this understanding right? > > this could be measured by writing a small benchmark kernel module > which just calls cache clean/inv a buf(for example 1500Bytes)in a loop. While you can trivially measure the cost of the clean/inv operation, I think the higher cost is the fact that the cache lines are invalidated and have to be reloaded when accessing the data the next time. So if the loop test shows that the static key is not worth it, that is a clear answer, but if it shows that the cache operation itself is cheap, that does not automatically mean that the static key makes a difference compared to a cache miss. Arnd