www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - An interesting article on GC interaction with OS scheduler

This article presents an insight into a peculiar interaction 
between Java GC and Linux scheduler on the background of Linux 
containerization technology - the CGROUP.
IMHO the CGROUP only amplifies the discussed impact, that exists 
anyway.

A short summary:
Linux scheduler allocates a time slice for an application to run. 
When the time slice is depleted (i.e. all the application threads 
together have eaten up all the time resource), the application is 
stopped until next time slice is allocated.
Many-threaded GC is able to deplete the time slice very quickly, 
causing Stop-The-World effect, even in generally concurrent GC 
design.

https://engineering.linkedin.com/blog/2016/11/application-pauses-when-running-jvm-inside-linux-control-groups
Dec 03 2016