Modifié par Calvat, le 16 Jun 2014

Error occured during initialization of VM (java)



L'ordonnanceur de batch Univa Grid Engine applique une limite hard et soft à chaque job via la commande unix “limit”. Les valeurs fixées par la commande limit concerne la mémoire et la taille des fichiers et sont appliqués à chaque process.

Au moment du démarrage, la VM java effectue un test mémoire très rapide qui peut occuper une grande partie de la mémoire de la machine de calcul. La limite sur la mémoire empêche ce test de s'efffectuer correctement et conduit à une erreur java du type :

Error occured during initialization of VM
Could not reserve enough space for object heap

1) D'abord spécifier la limite du RAM stack size pour l'OS, par exemple à 10Mo, dans le script lancer par la commande qsub:

ulimit  -S -s  10240

ou par l'option s_stack de la commnde qsub

qsub -l s_stack=10240 

2) Pour un job de la classe “long” (4Go RAM) il faut spécifier 1 Go de Max Heap Size (-Xmx) pour la JVM.

java -Xmx1024m -version 

Note: il faut mettre d'abord les options -Xm* avant la commande java à exécuter.


  • error_occured_during_initialization_of_vm_java.txt
  • Dernière modification: 2016/12/16 10:15
  • (modification externe)