Ho un'app Java che è impacchettata usando JarBundler. L'app ha un consumo piuttosto elevato di CPU (molte chiamate Collection.sort()).Java VM a 64 bit esegue l'app 10 volte più lentamente
Su Mac OS, l'applicazione viene eseguita lentamente e lentamente quando si utilizza il JavaApplicationStub a 64 bit. Questo file JavaApplicationStub avvia la macchina virtuale a 64 bit Java.
Ho trovato un vecchio file JavaApplicationStub che è solo a 32 bit. L'ho sostituito nel pacchetto e l'app viene eseguita 10 volte più velocemente! (di conseguenza, la VM a 32 bit viene utilizzata quando viene eseguita l'applicazione).
Ha senso? Perché la macchina virtuale a 64 bit è molto più lenta? Ha senso costruire un'app e hackerare il file JavaApplicationStub in questo modo?
Il consiglio è apprezzato.
Stavo solo controllando, ma qual è l'hardware è in esecuzione su? –
Soprattutto quanta memoria hai. Si prega di verificare con visualizzatore di attività se la macchina si sta scambiando. –
Esecuzione su MacBook Core 2 Duo 10.5.8 – craiglurey