{"id":349151,"date":"2026-01-03T01:49:11","date_gmt":"2026-01-03T01:49:11","guid":{"rendered":"https:\/\/www.newsbeep.com\/uk\/349151\/"},"modified":"2026-01-03T01:49:11","modified_gmt":"2026-01-03T01:49:11","slug":"linux-addressing-out-of-memory-killer-inaccuracy-on-large-core-count-systems","status":"publish","type":"post","link":"https:\/\/www.newsbeep.com\/uk\/349151\/","title":{"rendered":"Linux Addressing Out-Of-Memory Killer Inaccuracy On Large Core Count Systems"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" alt=\"LINUX KERNEL\" src=\"https:\/\/www.newsbeep.com\/uk\/wp-content\/uploads\/2025\/07\/linuxkernel.webp.webp\" width=\"100\" height=\"100\"\/><br \/>\nA patch is on the way to the Linux kernel and looks like it could be ready for the 6.20~7.0 kernel for addressing out-of-memory &#8220;OOM&#8221; killer inaccuracy behavior when dealing with large core count systems.<\/p>\n<p>A patch by Linux developer Mathieu Desnoyers made it into Andrew Morton&#8217;s &#8220;mm-everything&#8221; queue this week to fix out-of-memory killer inaccuracy on large many-core systems.&#13;<\/p>\n<p align=\"center\"><img decoding=\"async\" src=\"https:\/\/www.newsbeep.com\/uk\/wp-content\/uploads\/2026\/01\/image.webp\" alt=\"High core count AMD EPYC server with lots of RAM\"\/><\/p>\n<p>In early 2025 it was <a href=\"https:\/\/lore.kernel.org\/lkml\/20250331223516.7810-2-sweettea-kernel@dorminy.me\/\" rel=\"nofollow noopener\" target=\"_blank\">reported<\/a> that there were inaccuracies in the OOM killer when dealing with today&#8217;s high core count systems, at least in the 250+ core\/thread count range:<br \/>\n<br \/>&#8220;Recently, several internal services had an RSS usage regression as part of a kernel upgrade. Previously, they were on a pre-6.2 kernel and were able to read RSS statistics in a backup watchdog process to monitor and decide if they&#8217;d overrun their memory budget. Now, however, a representative service with five threads, expected to use about a hundred MB of memory, on a 250-cpu machine had memory usage tens of megabytes different from the expected amount &#8212; this constituted a significant percentage of inaccuracy, causing the watchdog to act.&#13;<br \/>&#8230;&#13;<br \/>This is a really tremendous inaccuracy for any few-threaded program on a large machine and impedes monitoring significantly. These stat counters are also used to make OOM killing decisions, so this additional inaccuracy could make a big difference in OOM situations &#8212; either resulting in the wrong process being killed, or in less memory being returned from an OOM-kill than expected.&#13;<\/p>\n<p>Finally, while the change to percpu_counter does significantly improve the accuracy over the previous per-thread error for many-threaded services, it does also have performance implications &#8211; up to 12% slower for short-lived processes and 9% increased system time in make test workloads.&#8221;<\/p>\n<p><a href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/akpm\/mm.git\/commit\/?h=mm-everything&amp;id=f85306789224f6862ba8bfc5e046a318a9fd58f7\" rel=\"nofollow noopener\" target=\"_blank\">This patch<\/a> working its way to the mainline kernel hopefully for the upcoming Linux 6.20~7.0 cycle should address those inaccuracies.<\/p>\n","protected":false},"excerpt":{"rendered":"A patch is on the way to the Linux kernel and looks like it could be ready for&hellip;\n","protected":false},"author":2,"featured_media":349152,"comment_status":"","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6],"tags":[5870,59,5869,5867,5866,5873,5871,5868,5872,5865,5876,86,5874,5875,56,54,55],"class_list":{"0":"post-349151","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-technology","8":"tag-desktop-linux","9":"tag-gb","10":"tag-linux-benchmarking","11":"tag-linux-hardware-benchmarks","12":"tag-linux-hardware-reviews","13":"tag-linux-how-to","14":"tag-linux-performance","15":"tag-linux-server-benchmarks","16":"tag-open-source-graphics","17":"tag-phoronix","18":"tag-phoronix-test-suite","19":"tag-technology","20":"tag-ubuntu-benchmarks","21":"tag-ubuntu-hardware","22":"tag-uk","23":"tag-united-kingdom","24":"tag-unitedkingdom"},"_links":{"self":[{"href":"https:\/\/www.newsbeep.com\/uk\/wp-json\/wp\/v2\/posts\/349151","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.newsbeep.com\/uk\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.newsbeep.com\/uk\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.newsbeep.com\/uk\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.newsbeep.com\/uk\/wp-json\/wp\/v2\/comments?post=349151"}],"version-history":[{"count":0,"href":"https:\/\/www.newsbeep.com\/uk\/wp-json\/wp\/v2\/posts\/349151\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.newsbeep.com\/uk\/wp-json\/wp\/v2\/media\/349152"}],"wp:attachment":[{"href":"https:\/\/www.newsbeep.com\/uk\/wp-json\/wp\/v2\/media?parent=349151"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.newsbeep.com\/uk\/wp-json\/wp\/v2\/categories?post=349151"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.newsbeep.com\/uk\/wp-json\/wp\/v2\/tags?post=349151"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}