web-dev-qa-db-ja.com

Java wekaのヒープサイズを増やす

Java wekaがクラッシュし続けるヒープサイズを増やしようとしています。推奨される行を使用しました:

> Java -Xmx500m -classpath

しかし、私は次のエラーを受け取ります:

-classpath requires class path specification

どういう意味かわかりません。助言がありますか?

19
screechOwl

私が見つけたのは、実際の問題は'\Program Files (x86)\Weka-3-6'のファイル'RunWeka.ini'にあるということです。私はそれをメモ帳で開き、ファイルの真ん中に'maxheap = 512m'という行があります。

行を'maxheap=2000m'に変更し、ファイルを保存してwekaをリロードしました。これにより問題が解決しました。

これが正しい方法かどうかはわかりませんが、うまくいきました。

21
screechOwl

-classpathオプション。 -Xmx500mオプション。

したがって、単に次の代わりに:

Java weka.core.Instances data/soybean.arff

あなたがやる:

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

何らかのスクリプト(たとえば、RunWeka.bat)を使用してwekaを実行する場合は、そのスクリプトを(メモ帳などのテキストエディターで)変更する必要があります。

11
Michał Šrajer

端末で次のコマンドを実行します。

Java -Xmx1024m -jar weka.jar
11
Dulith De Costa

WindowsでWeka 3.8.1を使用している場合は、javaOptsパラメータを編集することで、多くの問題を回避できます。パラメータmaxheapは使用されなくなったため、_RunWeka.iniファイルで次のようにjavaOptsを設定できます。

javaOpts= -Xmx1040m

ここで、1040mは、割り当てるメモリの量です。

ファイルでは大文字と小文字が区別されることに注意してください。

これを設定する方法はたくさんありますが、これはこのバージョンのWindows環境でWekaを実行するためのより速い方法です。

編集:WekaがWindowsで1gb以上を使用するようにするには、JDKをインストールする必要があります。通常のJREはそれを行いません。

8
Wesley Costa

Wekaの公式回答(すべてのオペレーティングシステムとWekaバージョン用)は http://weka.wikispaces.com/OutOfMemoryExceptionにあります)

Windowsで最新のWekaバージョンを使用している場合、 答え は次のとおりです。

RunWeka.iniファイルのmaxheapパラメータを変更します。

5
Robert Pollak

PATH env変数と同様に、-classpathの後にクラスパスを指定する必要があります。これは、Javaがクラスを見つけることができるパスを指定する必要があります。

-Xmx500m設定は問題ありませんが、512mを使用することをお勧めします。

3
Jonas

Mac OSの場合、Weka UIアプリケーションのヒープサイズを大きくするには、構成ファイルを編集する必要があります。

最大ヒープ値がすでに指定されている場合に「Javaヒープスペース」メモリエラーを解決する回避策はありますか?

  1. 実行中の場合は、Wekaを終了します。

  2. /Applications/weka-XXX.app/Contents、またはweka実行可能ファイルがインストールされている場所にcdします。そこにInfo.plistというファイルがあります。これはXMLテキストファイルです。次のステップで編集する必要があるため、別の場所にコピーを保存することをお勧めします。

  3. お好きなテキストエディターでInfo.plist(XML)ファイルを開き、「VMOptions」というブロックを探します。 「-Xmx256M」などの値 が最大ヒープサイズ を指定しているはずです。その値を「-Xmx1024M」などの大きな値に変更する必要があります。

  4. Wekaを起動します。

Ubuntuでは同じ問題がありましたが、Java仮想マシンがこれを実行するために使用するメモリの量を増やすことで解決します:weka -m 1024m

3
Ali Dabour

Weka 3.9.2には、maxheapのオプションもなくなりました。 RunWeka.iniにはjavaOptsのオプションがあるため、以下を必要なメモリ割り当てに変更できます。

javaOpts=%Java_OPTS%   ---- > javaOpts= -Xmx1024m

ここで1024mは、割り当てたいメモリのカスタマイズされた量です。

1
monir zaman

Wekaの公式の答えは正しいです。しかし、重要なのは、最初にすべてのJVMファイルを削除し、関連する32ビットまたは64ビットをインストールすることですJavaバージョン。関連するバージョンを使用しないと、多くの問題が発生します。 (iniファイルを変更することにより)ヒープを1024m以上に増やすことができないなどの問題。

1
Roel

WindowsでWeka 3.6を実行しています。これは私がやったことです。 Wekaのインストールディレクトリに移動すると、RunWeka.batファイルが見つかります。このファイルをテキストエディタで開き、Javaコマンドラインで-Xmx引数を追加します。

たとえば、これは4GBのメモリ%_Java%-Xmx4096m -classpathに設定されます。 RunWeka -i。\ RunWeka.ini -w。\ weka.jar -c%_cmd% "%2"

1
Rahav

コマンドラインからwekaを実行するがJava=を使用しない場合、つまり、コマンドラインにwekaと入力する代わりに、

weka

メモリフラグを指定する

weka -m 1024m

これは1024メガバイトを指定します。

0
Blubber

デフォルトのスレッドスタックサイズ20MBで十分かどうかも確認してください。以下のように、ファイル/Applications/weka-3-8-1-Oracle-jvm.app/Contents/Info.plist(MAC上)の値を50MBに増やします。

<string>-Xss50M</string>
0

このコマンドを使用してそれを行う最良の方法

    Java -Xmx1024m -[weka classifier] -t [training file path]
0

上記の回答は古すぎます(最後の回答は1年前です)。 Windows 10でWEKA(バージョン3.8.1)で同じ問題が発生しました。

ヒープサイズの更新に問題がありました。修正方法は、次のように(コントロールパネルの下に)環境変数を追加することです。

Java_OPTS = -Xms30000m -Xmx30000m

ヒント:RunWeka.iniがこの環境変数を使用していることを確認してください。

上記の例では、WEKAに30GBを割り当てています。できます。

それが一部の人々に役立つことを願っています。

0
Samer Aamar

Weka Workbench CLIまたはナレッジエクスプローラーを使用している場合は、次のように変更する必要があります。

ドキュメントでランタイムパラメータは-Xmx [size_required] mであることが推奨されているため、[size_required]はメモリ例外を回避するために保持するメモリサイズです。

RunWeka.iniを開きます

Maxheap = [size_required] Gを定義します

私の場合、maxheap = 4Gを保持しました、maxheap = 4096mのように設定し、add -Xmx#maxheap#を#setupsですべての実行オプションに追加できます(次のようなJavaコマンドの横に「cmd_」が付いたセクション

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

WekaおよびHelp >> SystemInfoを再起動して同じことを確認します

0
Prateek