2010-02-25 4 views
2

J'utilise un programme java qui nécessite beaucoup de RAM. (Idéalement je voudrais donnerl'augmentation de la taille du tas dans le programme java pose problème

10 Go de RAM)

ce programme est exécuté à l'aide d'un fichier de chauve-souris. qui a la commande suivante pour définir la taille de segment de mémoire Java

java -Xmx896m weka.gui.explorer.Explorer 

qui alloue 896 MB. J'exécute ce programme sur un serveur 64 bits haut de gamme avec un système d'exploitation standard Windows 2003 64 bits.

lorsque je tente de modifier le fichier de chauve-souris pour augmenter la taille du tas Lets dire 1,8 Go en utilisant

java -Xmx1896m weka.gui.explorer.Explorer 

donne un message d'erreur - "Could not reserve enough space for object heap " et comment puis-je donner le programme ne commence pas

ce programme une plus grande taille de tas au moins jusqu'à 4 GB

+0

message d'erreur? –

+0

Le message d'erreur était « Impossible de réserver assez d'espace pour tas d'objets » –

+0

message d'erreur est Impossible de réserver assez d'espace pour tas d'objets " – silverkid

Répondre

2

Avez-vous essayé d'utiliser -d64 pour spécifier JVM pour utiliser la version 64 bits?

java -d64 -Xmx2g weka.gui.explorer.Explorer 

Pour information, cette erreur devrait augmenter lorsque JVM tente d'appeler mmap fonction pour obtenir l'espace d'adressage pour le tas de système d'exploitation avec une taille non valide.

+0

-d64 -Xmx? G est un must, vous pouvez également essayer -server –

+0

IIRC, utilisations JVM -d64 sur les machines 64 bits par défaut (au moins ma JVM devait être passée -d32 pour essayer d'utiliser le mode 32 bits, et elle a échoué) – jkff

+0

c'est l'erreur que j'obtiens en ajoutant -d64, "Cette instance Java fait ne prend pas en charge une machine virtuelle Java 64 bits. Veuillez installer la version désirée. " – silverkid

Questions connexes