Ich habe mir keinen Rechner mit 16GB RAM zusammengebaut, damit Gephi von 32bit Limitierungen eingebremst wird. Die 32bit Java Dingens kann nur 1,5GB RAM verwalten. Da ich mich bereits zum zweiten Mal einen Nachmittag lang damit herumgeärgert habe und stänidg den „JVM creation failed“ Error bekam oder sich einfach nichts tat, möchte ich kurz festhalten was ich gemacht habe. Auch um mich selbst daran zu erinnern, wenn ich den Computer einmal neu aufsetze oder an einem anderem arbeit.
64bit Java installieren
Irgendwie kommt man über die Java.com Seite zu den manuellen Downloads. Aktuell funktioniert auch dieser Link. Dort die Offlineinstallation von 64bit JRE für Windows herunterladen.
Beim ersten Mal installieren habe ich alles auf Standard gelassen (außer ask Toolbar Unsinn). Danach hat sich aber nichts geändert. Daher habe ich es erneut installiert und den Zielordner manuell geändert. Diese Option muss man im ersten Screen aktivieren, damit man sie im zweiten nutzen kann.
Ich habe mich dazu entschieden den Ordner jre64 statt dem standardmäßigen jre7 zu nennen. Weil ich bei dem Java Versionsnummernzeug sowieso nicht mehr durchblicke und ich mich so hoffentlich erinnere, was ich gemacht habe. Ich habe keine Ahnung, ob dies tatsächlich sinnvoll ist, aber wie geschrieben, hat es bei mir erst geklappt als ich es in diesen Nichtstandardordner installiert habe. Vielleicht war es Zufall, vielleicht hat es etwas damit zu tun, dass im anderen Ordner irgendwas der 32bit Installation ist. Oder was auch immer.
Java meint dann, dass es schon installiert ist, ich habe dann einfach gewählt, dass ich es dennoch installieren will.
Pfad in der gephi.conf anpassen
Bei mir lag die Datei unter „C:\Program Files (x86)\Gephi-0.8.2\etc“. Zum Bearbeiten habe ich Notepad++ verwendet. Die ersten Mal hat sich Windows beschwert, dass ich keine Rechte hätte, dass ich es nicht speichern könnte und dass das nicht ginge. Dann habe ich Notepad++ als Administrator ausgeführt und den Computer daran erinnert, wer hier die Befehle gibt.
In Zeile 11 habe ich das # zu Beginn der Zeile entfernt und das „/path/to/jdk“ durch den Pfad zu meinem 64bit JRE eingefügt.
# default location of JDK/JRE, can be overridden by using --jdkhome <dir> switch
jdkhome="C:\Program Files\Java\jre64"
Grundsätzlich könnte man Gephi anschließend als Admin ausführen und warten bis es sich selbst meldet, damit es den zugesprochenen RAM erhöhen kann. Oder ihr macht es wie ich und schreibt direkt rein wie viel RAM es nutzen darf.
In Zeile 6 hinter „-J-Xmx“ kommt die Größe in MB rein. Ich habe mich für 15GB entschieden.
# command line switches
default_options="--branding gephi -J-Xms64m -J-Xmx15360m -J-Xverify:none -J-Dsun.java2d.noddraw=true -J-Dsun.awt.noerasebackground=true -J-Dnetbeans.indexing.noFileRefresh=true -J-Dplugin.manager.check.interval=EVERY_DAY"
Gephi ans Limit bringen
Woher weiß ich, dass Gephi nun in 64bit arbeitet? Als erstes bekommst du keine Fehlermeldung beim Start, auch wenn du den verfügbaren RAM auf mehr als 1,5GB eingestellt hast. Zweitens nutzt Gephi tatsächlich mehr als 1,5GB RAM. Bei mir wird weiterhin Gephi als 32bit Programm angezeigt, aber es gibt ein Java Binary von dem Gephi ein Unterprozess(?) ist.
Zum Vergleich: Gephi im normalen 32bit Modus
Ich weiß nicht, ob ich alles richtig gemacht habe. Auch sind meine Erklärungen laienhaft. Aber es funktioniert. Über Infos warum und wieso dieses oder jenes sein muss, freue ich mich. Ansonsten wünsche ich allen mit ähnlichen Problemen gutes Gelingen. Falls ihr eine andere/bessere Lösung habt, gerne in die Kommentare.
Schreibe einen Kommentar