top | item 46435142

Show HN: Replacing my OS process scheduler with an LLM

77 points| ImPrajyoth | 2 months ago |github.com

40 comments

order

devmor|2 months ago

This is a pretty funny project, you've outsourced the neurotic developers that keep their task manager open and kill off processes they don't like.

I wouldn't call it replacing the scheduler though - more that you've made a scheduler manager.

moffkalast|1 month ago

Assistant to the scheduler manager

ImPrajyoth|2 months ago

haha exactly. i realized i spent too much time staring at htop wondering what is this process?, so i decided to automate my own anxiety.

Scheduler Manager is definitely the more accurate term. Im just the middleman between the chaos and the kernel.

DougN7|2 months ago

I resemble that comment!

But seriously, it does really bug me on principle that DropBox should use over half a GB simply because it uses Chromium, even when nothing is visible.

ImPrajyoth|2 months ago

OP here. this is a cursed project lol, but i wanted to see: What happens if you replace the OS scheduler with an LLM?

With Groq speed (Llama 3 @ 800t/s), inference is finally fast enough to be in the system loop.

i built this TUI to monitor my process tree. instead of just showing CPU %, it checks the context (parent process, disk I/O) to decide if a process is compiling code or bloatware. It roasts, throttles, or kills based on that.

Its my experiment in "Intelligent Kernels" how they would be. i used Delta Caching to keep overhead low.

2001zhaozhao|2 months ago

It really is cursed to be spending hundreds of watts of power in a datacenter somewhere to make a laptop run slightly faster.

ImPrajyoth|2 months ago

oh absolutely. burning a coal plant to decide if i should close discord is peak 2025 energy. strictly speaking, using the local model (Ollama) is 'free' in terms of watts since my laptop is on anyway, but yeah, if the inefficiency is the art, I'm the artist.

nubinetwork|1 month ago

An entire datacenter on the other hand, might be appealing to spot things you wouldn't otherwise see in a sea of logs and graphs.

p_ing|2 months ago

You can't replace the NTOS scheduler. This is more of an automated (?) process manager.

ImPrajyoth|2 months ago

you are technically right (the best kind of right). i am running in userspace, so i cant replace the actual thread scheduling logic in Ring 0 without writing a driver and BSODing my machine.

think of this more as a High-Level Governor. The NTOS scheduler decides which thread runs next, but this LLM decides if that process deserves to exist at all.

basically; NTOS tries to be fair to every process. BrainKernel overrides that fairness with judgment. if i suspend a process, i have effectively vetoed the scheduler.

nijave|1 month ago

I do wonder how painfully slow the computer would be if you actually did replace the in-kernel scheduler with an LLM...

gillesjacobs|1 month ago

You're underselling this as a process manager, it could also be a productivity tool with some prompt changes; Determine procrastination apps: games, non-professional chat, video streaming and kill it.

ImPrajyoth|1 month ago

That is actually a brilliant pivot.

A 'Focus Mode' that doesn't just block URLs but literally murders the process if I open Steam or Civilization VI.

I could probably add a --mode strict flag that swaps the system prompt to be a ruthless productivity coach. 'Oh, you opened Discord? Roast and Kill.'

Thanks for the idea mate!

Someone|1 month ago

If it doesn’t find a process that needs roasting or killing for a while, will it see itself as bloatware and commit suicide?

lorenzohess|1 month ago

Please add Roulette mode where a random process is killed every so often

solarkraft|1 month ago

You did not replace the OS process scheduler with an LLM.

1970-01-01|1 month ago

This is the one place that I would want Copilot running. It's giving me ideas :)

nialv7|1 month ago

Task manager, not scheduler.

Agent_Builder|1 month ago

[deleted]

ImPrajyoth|1 month ago

Great point. In a real kernel, non determinism is a bug. Here, it's a feature (or at least, a known hazard). To answer your question: There is no Ctrl+Z for SIGKILL. Once the LLM decides to kill a process, it's gone. My reasoning for 'rollback' is actually latency. I built in a 'Roasting Phase' where the agent mocks the process for a few seconds before executing the kill. That delay acts as an optimistic lock it gives me a window to veto the decision if I see it targeting something critical.

If I'm AFK and it kills my IDE? I treat that as the system telling me to touch grass.