It seems like we are more and more getting away from OSes managing our resources<p>Runtimes/vms implement memory management, varius threading techniques and things like we see here<p>Maybe in the future we will entirely skip OS's overhead and run apps directly on HW and they will manager themselves more efficiently (their runtimes/vms like jvm clr)
Related:<p><i>Predictive CPU isolation of containers at Netflix using a MIP solver</i> - <a href="https://news.ycombinator.com/item?id=21116565">https://news.ycombinator.com/item?id=21116565</a> - Sept 2019 (21 comments)<p><i>Predictive CPU Isolation of Containers at Netflix</i> - <a href="https://news.ycombinator.com/item?id=20096699">https://news.ycombinator.com/item?id=20096699</a> - June 2019 (1 comment)
See also ghOSt by Google (2021):<p><a href="https://storage.googleapis.com/pub-tools-public-publication-data/pdf/0ee589331b9bf270b13d40ba09453cde14006869.pdf" rel="nofollow">https://storage.googleapis.com/pub-tools-public-publication-...</a><p><a href="https://github.com/google/ghost-userspace">https://github.com/google/ghost-userspace</a><p><a href="https://github.com/google/ghost-kernel">https://github.com/google/ghost-kernel</a>
Kind of an old article. It is pretty straight forward thing to do. If you spend enough time accurately load testing your environments you can dial in the container resources and shave thousands of dollars. Lots of places are too scared of under allocating. Limit and request exist for a reason. Limit is for surge and request is what is always guaranteed. It is okay to exceed your request as long as you balance add a scaling policy to balance out the surge. And be cautious with request and limit on memory not all applications benefit from this.