🌘 回覆:[補丁] oom_pardon,亦即「別殺掉我的 xlock」
➤ 當系統在崩潰邊緣掙扎:論 OOM 機制的荒謬邏輯
https://lwn.net/Articles/104185/
這篇文章源自 2004 年 Linux 核心郵件列表的一段經典對話。針對當時系統記憶體不足(Out of Memory, OOM)時,核心會隨機或依照權重終止進程的機制,有開發者提出新增一個 `sysctl` 選項,旨在保護特定關鍵進程(如鎖定螢幕程式 xlock)免於被系統強制殺死。Andries Brouwer 透過一則關於「飛機燃料不足」的黑色幽默寓言,諷刺了當時 OOM 管理機制的荒謬性——即試圖為一個本質上是災難性的系統崩潰補救措施,建立一套複雜且不完善的選拔機制,反而忽視了系統設計本身的根本缺陷。
+ 這篇寓言真是對軟體工程中「打補丁解決根本性錯誤」行為的最強烈諷刺。我們總是在為錯誤的架構編寫精緻的保護機制,而不是去解決那個錯誤本身。
+ 2004 年的討論至今讀起來依然深刻。對於 Linux 核心開發者來說,OOM
#Linux 核心開發 #OOM Killer #技術諷刺
Re: [PATCH] oom_pardon, aka don't kill my xlock

From: Andries Brouwer <aebr-AT-win.tue.nl> To: Thomas Habets <t [...]

LWN.net
Re: [PATCH] oom_pardon, aka don't kill my xlock

From: Andries Brouwer <aebr-AT-win.tue.nl> To: Thomas Habets <t [...]

LWN.net

Als je nichtje je komt ophalen met HAAR auto, en ZIJ staat erop om de lunch te betalen.

Kleine kinderen worden groot...

#Oom

Цікавий випадок сьогодні з #MongoDB. На одному із secondary в replica set раптово злетіло навантаження на диск до 80-90%. Почав копати - виявилось, що йшло створення індексу на колекції з 16 мільйонами документів (розробники додали індекс та забули попередити). На primary та hidden secodary індекс побудувався з невеликим додатковим IO, але на доступному для запитів secondary активно молотив диск, але чому так довго і так важко?
Виявилось що WiredTiger cache був заповнений під зав'язку і постійно виганяв сторінки щоб читати нові - класичний cache thrashing. В результаті система почала свапувати, своп заповнився повністю (8GB/8GB), і #MongoDB почав читати та писати через swap - звідси і дисковий ад.
Вирішення виявилось простим - вимкнути swap. До речі #claude сказав не робити цього, бо буде #OOM та mongodb процес помре першим.
Я все ж таки зробив swapoff -a. Команда працювала 1.5 години :-(
#Ubuntu поступово відвойовувала місце в свопе за рахунок зменшення дискового кешу. На скріншоті біла полоса - це коли почався процес зменшення свопа - система була перевантажена, що не могла відправляти телеметрію.
Дані повернулись в RAM і IO впав до норми буквально одразу.
Ще #claude радим поставити`vm.swappiness=1`, але не дивлячись на це система усе одно використовувала своп, бо MongoDB віджирав усю доступну памʼять від свої кеші.
Треба спробувати обмежети wiredTiger розмір кеша, щоб він не добирався до свопа.

✅ Заставить полноценный FLUX1.dev работать без OOM на картинках 1024x1024
✅ Также успешно запустить квантизированный FLUX под ROCm несмотря на то, что у Invoke в образе с ROCm поломана bitsandbytes
✅ Смириться, что генерировать в нормальном разрешении и с нормальными параметрами - это меееедленно.

#log #GenAI #Invoke #FLUX #server #AMD #ROCm #troubleshooting #memory #OOM

Next one. She's still in need of a name. I like Peaches, but I heard that's a pretty oldtimey name? #orborbmagi #oom #pixelart #魔法少女
Tapi pas banget kebangun ternyata ada satu #vm utama yang #oom alias out of memory. Gak sampe down gimana ketolong swap, tapi ya jadi padat merayap.

Dah coba tune dan relokasi beberapa container, tinggal pantau.
#pixelart #oom #goblin #魔法少女 She got a little makeover ✨

𝗙𝗿𝗲𝗲𝗸 𝗩𝗼𝗻𝗸 𝗱𝗼𝗼𝗿 𝗴𝗲𝗯𝗼𝗼𝗿𝘁𝗲 𝗻𝗲𝗲𝗳𝗷𝗲 𝘃𝗼𝗼𝗿 𝗵𝗲𝘁 𝗲𝗲𝗿𝘀𝘁 𝗼𝗼𝗺 𝗴𝗲𝘄𝗼𝗿𝗱𝗲𝗻

Freek Vonk is voor het eerst oom geworden. Op Instagram deelt hij het blije nieuws van de geboorte van zijn neefje Melle.

https://www.rtl.nl/boulevard/artikel/5545212/freek-vonk-door-geboorte-neefje-voor-het-eerst-oom-geworden

#FreekVonk #neefje #oom

Freek Vonk door geboorte neefje voor het eerst oom geworden

Freek Vonk is voor het eerst oom geworden. Op Instagram deelt hij het blije nieuws van de geboorte van zijn neefje Melle.

RTL Boulevard

Finally! I'm exhausted all RAM on my homelab server, trying to install some python 3.13 things via pip, which involved compilation of some C++ things from sources  

At least, I'm checked that kernel successfully kills some random processes, when it got OOM. Was very surprised, when I received some notifications on my phone about dead PostgreSQL, sshd and main nginx, lol

Still has no money to install the maximal amount of memory to my home server — 4 Gb (max for Intel Atom N2800 1866 MHz)  

#homelab #NetBSD #OOM