Tidak heran itu salah. Anda memiliki ukuran tumpukan 128Mb per utas, tetapi secara keseluruhan hanya 4096Mb. Itu hanya memberi Anda cukup ruang untuk menggunakan 40 utas, dan kemudian tidak memiliki objek apa pun di heap.
Mungkin yang terbaik adalah menghapus komentar semua ukuran ruang dan membiarkan JVM melakukan tugasnya secara otomatis.