It works just fine however you need to keep a appropriate headroom to allow the kernel to do its thing with caches as indicated otherwise things get very weird very quickly.
Containers are very helpful in this regard for helping explicitly divide a machine up between processes without allowing any one to get out of hand.