I have another related problem I'm currently investigating :
The game starts with min heap size of 80M and max 150M, but never really reached 80 (70 max, 40 normal use).
On the other hand, looking at the java.exe process memory usage, every level played adds its 5M to the total memory used (well +7, then -2 at the end)
So from the java side, GC is fine, and VM profiling shows no memory leak, but from the NIO buffers size... it keeps increasing (up to 300M in my test, but kept growing).
So what's the ergonomics of GC from the native buffers side ? (I must say I currently call System.gc() after every level loading)
If it's a memory leak from the Xith side, what strategy could anybody give me to find the bug ?
(I'm already browsing the entire xith rendering codebase to find the possible leaks)
Is it a good practice to have many small nio buffers used when calling OGL functions (can they cause memory fragmentation preventing gc ?)
Any help will be most appreciated !