只需一行程式碼Intel實現Linux核心效能提升3888.9%
據Phoronix報導,英特爾的Linux核心測試機器人報告稱,主線Linux核心的性能提高了3888.9%。測試機器人則稱,在Intel Xeon Platinum (Cooper Lake)測試伺服器上執行「will-it-scale.per_process_ops」可擴展性測試案例中,效能提升了高達3888.9%。
這項提升主要歸功於一個關鍵的代碼提交,即「mm, mmap: limit THP alignment of anonymous mappings to PMD-aligned sizes」。
該補丁資訊顯示,自提交efa7df3e3bb5以來,沒有特定地址提示且至少為PMD_SIZE的匿名內存的mmap()將與PMD對齊,以便從THP backing page中受益。
然而,這種變化也導致了一些工作負載的效能下降,例如,在某些平台上cactusBSSN基準測試的速度下降了600%。
基準測試似乎創建了許多4632kB的映射,這些映射在提交efa7df3e3bb5之前會合併到一個大的THP-backed area,現在它們被分割成多個區域,每個區域都與PMD邊界對齊,中間有間隙,導致性能下降。
英特爾也提出了一個解決方案:增加一個條件,即映射的大小必須是PMD大小的倍數,而不是至少PMD大小。
這將使得那些odd-sized mapping不再對齊並留有間隙,而是會自然地再次合併。