Kami memiliki dua proyek migrasi server baru-baru ini dari Solaris ke RedHat Enterprise di VM. Keduanya adalah aplikasi J2EE yang berjalan pada OC4J 10.1.3.5
Salah satu fenomena menarik yang kami temukan adalah instance OC4J JVM yang dijalankan di Linux sebenarnya akan menempati lebih banyak heap dibandingkan yang dijalankan di Solaris. Misalnya salah satu aplikasi kita hanya akan menggunakan ukuran heap 30 - 40MB di Solaris ketika baru dimulai, sedangkan di Linux, aplikasi tersebut sudah menggunakan 400MB saat start up, yang mana perbedaannya 10 kali lipat. Kasus serupa terjadi pada aplikasi lainnya.
Kami telah memeriksa bahwa semua versi JVM dan argumen start up adalah sama.
Saya telah mencari-cari dan menemukan pertanyaan serupa: Perbedaan antara jvm di linux dan mesin solaris
Namun, saya tidak dapat menemukan artikel teknis tentang masalah ini, apakah ini disebabkan oleh beberapa masalah konfigurasi pada mesin Linux dan bukan pada JVM itu sendiri?
Kami menggunakan JDK 1.6.0_38-b05 64bit
Sunting: Berikut adalah argumen start up JVM: -server -Xms2560M -Xmx2560M
pmap -x java_pid
di kedua OS? - person jlliagre   schedule 11.12.2013