Wieviel Speicher kann die VM verwalten?

Status
Nicht offen für weitere Antworten.

Dudu

Mitglied
Hallo zusammen,

momentan bin ich bei meinem Tool gezwungen der VM mehr Speicher zuzuweisen. Geht ja über -Xmx??m und stellt von der Handhabung kein Problem dar. Jetzt habe ich das Problem, dass ich nicht mehr als 1,4 Gig zuweisen kann.
Code:
Error occurred during initialization of VM
Could not reserve enough space for object heap

Bevor einer fragt, wieso soviel, ist doch bestimmt nicht nötig. Leider momentan ja, würde ja eine Datenbank zur Optimierung der Daten, die das Tool machen soll, besser finden, aber die Anforderung lautet alles im Speicher zu machen.

Jetzt habe ich schon vermehrt gelesen, dass Leute der VM mehr Speicher zusichern konnten. Warum kommt bei mir die Fehlermeldung? RAM ist genug da, Windows 2000 Server ist auch angewiesen den Prozessen bis zu 3 Gig zu geben. Was ist da los?

Danke für die Antworten im Voraus.
 

lin

Top Contributor
Wieviel RAM hast du denn? Wenn z.B. nur 1.5GB da sind und du 1.4GB zuweisen willst, geht's wahrscheinlich nicht, weil windows selbst schon einige 100MB braucht....
 

Dudu

Mitglied
Danke erstmal für die Antwort :)

Auf dem Server sind 5Gig verbaut. Momentan laufen dort keine anderen Prozesse, als die Windowseigenen. Es stehen laut Taskmanager 4,7 Gig zur Verfügung.

Habe das ganze mal auf meinem eigenen PC versucht. Dort verhält es sich so, dass ich bis zu 1,2 Gig zuweisen kann beim Starten ohne Fehlermeldung. Ab 1,3 kommt der Fehler wieder. Lustigerweise habe ich nur 1 Gig verbaut. Zuweisung von 1,1 Gig kann ich noch verstehen, da ja in Wirklichkeit mehr als 1 Gig zur Verfügung stehen (1.024 kb usw). Aber das noch 1,2 Gig klappen verstehe ich nicht mehr.

Aber ich schweife vom Thema ab :wink:

Wie man sieht, ist genug freier RAM noch vorhanden. Woran könnte es noch liegen?
 

meez

Top Contributor
Zuerst einmal kannst du nicht mehr als 4 GB speicher zuweisen (32 bit)..
Bei alten Versionen der VM kannst du zudem nicht mehr als 2 GB zuweisen.

Hast du den Heap (für Referenzen, Klassen vars) selber auch definiert, oder hast du nur den Speicher (für Callframes usw.) gesetzt...Zeig doch mal den Befehl..
 

AlArenal

Top Contributor
Dudu hat gesagt.:
Habe das ganze mal auf meinem eigenen PC versucht. Dort verhält es sich so, dass ich bis zu 1,2 Gig zuweisen kann beim Starten ohne Fehlermeldung. Ab 1,3 kommt der Fehler wieder. Lustigerweise habe ich nur 1 Gig verbaut. Zuweisung von 1,1 Gig kann ich noch verstehen, da ja in Wirklichkeit mehr als 1 Gig zur Verfügung stehen (1.024 kb usw). Aber das noch 1,2 Gig klappen verstehe ich nicht mehr.

Die größe des RAM hat grundsätzlich wenig mit der max. Menge zuweisbaren Speichers zu tun. Der Swap ist ja nun wirklich ne alles andere als neue Erfodung. Nach meinen Erfahrungen kackt Java aber ab, sobald die VM mal vom OS in Teilen ausgelagert wird. Gerade Speicherlecks in Webanwendungen sind ätzend. Während man den Apache nur runterfahren muss, wenn man mal ein Update einspielt, darf man den Tomcat je nach Anwendung täglich wenigstens einmal neu starten...
 

Dudu

Mitglied
Zuerst einmal kannst du nicht mehr als 4 GB speicher zuweisen (32 bit)..
Bei alten Versionen der VM kannst du zudem nicht mehr als 2 GB zuweisen.

Hast du den Heap (für Referenzen, Klassen vars) selber auch definiert, oder hast du nur den Speicher (für Callframes usw.) gesetzt...Zeig doch mal den Befehl..

Es ist übrigens Version 1.4.2_6 installiert. Darf auf keine höhere Version wechseln. Aber wenigstens die 2 Gig hätte ich mal gerne bekommen. Interessiert mich halt warum er den Fehler schmeisst.

Über Eclipse starte ich mit das Tool mit den Argumenten -Xms64m -Xmx1400m. Bei -Xms64m -Xmx1500m kommt der Fehler.
 

AlArenal

Top Contributor
Mal ne blöde Frage:

Selbst wenn du es schaffst, dass sich die VM 2 GB schnappt, wie willst du sicherstellen, dass sie nicht doch mehr braucht und sich mit ner OutOfMemoryException in die ewigen Jagdgründe verabschiedet?

Was immer du da auch treibst: Besorg dir mal ein paar Infos zum Thema Caching. Auch ne DB2 oder Oracle hält nicht alle Daten im RAM vor..
 

Dudu

Mitglied
Sorry für die späte Antwort, war Zeit fürs Wochenende :D

Im Prinzip brauche ich ja nicht 2 Gig RAM für mein Tool. Kann das ganz gut abschätzen. Es läuft ja auch so. Ich hätte halt nur gerne gewusst, wieso der Fehler kommt, wenn es eigentlich klappen sollte.
 

meez

Top Contributor
Ich glaub nicht das das Problem bei der VM an sich liegt..
Du sagtest zwar, dass Win angewiesen ist jedem Prog bis 3 Gig. Speicher zu geben...Trotzdem denke ich, dass da irgend etwas blockiert..
 

Grizzly

Top Contributor
Mal 'ne ganz dumme Frage: Hast Du schon einmal ein anderes Betriebssystem ausprobiert? Vielleicht liegt es ja gar nicht an der VM sondern am OS. Oder an der VM Umsetzung für das OS - was natürlich herb wäre.
Weiss natürlich nicht ob das umsetzbar ist, der Test (Aufwand des Tests, Anforderungskatalog der Anwendung bzgl. Betriebssystem). ???:L
Wie gesagt, nur so 'ne Idee. :)
 

DP

Top Contributor
AlArenal hat gesagt.:
darf man den Tomcat je nach Anwendung täglich wenigstens einmal neu starten...

was hast du denn für ne tomcat-version? ich fahre meinen nur zu updatezwecken runter, und das kann schonmal alle 2 wochen sein. normalerweise sind 5-10 user gleichzeitig zugange.
 

AlArenal

Top Contributor
DP hat gesagt.:
AlArenal hat gesagt.:
darf man den Tomcat je nach Anwendung täglich wenigstens einmal neu starten...

was hast du denn für ne tomcat-version? ich fahre meinen nur zu updatezwecken runter, und das kann schonmal alle 2 wochen sein. normalerweise sind 5-10 user gleichzeitig zugange.

OpenCMS 5 auf nem 4er und 5er Tomcat. Ist nun seit zwei Wochen eh obsolote, weil von OpenCMS auf Typo3 umgestellt wurde. Aber auch im Gespräch mit Administratoren anderer Java-basierter CMS kam heraus, dass das tägliche Neustarten eine bekannte Praxis ist.
 

Dudu

Mitglied
Wie ich sehe, ist das Problem doch nicht so schnell zu erklären. Da bin ich ja froh, dass ich nicht soviel Speicher für das Programm zuweisen muss. Ich werde aber trotzdem mal nach Problem und Lösung suchen. Wenn ich was finde, poste ich es.

Danke an alle,
Dudu
 

byte

Top Contributor
Dudu hat gesagt.:
Da bin ich ja froh, dass ich nicht soviel Speicher für das Programm zuweisen muss.

Naja, ich bezweifel einfach mal, dass man heute so häufig in die Verlegenheit kommt, eine Heapsize von 1-2 GB oder noch mehr zu benötigen. :roll:

Vielleicht mögen manche Serveranwendungen sehr speicherhungrig sein, aber selbst da ist es doch irgendwann eher sinnvoller, die Anfragen auf mehrere Server zu verteilen. Denn da gibts ja dann noch andere Nadelöhrprobleme als fehlenden Speicher.
 

roddy

Aktives Mitglied
Naja, ich bearbeite hier n Graphen mit 1,3 Millionen Knoten und 1,6 Millionen Kanten, dabei wären 2 oder mehr Gigabyte ganz prickelnd :). Und da ich 2 Stunden gegoogelt hab, bis ich rausbekommen hab, warum ich meiner VM nicht mehr Speicher geben konnte und der Threadersteller hier offensichtlich ähnliche Probleme hatte, dachte ich teile meine erlangte Weisheit mal :).
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
J Wieviel Speicher maximal? Allgemeine Java-Themen 14
M Schätzfrage: Wieviel Prozessorpower brauche ich? Allgemeine Java-Themen 27
C Virtueller Speicher Allgemeine Java-Themen 36
sascha-sphw Auf GoPro Speicher zugreifen Allgemeine Java-Themen 10
TheJavaKid Mit Java die Festplatte mit dem meisten freien Speicher finden Allgemeine Java-Themen 7
J Strings int textdokumente speicher Allgemeine Java-Themen 3
M Eine Datei im Speicher erneut laden(?) Allgemeine Java-Themen 1
L Input/Output Datei in den Speicher lesen. Allgemeine Java-Themen 9
Thallius Wie mache ich eine Java App mit Icon startbar die mehr Heap Speicher braucht? Allgemeine Java-Themen 3
P Große Datenstruktur im Speicher halten Allgemeine Java-Themen 13
H Frage wegen Heap-Speicher Allgemeine Java-Themen 2
M Speicher der VM Allgemeine Java-Themen 4
W PDFBox "Nicht genügend Speicher" Allgemeine Java-Themen 2
S Speicher-Problem Allgemeine Java-Themen 4
C Strings und JSON Objekte so klein wie möglich im Speicher ablegen Allgemeine Java-Themen 5
V Input/Output BufferedI/OStream leert den Speicher Allgemeine Java-Themen 7
G Speicher erhöhen Allgemeine Java-Themen 10
R Programm frisst 'Virtuellen Speicher' wie PacMan Allgemeine Java-Themen 4
P Java Anwendung mehr Speicher zur Verfügung stellen?? Allgemeine Java-Themen 3
A 2D-Grafik 2MB jpg wird zu 300MB im speicher (fehler) Allgemeine Java-Themen 8
E Speicherverwaltung bzw. Speicher wieder frei geben?! Allgemeine Java-Themen 8
D Speicher beim Start zuweisen Allgemeine Java-Themen 10
S Bei Sortierung Speicher zu gering? Allgemeine Java-Themen 8
hdi Was frisst in meinem Programm den Speicher / verschlechtert die Performance Allgemeine Java-Themen 11
S Jar Datei mit mehr Speicher starten Allgemeine Java-Themen 2
S JAR Datei, mehr Speicher bereitstellen Allgemeine Java-Themen 5
S Viele Bilder -> Speicher ausgelastet? / (De-)serialisierung geht nicht mehr richtig Allgemeine Java-Themen 8
E Speicher frei machen (List) Allgemeine Java-Themen 9
J Speicher Probleme vorbeugen Allgemeine Java-Themen 8
C Laden / Speicher Allgemeine Java-Themen 8
R Eigener Assoziativ-Speicher Allgemeine Java-Themen 7
R Assoziativer Speicher welche Unterschiede? Allgemeine Java-Themen 5
S Zugesicherter Speicher der jvm nach Programmstart erhöhen Allgemeine Java-Themen 6
G FIFO Speicher nachbilden Allgemeine Java-Themen 2
G restlichen freien Speicher ermitteln? Allgemeine Java-Themen 3
M Variablen Speicher wieder freigeben ? Allgemeine Java-Themen 9
T Sortierter assoziativer Speicher mit Filter Allgemeine Java-Themen 4
L JVM: Speicher wieder für OS freigeben? Allgemeine Java-Themen 5
M Heap Speicher voll bei spezieller Resize Methode Allgemeine Java-Themen 5
R Gibt es eine JVM, die besser mit dem Speicher umgeht? Allgemeine Java-Themen 7
F OutOfMemoryError: Java heap space - Speicher verändern Allgemeine Java-Themen 8
O Datei im Speicher halten Allgemeine Java-Themen 4
C Speicher Problem Allgemeine Java-Themen 3
S TreeSet benötigt zu viel Speicher Allgemeine Java-Themen 5
J Out Of Memory - Speicher vergrößern? Allgemeine Java-Themen 2
L Nutzt Java bei Start der VM übermäßig viel Speicher? Allgemeine Java-Themen 3
F CPU auslastung wenn Speicher mit -Xmx erhöht Allgemeine Java-Themen 4
S Auslagerungsdatei (Speicher) werde voll Allgemeine Java-Themen 2
G Panel mit vielen Komponenten verbraucht viel Speicher Allgemeine Java-Themen 3
S Speicher Allgemeine Java-Themen 2
m@nu doppelte daten im speicher? Allgemeine Java-Themen 2
G Speicher Allgemeine Java-Themen 3
H wie viel speicher braucht eigentlich ein array? Allgemeine Java-Themen 2
A Speicher/Anzeige Problem in JTable Allgemeine Java-Themen 2
D Speicher der VM für ausführbares Jarfile erhöhen Allgemeine Java-Themen 4
D Eine geladene Klasse aus dem Speicher holen? Allgemeine Java-Themen 9
J in file schreiben frisst den speicher Allgemeine Java-Themen 5
P benötigter Speicher für Objekt Allgemeine Java-Themen 5
C Über C/C++ (JNI) angeforderten Speicher wieder frei geben Allgemeine Java-Themen 3
H Speicher freigeben klappt nicht bei Image Objekten, warum? Allgemeine Java-Themen 8
B Kostet das speichern von Variablen zusätzlichen speicher? Allgemeine Java-Themen 2
T Speicher für die VM ändern Allgemeine Java-Themen 17
S Static + Speicher + Bytecode etc. Brauche HILFE :/ Allgemeine Java-Themen 11
H Wie Cpu- und Speicher- Auslastung in Java auslesen Allgemeine Java-Themen 4
F Verfügbaren Heap-Speicher setzen Allgemeine Java-Themen 2
C RAM Speicher in Datei auslagern (Java Swapping) Allgemeine Java-Themen 4
N Speicher Problem bei grossem Heap Allgemeine Java-Themen 15
S Speicher reservieren Allgemeine Java-Themen 5
R nichtmehr benötigtes BufferedImages aus dem Speicher entfern Allgemeine Java-Themen 4
D Konfiguration verwalten Allgemeine Java-Themen 5
S Microservice Projekt verwalten Allgemeine Java-Themen 22
JavaNewbie2.0 Benutzer/Passwörter verwalten Allgemeine Java-Themen 11
C -Verschiedene Versionen eines Programms verwalten Allgemeine Java-Themen 7
T Spielkarten Enumeration in KartenDeck verwalten Allgemeine Java-Themen 7
H BlueJ Zustände verwalten Allgemeine Java-Themen 2
H [Logback || log4j] Wie richtig loggen / Log Instanzen verwalten Allgemeine Java-Themen 2
T Daten effizient verwalten Allgemeine Java-Themen 4
H Sehr viele Threads effizient Verwalten Allgemeine Java-Themen 13
C Daten speichern und verwalten Allgemeine Java-Themen 3
Y Properties verwalten! Allgemeine Java-Themen 3
G mehrere Threads verwalten? Allgemeine Java-Themen 14
W Einstellungen verwalten Allgemeine Java-Themen 31
S Objekte Massenhaft ;) Wie Objekte und Relationen verwalten? Allgemeine Java-Themen 6
J Unbestimmte Menge Objekte erstellen und "verwalten&quot Allgemeine Java-Themen 5
K Ansprechen und Verwalten der Parallelport Schnittsstelle Allgemeine Java-Themen 5

Ähnliche Java Themen

Neue Themen


Oben