Existem de fato limites por cgroup, você pode ler sobre eles no LWN.net :
Each cgroup has a memory controller specific data structure (mem_cgroup) associated with it.
.... Accounting happens per cgroup.
A quantidade máxima de memória é armazenada em /sys/fs/cgroup/memory/memory.limit_in_bytes . Se o problema que você experimentou estiver realmente conectado com o limite de memória cgroup , então /sys/fs/cgroup/memory/memory.max_usage_in_bytes deve estar próximo ao acima, que você pode verifique também inspecionando memory.failcnt , que registra o número de vezes que seu uso real atingiu o limite acima.
Talvez você também possa verificar memory.kmem.failcnt e memory.kmem.tcp.failcnt para obter estatísticas semelhantes sobre a memória do kernel e a memória temporária do tcp.