Minecraft Forge Server Ram?
Guten Tag, ich habe das Problem mein Minecraft server laggt, da er zu wenig Ram hat, er hat aktuell 8GB zugewiesen, nur wenn ich ihn mehr zuweise (java -Xms8192 -Xmx8192 -jar forge-1.12.2-14.23.5.2859.jar -nogui) dann laggt er trotzdem noch bzw. wenn ich den ram zumbeispiel auf 16 GB hochstelle benutzt er trotzdem nur 6 und laggt weiter, kann man irgendwie erzwingen das er die 16 benutzt? Debian 10 - Linux - Amazon Coretto hotspot Java 8 JDK & JRE
Hast du überhaupt so viel Arbeitsspeicher? Und bitte benutz OpenJDK 16. Nicht die Java 8 kacke von Amazon
OpenJDK 16 untersützt aber kein Minecraft Forge, das untersützt nur Java 8 Mein Server hat 32GB
Gut habe gerade gesehen das du die 1.12.2 benutzt. Da solltest du eher Java 8 benutzen. Jedoch geht natürlich OpenJDK 8 für Forge. Nur solltest du nicht die Amazon Version benutzen
Kannst du mir vielleicht ein Link schicken? Und er benutzt ja trotzdem nicht den vollen ram
Was ist mit der CPU? Könnte es sein ,dass die überlastet ist?
Die ist bei 2 % müsste ein AMD Ryzen ThreadRipper
sein (64 kerne)
3 Antworten
Java kann nur so viel RAM ziehen, wie du auch im System hast.
Du hast einen Fehler im Start Script. Richtig sollte es stehen:
java -Xms8192M -Xmx8192M -jar forge-1.12.2-14.23.5.2859.jar -nogui
Du musst einem Wert (8192) auch schon die richtige Einheit (M = Megabyte) geben.
Auch wäre es sinnvoll Aikara Flags zu benutzen, da diese Minecraft Server mit erheblich mehr RAM Zuweisung (8 GB und mehr) stark Optimieren. Ebenfalls wird der Trash Collector Optimiert. Zusätzlich helfen die Flags bei starken Prozessoren mehr Leistung zu erbringen. Hier wäre das fertige Start-Script mit den Flags von Aikar:
java -Xms8G -Xmx8G -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:+AlwaysPreTouch -XX:G1NewSizePercent=30 -XX:G1MaxNewSizePercent=40 -XX:G1HeapRegionSize=8M -XX:G1ReservePercent=20 -XX:G1HeapWastePercent=5 -XX:G1MixedGCCountTarget=4 -XX:InitiatingHeapOccupancyPercent=15 -XX:G1MixedGCLiveThresholdPercent=90 -XX:G1RSetUpdatingPauseTimePercent=5 -XX:SurvivorRatio=32 -XX:+PerfDisableSharedMem -XX:MaxTenuringThreshold=1 -Dusing.aikars.flags=https://mcflags.emc.gs -Daikars.new.flags=true -jar forge-1.12.2-14.23.5.2859.jar
Viel Text der jedoch viel bringt. Diese Flags nicht zu verwenden wäre eine Verschwendung.
Wie auch noch erwähnt solltest du OpenJDK 8 verwenden. Hier ein Link:
https://docs.datastax.com/en/jdk-install/doc/jdk-install/installOpenJdkDeb.html
Auch auf Debian 11 zu aktualisieren kann dir helfen.
Leider steht bei JDK 8 nur
Package openjdk-8-jdk is a virtual package provided by:
oracle-java17-installer 17.0.1-1~linuxuprising5
oracle-java11-installer-local 11.0.13-1~linuxuprising0
You should explicitly select one to install.
E: Package 'openjdk-8-jdk' has no installation candidate
dann laggt er trotzdem noch bzw. wenn ich den ram zumbeispiel auf 16 GB hochstelle benutzt er trotzdem nur 6
dann braucht er zur Zeit nicht die vollen 16 GB, sondern kommt mit 6 aus ...
und laggt weiter
sicher, dass das dann am RAM und nicht an beispielsweise der CPU liegt?
kann man irgendwie erzwingen das er die 16 benutzt?
Ja. Indem du Xms und Xmx auf den gleichen Wert setzt... also
java -Xms16G -Xmx16G [optionale Flags] -jar <Server-Datei>.jar
oder mit M:
java -Xms16384M -Xmx16384M [optionale Flags] -jar <Server-Datei>.jar
Ja also er benutzt trotzdem nicht die 16GB
sollte er aber
kann das sein einfach wegen der java version?
eigentlich nicht ...
Ja benutze eine Amazon Coretto viele meinten die ist einfach scheisse
Laut Amazon basiert das auf OpenJDK, sehe da kein Problem mit. Ich lass meine Minecraft-Server auch mit OpenJDK laufen
Wahrscheinlich liegts am CPU. Die meisten Server Instanzen nutzen nur 1 CPU Kern also wenn dein Threadripper mit wahrscheinlich 16-64kernen bei 2% Auslastung ist kann's gut sein das der Kern der von der Serverinstanz verwendet wird auf 100% Auslastung läuft und deshalb der Server laggt. Deshalb macht es für Minecraft Server meistens Sinn einen hochtaktenden i5 oder so zu nehmen. Der beste Minecraft Server CPU den es aktuell auf dem Markt gibt wäre wohl der i9 12900k mit deaktivierten e cores und bis ans Maximum übertaktet. In kürze wahrscheinlich abgelöst durch den 13900k
Also jetzt funktioniert es aber es laggt immernoch genauso, also ich hab in minecraft immer 3/4 balken und es laggt etwas, ist das dann einfach nur die CPU oder? I mean die ist 7% ausgelastet, und die kerne sind alle so bei ca. 20%
Muss man halt genau prüfen. Es gibt Plugins welche einen ermöglichen die Auslastung der Serverinstanz genau nachzuvollziehen. Die Plugins/mods zeigen dann oft auch an was in der Welt die meisten resourcen verbraucht und ob's ein CPU oder ramproblem ist.
Ich selbst hab die nie genutzt weil mein Server der auf meiner Nas läuft nicht laagt..
Ja also er benutzt trotzdem nicht die 16GB, kann das sein einfach wegen der java version?