Salve, sul mio pc sto eseguendo un programma, scritto in java, per calcoli su GRANDI numeri (milioni di cifre).
Per manipolare questi grandi numeri sto usando la classe LargeInteger di una libreria esterna (calculator o qualcosa di simile, non indirizzatemi ai BigInteger il punto non è questo)..fin qui nessun problema se non durante la determinazione di un GRANDE numero dove ottengo un "OutOfMemoryError" pur avendo settato l'heap size da linea di comando a, per esempio, 2 GB (-Xmx2048m).Voi direte embè starai occupando oltre 2 GB di RAM..e invece no perchè monitorando dal task manager il processo non supera mai i 600 MB
E' pur vero che sul mio calcolatore ho soltanto 4 GB di RAM (SO a 64 bit quindi a parte quelli occupati da windows sono, teoricamente, tutti utilizzabili) ma sempre dal task manager durante il processo noto che la memoria fisica occupata non ha mai superato il 55% (2.2 dei 4 GB installati)..dunque dove sta l'inghippo?
E' un problema della JVM?!ci deve essere un qualcosa dietro che io ignoro..mi sapreste illuminare?