Ver Mensaje Individual
  #6 (permalink)  
Antiguo 18/10/2010, 00:57
GreenEyed
 
Fecha de Ingreso: octubre-2003
Mensajes: 3.578
Antigüedad: 21 años, 2 meses
Puntos: 51
Respuesta: Tamaño maximo maquina virtual Java

Para poder usar los 4GB de RAM tendrías que usar un JDK de 64 bits, ya que no sólo el S.O. ha de ser de 64 bits, también lo ha de ser el JDK. No te dejará ponerle más de 1.536MB por que entre eso y lo que consume la propia JVM, llegarás a los 2GB del máximo de un proceso de 32 bits.
Si necesitas tener toda la matriz en memoria entonces según lo que metas en cada posicion de la matriz... esta claro que en cuanto te descuides te pasas del limite. Para N=18.000 tienes 648.000.000 de posiciones en la matriz. Si lo llenas únicamente de int, eso son, mínimo, 4 bytes por posicion = 2.592.000.000 bytes.... y eso sólo para la matriz, así que echa cuentas... .

Tenerla accesible fácilmente no significa tener que tenerla en memoria, al menos no con estas magnitudes. Una solución es manejar tu la gestión de lo que hay en memoria y lo que hay en disco y otra usar Memory-Mapped Files. No es trivial usarlos pero con esos requerimientos que tienes, no lo puedes solucionar de forma trivial.

Suerte.
__________________
Para obtener respuestas, pregunta de forma inteligente o si no, pregunta lo que quieras que yo contestaré lo que me dé la gana.