Inte konstigt att det blir fel. Du har en stackstorlek på 128Mb per tråd, men bara 4096Mb totalt. Det ger dig bara tillräckligt med utrymme för att använda 40 trådar och sedan inte ha några objekt i högen.
Förmodligen bäst att avkommentera alla utrymmesstorlekar och låta JVM göra sin grej automatiskt.