logoalt Hacker News

adrian_btoday at 8:14 AM1 replyview on HN

It was not architecture-related. Not using huge pages also reproduced the regression on x86.

I do not know why using huge pages mitigates the regression, but it could be just because when the application uses huge pages it uses spinlocks much less frequently so the additional delays do not accumulate enough to cause a significant performance reduction.


Replies

tux3today at 8:58 AM

The problem is the spinlock being interrupted by a minor fault (you're touching a page of memory for the first time, and the kernel needs to set it up the first time it's actually used)

If your pages are 1GB instead of 4kB, this happens much less often.