Welcome!

Join our community of MMO enthusiasts and game developers! By registering, you'll gain access to discussions on the latest developments in MMO server files and collaborate with like-minded individuals. Join us today and unlock the potential of MMO server development!

Join Today!

Optimizing Linux server performance with JVM flags

Newbie Spellweaver
Joined
Jun 15, 2018
Messages
25
Reaction score
3
Messed around with JVM flags and came up with this, I ain't no Java expert but this thing works much better than original flags for me anyway.
And thanks feanturi for the post that gave me some idea to do this uwu

Code:
DEFAULT_JVM_OPTS='"-DLog4jContextSelector=org.apache.logging.log4j.core.async.AsyncLoggerContextSelector" "-server" "-XX:NewSize=4g" "-XX:MaxNewSize=6g" "-d64" "-Xms12g" "-Xmx16g" "-Xmn14g" "-XX:SurvivorRatio=8" "-XX:ParallelGCThreads=8" "-XX:+CMSParallelRemarkEnabled" "-XX:+UseCMSInitiatingOccupancyOnly" "-XX:CMSInitiatingOccupancyFraction=92" "-XX:+ScavengeBeforeFullGC" "-XX:+CMSScavengeBeforeRemark" "-XX:MaxTenuringThreshold=2" "-XX:+ParallelRefProcEnabled" "-Dsun.net.inetaddr.ttl=30"'
 
Newbie Spellweaver
Joined
May 26, 2018
Messages
30
Reaction score
1
Hi, could you expand this a bit more, are you saying that in Linux the Black Desert server suffers less delay?
 
Newbie Spellweaver
Joined
Jun 15, 2018
Messages
25
Reaction score
3
Hi, could you expand this a bit more, are you saying that in Linux the Black Desert server suffers less delay?
Nope, only if your hardware is good enough and use proper flags/configuration

and another thing that might be worth mentioning is that flags related to garbage collection should be used in different combinations for different ram amount allowed to be allocated for server, for example, since I assigned about 16g memory for this, I don't need classes to be unloaded when java handling garbage collection stuff, so I got rid of the flag that makes JVM unload some class that might not be recently used(don't really know how does JVM decide which classes to be unloaded tho).

I would recommend all of you trying to get a smoother server by looking up what does the flags do for the performance, maybe you'll learn something, and to contribute with what you learned in the process.

 
Newbie Spellweaver
Joined
May 26, 2018
Messages
30
Reaction score
1
Nope, only if your hardware is good enough and use proper flags/configuration

and another thing that might be worth mentioning is that flags related to garbage collection should be used in different combinations for different ram amount allowed to be allocated for server, for example, since I assigned about 16g memory for this, I don't need classes to be unloaded when java handling garbage collection stuff, so I got rid of the flag that makes JVM unload some class that might not be recently used(don't really know how does JVM decide which classes to be unloaded tho).

I would recommend all of you trying to get a smoother server by looking up what does the flags do for the performance, maybe you'll learn something, and to contribute with what you learned in the process.


Brother, I have the server of bdo491, I have a server with 64GB of ram, a microprocessor Xeon with 12 cores dedicated to this game, but in windows 10, would the serivor run better in linux?
my configuration is different from yours, but we also have to take into account that 120 to 150 players are connected to my server every day, with a peak number of 100 players online at a time, sometimes we have no problems and can play well, the problem arises when we are going to kill Karanda, Kzarka or some other boss, or just meet many players in the same place, the server collapses .. has not happened?
On the other hand the configuration I have in gameserver.bat is diferentte, and I wonder if the one shown here is better than mine, which is the basic one, we only change the ram values ​​that we assign

here:
Code:
set DEFAULT_JVM_OPTS="-server" "-XX:+DisableAttachMechanism" -Xms4G -Xmx64G "-d64" "-XX:MaxNewSize=24m" "-XX:NewSize=24m" "-XX:+UseParNewGC" "-XX:+CMSParallelRemarkEnabled" "-XX:+UseConcMarkSweepGC" "-XX:-UseSplitVerifier"


I see some differences, I suppose I should try that configuration that you expose to see if it improves the performance of my server at all!
 
Newbie Spellweaver
Joined
Jun 15, 2018
Messages
25
Reaction score
3
Brother, I have the server of bdo491, I have a server with 64GB of ram, a microprocessor Xeon with 12 cores dedicated to this game, but in windows 10, would the serivor run better in linux?
my configuration is different from yours, but we also have to take into account that 120 to 150 players are connected to my server every day, with a peak number of 100 players online at a time, sometimes we have no problems and can play well, the problem arises when we are going to kill Karanda, Kzarka or some other boss, or just meet many players in the same place, the server collapses .. has not happened?
On the other hand the configuration I have in gameserver.bat is diferentte, and I wonder if the one shown here is better than mine, which is the basic one, we only change the ram values ​​that we assign

here:
Code:
set DEFAULT_JVM_OPTS="-server" "-XX:+DisableAttachMechanism" -Xms4G -Xmx64G "-d64" "-XX:MaxNewSize=24m" "-XX:NewSize=24m" "-XX:+UseParNewGC" "-XX:+CMSParallelRemarkEnabled" "-XX:+UseConcMarkSweepGC" "-XX:-UseSplitVerifier"


I see some differences, I suppose I should try that configuration that you expose to see if it improves the performance of my server at all!

The first thing I noticed is that you have extremely small amount of ram allowed for this "NewSize", in my understanding that's Java's "new generation" of data in ram(compared to your total allowed RAM for the whole server), maybe you should try
Code:
"-XX:NewSize=4g" "-XX:MaxNewSize=6g"
like I did?

And for your question about Windows and Linux, I think the most important is that how kernel schedule all the works (if limit the things to OS specific), and on Windows you might have Windows Defender or some other M$ poop running, which won't be the concern if you're running Linux.


Edit:
How use ? >_>

Read everything in the server files and you'll understand, I just started to mess with these stuff since last week, try to learn things by yourself and gain experience, good luck.
 
Newbie Spellweaver
Joined
Aug 9, 2017
Messages
15
Reaction score
0
Read everything in the server files and you'll understand, I just started to mess with these stuff since last week, try to learn things by yourself and gain experience, good luck.

Thank you ^^
 
Newbie Spellweaver
Joined
Dec 20, 2004
Messages
62
Reaction score
0
Brother, I have the server of bdo491, I have a server with 64GB of ram, a microprocessor Xeon with 12 cores dedicated to this game, but in windows 10, would the serivor run better in linux?
my configuration is different from yours, but we also have to take into account that 120 to 150 players are connected to my server every day, with a peak number of 100 players online at a time, sometimes we have no problems and can play well, the problem arises when we are going to kill Karanda, Kzarka or some other boss, or just meet many players in the same place, the server collapses .. has not happened?
On the other hand the configuration I have in gameserver.bat is diferentte, and I wonder if the one shown here is better than mine, which is the basic one, we only change the ram values ​​that we assign

here:
Code:
set DEFAULT_JVM_OPTS="-server" "-XX:+DisableAttachMechanism" -Xms4G -Xmx64G "-d64" "-XX:MaxNewSize=24m" "-XX:NewSize=24m" "-XX:+UseParNewGC" "-XX:+CMSParallelRemarkEnabled" "-XX:+UseConcMarkSweepGC" "-XX:-UseSplitVerifier"


I see some differences, I suppose I should try that configuration that you expose to see if it improves the performance of my server at all!

Yes you will see a performance difference. Linux will run it much better. The amount of overhead that windows uses is a lot more especially if you are running it form a GUI.
 
Back
Top