-
-
Notifications
You must be signed in to change notification settings - Fork 91
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Remove recommendation of the Aikars flags #121
base: 1.20
Are you sure you want to change the base?
Conversation
ZGC is hit or miss depending on the hardware setup. Aikar's flags are a popular standard, because they work good enough for over 90% of servers out of the box without the need of tweaking anything. |
ZGC is hit-or-miss if it's not generational - GenZGC is excellent pretty much universally. On the other hand, some of the Aikars flags are massive footguns which are liable to make things way less stable. |
Those are bold claims with no evidence provided. Benchmarks would need to be done on most hardware, old and new to even consider changing this. |
Which is better depends on hardware. |
Any recommendations on a benchmarking suite to test for this? |
Not really, as benchmarking minecraft itself is not realistically possible as it's not deterministic enough. You would also have to cover insane amount of hardware configurations. from desktop cpus to old xeons, because most people use crappy hosts that provide those old server cpus. |
So what evidence would the OP need to provide, as you've requested, to support their claim? |
|
I was curious to try this you propose: |
I mean you still need |
When I set it, it looks like this, since I can only assign flags, but the RAM flags are already defined. |
I made it allocate a minimum amount of memory at startup, it will end up using all the RAM when the server loads anyway. |
I've tried it and I've never used something that works so horrible, it generates a lot of server lag. |
The Aikars flags are old and outdated. Using them on Java 17 and 21 does users a massive disservice, as they are built around the archaic G1 garbage collector. Shenandoah on Java 17 and Generational ZGC on Java 21 are significantly more performant, with GenZGC providing sub-millisecond maximum GC pauses.