Out of Memory 7GB cache-d memóriával?

Sziasztok!

A következő problémával fordulok hozzátok:
Van egy CentOS 6.4-et futtató szerverem ( 64 bites ) 32GB memóriával. Ezen 6-7db java process fut darabonként 2-3GB memóriahasználattal. ( start scriptekben: -Xmx3G -Xms3G )

A free -g azt írja, hogy 7GB cache-d memória van, de amikor elindítanék még egy java processt 2GB-os memória használattal, akkor OutOfMemory-t kapok. Úgy gondolnám, hogy fel kellene szabadítania a gyorsítótárazott-ból elegendőt, de hozzá sem nyúl. a SWAP sincs használva.

Merre keressem a problémát?

Szerk.:
A process a következő beköpéssel száll el: OutOfMemoryError: unable to create new native thread

Hozzászólások

Laikusként: ez inkább tűnik valami Java feature-nek, mint OS oldali problémának.

A jelenség reboot után (viszonylag) közvetlenül is jelentkezik?

A usernek nincs beállítva limit? Ulimit és környéke.
Aki tudja, csinálja, aki nem tudja, tanítja... Hm... igazgatónak talán még jó lennék. :)

vm.min_free_kbytes=2097152 (vagy még magasabb...)

Ha numa architektúra akkor ez is segíthet:
vm.zone_reclaim_mode=1

Jobban megvizsgálva a logokat, a következővel száll el a java: OutOfMemoryError: unable to create new native thread

Én ezt találtam "viccesnek": http://devgrok.blogspot.hu/2012/03/resolving-outofmemoryerror-unable-to…

Szóval ha nem memória gond, még lehet, hogy elérték az egy user által megnyitható fájlok limitjét, ami jelen esetben 1024.

Aki tudja, csinálja, aki nem tudja, tanítja... Hm... igazgatónak talán még jó lennék. :)