Hacker News new | past | comments | ask | show | jobs | submit login
KML: A machine learning framework for operating systems and storage systems (github.com/sbu-fsl)
43 points by i_umit 12 days ago | hide | past | favorite | 6 comments

Whenever I see buzz around “ML for Computer Systems” my first question is always “how debuggable is this?”

A major benefit of the sophisticated heuristics and algorithms that power modern systems is the legion of experts who deeply understand how they work. When we see poor performance, a bit of digging and asking around will usually unearth some principled reasoning about how we can modify our programs to work well with the existing heuristics (think branch prediction).

Unless we are careful, we lose this with an ML-based approach

I think this is a fair concern. I agree that the ML approaches can cause explainability and traceability issues but not all of them. We also support ML approaches like decision trees which can be considered more "debuggable". However you might not be able to solve every single problem with decision trees just because it is "debuggable". Besides, there are a lot of researchers are working on ML explainability. Our vision is simply building self-adaptive tuning systems which may not require constant development efforts to optimize OS and storage components for ever-changing workloads and new devices. You can find more discussion about this topic in the paper too.

For sure, I agree that interpretation is critical for computing systems like operating systems and compilers. I have been extremely pleased that most of the recent popular SysML research readily trades correctness for understandability. Likewise, I have also been pleased that correctness is often traded for performance.

Eh. I remember reading the furor about the Linux scheduler[0], and that was by the hands of man, my man.

[0]: https://people.ece.ubc.ca/sasha/papers/eurosys16-final29.pdf

Remember, Skynet is Genisys.

Joke aside, I’m not sure whether the tradeoff between “automatically tune parameters” and “nightmare to debug” is worth it.

On the other hand it seems patterns like this are already deployed in hardware so maybe it will work out fine.

You can find the related paper in arxiv: https://arxiv.org/abs/2111.11554

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact