JVM Arguments for Modded Minecraft (Updated 12/30/13)

  • The FTB Forum is now read-only, and is here as an archive. To participate in our community discussions, please join our Discord! https://ftb.team/discord
so should the xms/xmx sizes stay at the amounts even on servers with more RAM? (say for example a server with 8gb ram, setting xms/xmx to 5g instead of 2, would it make a difference)

Read what's in the very last spoiler on my recommendations.
 
Ok, let me clarify that quickly. If you have a "busy" server, ie lots of chunk loaders or a constant 20/20 people on 24/7, you will want to make sure you increase the Heap size (Xms/Xmx.) Memory usage varies depending on server, so I can only give recommendations on memory.

As long as you have the 3G buffer for PermSize and the ReservedCodeCache factored into the maximum RAM you are allotted by your host, you can set your Heap to whatever you need. Just be sure to scale the Xmn accordingly.
 
awesome, thanks for that (I had read the last spoiler, just think it didn't sink in on the first read, lol). Thanks.
 
After using the java arguments for a while. I prefer to stick on ftb launcher as my experience. No matter what i do if i use multiMC after 1 / 2 hours playing i always got that terrible lag spiking. Which is back to my old problem. I thought this arguments could help fix it. :(

But the jvm arguments for ftb launcher work awesomly so i think i'll stick back to ftb launcher then
 
Hrm. I may need to switch up the GC on the multimc. Seems a few of the newer mods are doing things that I'm going to need two garbage collectors to handle. I wanted to stick to just one because I want to keep cpu usage down. I can't find which mod(s) are causing the issues.

I, and a couple others, have some inclinations as to what is doing it. Honestly, unless I deobfuscated every mod and loaded them all together in eclipse and linked it to a profiler so I can watch the interactions, I can't be sure.

I'll update the OP on Monday probably.
 
  • Like
Reactions: reddvilzz
Thank you alot for this information, I am putting them all to a test on my server and see how it goes :-D

Have a nice day
 
updated the arguments to run two different garbage collectors. one in the Eden space and one in the old generation. This is primarily to combat some difficulties in unleashed 1.1.3 and 1.1.4 and to stop the "rubber banding" effect of mobs in SMP.
 
updated the arguments to run two different garbage collectors. one in the Eden space and one in the old generation. This is primarily to combat some difficulties in unleashed 1.1.3 and 1.1.4 and to stop the "rubber banding" effect of mobs in SMP.


what arguements were added to make that change? (just curious which specific ones they are, like to learn about them as much as I can :))
 
-XX:+UseParNewGC -XX:+UseConcMarkSweepGC replaced the -XX:useG1GC for garbage collection. The rubberbanding effect is happening because "something" is doing weird things in the heap thats causing the G1GC to lag during tenuring.
 
Need to updates my arguments then. Thanks a lot :D

Which arguments you updated? Both on ftb and multimc?
 
Nice collection. Something you can add if your CPU supports it is -XX:UseSSE=4 as java by default uses SSE3.

Is there a reason why your PermGen is that HUGE? -XX: PermSize=1024m seems overkill to me. -XX: PermSize=128m should suffice maybe -XX: PermSize=256m.
 
Last research I know sse4 was software dependant. I didn't actually get any performance boost using it, so it's not included.

The reasoning I have the default permgen so high is due to decompiles by JIT before unloading classes. The way I have it setup, it's a necessity or you can get Hugh performance loss when JIT drops code from the cache back into PermGen from the need to constantly do a dynamic resize. I set these up to try to keep everything loaded longer in RAM rather than a constant I/O from disk.

Honestly, it wouldn't need to be that large if java wasn't limited to 2GB of reservedcodecache.
 
can somone help-me modify these arguments for a little home server for two, three people on a home pc with the server and a client runnig on it, I have 3gigs of ram, if we consider that windows takes up one, my pc actualy has 4gigs.
I tried to adpt them but it always gives me errors, its just a small server for me and my little sister using our internet, we are connected to the same router, so its just a small lan.
 
can somone help-me modify these arguments for a little home server for two, three people on a home pc with the server and a client runnig on it, I have 3gigs of ram, if we consider that windows takes up one, my pc actualy has 4gigs.
I tried to adpt them but it always gives me errors, its just a small server for me and my little sister using our internet, we are connected to the same router, so its just a small lan.
Just take the arguments as they're provided. You don't need to do anything but add them. Eyamaz did all the hard work.
 
  • Like
Reactions: Shadowzfire
If your trying to set them up on a 32bit system, they won't run properly. With the amount of RAM your saying you have, I'm going to guess that's the case. Unfortunately, there is little I can do for 32bit users just because of the sheer amount of RAM it takes to fully optimze a modpack the size of something like unleashed.
 
No, actually it is a 64bit sistem, so I don´t think it will be a problem.

But in the near future im gonna try to convince my parents to buy me some new memories for my pc, it is a desktop. I won´t ask them just now cause they just bought my books for school and money is a tad bit short.
 
Hrm, it may not work as well but you can try lowering the xms/xmx to 1024m, Xmn to 256m, permsize to 512m and the reservedcodecache to 1024m. I give absolutely no guarantees for stability though.

On a side note, I have my JVM Arguments running on StrayMav's server now and it's withheld "Straystresstestification" extremely well.