Augmenter la taille des tas en java pour weka

j'essaie d'augmenter la taille du tas en java pour weka qui continue de s'écraser. J'ai utilisé le suggère ligne:

> java -Xmx500m -classpath

mais j'obtiens l'erreur suivante:

-classpath requires class path specification

je ne suis pas sûr de ce que cela signifie. Toutes les suggestions?

18
demandé sur screechOwl 2011-12-29 04:15:42

15 réponses

Ce que j'ai trouvé le problème réel était dans le fichier 'RunWeka.ini''\Program Files (x86)\Weka-3-6'. Je l'ai ouvert avec notepad et au milieu du fichier il y a une ligne 'maxheap = 512m'.

j'ai changé la ligne à lire 'maxheap=2000m', a sauvegardé le fichier et rechargé weka et cela a corrigé mes problèmes.

Je ne suis pas sûr que ce soit la bonne façon de le faire ou pas, mais ça a marché pour moi.

21
répondu screechOwl 2012-03-11 15:11:43

omettez le -classpath option. Utilisez juste -Xmx500m option.

alors, au lieu de juste:

java weka.core.Instances data/soybean.arff

tu fais:

java -Xmx500m weka.core.Instances data/soybean.arff

si vous exécutez weka via un script (RunWeka.bat par exemple), alors vous devez modifier ce script (avec un éditeur de texte comme notepad).

11
répondu Michał Šrajer 2011-12-29 00:23:53

exécutez cette commande dans votre terminal:

java -Xmx1024m -jar weka.jar
9
répondu Dulith De Costa 2015-01-19 05:35:29

si vous utilisez Weka 3.8.1 sous Windows, vous pouvez vous épargner beaucoup de problèmes en éditant le javaOpts paramètre. Le paramètre maxheap n'est plus utilisé, donc vous pouvez définir javaOpts comme ceci RunWeka.ini fichier:

javaOpts= -Xmx1040m

1040m est la quantité de mémoire à allouer.

l'Esprit que le fichier est sensible à la casse.

il y a beaucoup de façons de configurer cela, mais c'est la façon la plus rapide de faire tourner Weka sur une fenêtre environnement à cette version.

Edit: Si vous voulez Weka d'utiliser plus d' 1gb sur windows, vous devez avoir JDK installé. Le JRE normal ne le fera pas.

7
répondu Wesley Costa 2017-09-01 04:37:01

réponse officielle de Weka (pour tous les systèmes d'exploitation et les versions Weka) peut être trouvé sur http://weka.wikispaces.com/OutOfMemoryException.

dans le cas où vous utilisez une version Weka récente sur Windows,la réponse est:

Modifier maxheap paramètre RunWeka.ini fichier.

5
répondu Robert Pollak 2015-11-13 13:58:25

Vous devez spécifier un chemin de classe après -classpath, similaire à la PATH variable env vous devez spécifier le chemin où Java peut trouver les classes.

-Xmx500m le réglage semble correct, sauf que je suggère d'utiliser 512m.

3
répondu Jonas 2011-12-29 00:20:30

Sur Ubuntu, j'ai eu le même problème mais je le résoudre en augmentant la quantité de mémoire à utiliser pour la Machine Virtuelle Java exécutez ceci: weka-m 1024m

3
répondu Ali Dabour 2016-06-07 11:13:12

pour Mac OS, vous devez éditer un fichier de configuration afin d'augmenter la taille du tas de L'application WEKA UI.

je répète ce que j'ai écrit dans: Existe-t-il une solution de contournement pour résoudre l'erreur de mémoire "Java heap space" lorsque la valeur max heap a déjà été spécifiée?

  1. Quittez Weka si elle est en cours d'exécution.

  2. cd into/Applications / weka-XXX.app / Contents, ou où votre exécutable weka a été installé. Il y aura un fichier appelé Info.plist il n'. C'est un texte XML fichier. Je vous propose de gagner un exemplaire à un autre emplacement, vous aurez besoin de le modifier dans l'étape suivante.

  3. Ouvrir Info.plist (XML) dans votre éditeur de texte préféré et recherchez un bloc qui dit "VMOptions". Il devrait y avoir une valeur qui dit "-Xmx256M" ou quelque chose de similaire qui spécifie la taille maximale du tas. Vous devriez changer cette valeur en quelque chose de plus grand, comme "- Xmx1024M".

  4. Démarrer Weka.

2
répondu stackoverflowuser2010 2017-05-23 12:18:14

j'exécute Weka 3.6 dans windows. C'est ce que j'ai fait. Allez dans le répertoire d'installation de Weka et vous trouverez un RunWeka.le fichier bat. Ouvrez ce fichier dans un éditeur de texte et ajoutez un argument-Xmx dans la ligne de commande java.

par exemple, cette valeur est fixée à 4 Go de mémoire, %_java% - Xmx4096m-classpath . RunWeka-I.\ RunWeka.ini -w .\ weka.jar-c %_cmd% "%2"

1
répondu Rahav 2014-06-21 05:22:30

L'officiel Weka réponse est juste..Mais....l'essentiel est d'abord de se débarrasser de tous les fichiers JVM et d'installer la version Java 32 ou 64 bits pertinente. Le fait de ne pas utiliser la version appropriée pose de nombreux problèmes, notamment l'impossibilité d'augmenter le tas au-delà de 1024m (en changeant le fichier ini).

1
répondu Roel 2015-12-12 22:29:18

Weka 3.9.2 n'a plus l'option de maxheap. RunWeka.ini ont l'option de javaOpts, de sorte que vous pouvez changer le ci-dessous à votre allocation de mémoire requise,

javaOpts=%JAVA_OPTS%   ---- > javaOpts= -Xmx1024m

Ici 1024m est personnalisés quantité de mémoire à allouer.

1
répondu monir zaman 2018-05-17 03:30:29

La meilleure façon de le faire en utilisant cette commande

    java -Xmx1024m -[weka classifier] -t [training file path]
0
répondu Muneeb ul Hassan 2016-08-28 15:36:24

les réponses ci-dessus sont trop anciennes (la dernière date d'il y a 1 an). J'ai eu le même problème avec mon WEKA (version 3.8.1) sur Windows 10.

j'ai eu un problème pour mettre à jour la taille du tas , la façon dont je l'ai corrigé est en ajoutant une variable d'environnement (sous panneau de contrôle) comme suit:

JAVA_OPTS = -Xms30000m -Xmx30000m

Astuce: il suffit de s'assurer que RunWeka.ini utilise cette variable d'environnement.

dans l'exemple ci-dessus je donne WEKA 30GB. Elle fonctionne.

j'Espère qu'il sera utile pour certaines personnes.

0
répondu Samer Aamar 2017-07-24 19:27:34

Vous devriez aussi voir si la taille par défaut de la pile 20MB est suffisante. Augmenter la valeur à 50MB dans le fichier / Applications / weka-3-8-1-oracle-jvm.app / Contents / Info.plist (sur MAC) comme ci-dessous:

<string>-Xss50M</string>
0
répondu Lokendra Chauhan 2017-09-13 17:04:30

si nous utilisons WEKA Workbench CLI ou Knowledge explorer nous devons modifier comme ci-dessous.

comme la documentation suggère que le paramètre runtime devrait être-Xmx[size_required]m où [size_required] est la taille de la mémoire que vous avez l'intention de garder pour éviter l'exception de mémoire.

Open RunWeka.ini

Définir maxheap=[size_required]G

dans mon cas j'ai gardé maxheap=4G, on peut mettre comme maxheap = 4096m et ajouter -Xmx#maxheap# pour toutes les options d'exécution à # configurations (préfixé par "cmd_") sections à côté des commandes java comme ci-dessous

cmd_default=javaw -Xmx#maxheap# ...............
cmd_console=cmd.exe /K start cmd.exe ..................
cmd_explorer=java -Xmx#maxheap# .................
cmd_knowledgeFlow=java -Xmx#maxheap#....................

maxheap=4G

Vérifier la même en redémarrant Weka et de l'Aide>>SystemInfo

0
répondu Prateek 2018-02-27 15:46:46