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

Citizens - low TPS #1615

Open
Blamo27 opened this Issue Nov 11, 2018 · 10 comments

Comments

Projects
None yet
5 participants
@Blamo27

Blamo27 commented Nov 11, 2018

Hello,

I have a performance problem with Citizens. Indeed my server has the Citizens, Sentinel plugin and my TPS is sometimes very low.

I generated a timings and that's what made me realize that the performance problem comes from Citizens.

==> https://timings.aikar.co/?id=fff13ac69ffc48c3a5d95972ea6c9d57

PaperSpigot version :
image

Citizens version :
image

Sentinel version :
image

Server specs :
CPU : Intel i7-7700K - 4c/8t - 4,2GHz /4,5GHz
RAM : 64Go DDR4 2400 MHz
SSD : SoftRaid 2x450Go

Server RAM : 12 GB

NPCs count less than 1500.

Citizens configuration :
https://gist.github.com/Blamo27/b11c70db49cd52d0d96033e4ba2a4a54

Can you help me please ?
Thanks : )

@Blamo27 Blamo27 changed the title from Citizens performance to Citizens - low CPU Nov 11, 2018

@Blamo27 Blamo27 changed the title from Citizens - low CPU to Citizens - low TPS Nov 11, 2018

@mcmonkey4eva

This comment has been minimized.

Member

mcmonkey4eva commented Nov 11, 2018

Hard to be sure from that messy timings page (a profiler recording would be significantly more trackable) but looks like probably pathfinding at fault. Either too many paths being taken, or some paths that cannot be taken but are set as goals (ie the pathfinder searching for a path that doesn't exist).

The use-new-finder setting might help things when flipped, alongside lowering max iterations.

@Reversiya

This comment has been minimized.

Reversiya commented Nov 16, 2018

I seem to be getting a similar issue using

Paperspigot 1.8.8: https://gyazo.com/fb63b69527ba6d285520c7f473648ea7

Citizens version: https://gyazo.com/11771b29ed60bc3dcc8b607c916e9469

Timings: https://gyazo.com/2b48cfd3d0ca2f8b7fcc7e9ab6ed94a6

Server specs :
CPU : i7-6700K
Server RAM : 10 GB

@mcmonkey4eva

This comment has been minimized.

Member

mcmonkey4eva commented Nov 16, 2018

@Reversiya you're running nonsensically ancient versions all around... update.

@Reversiya

This comment has been minimized.

Reversiya commented Nov 16, 2018

@mcmonkey4eva many major servers run on 1.8 or at the very least support it. Dozens of thousands of dollars are thrown into clientside anticheats for 1.7/1.8. I’m not here to argue, but a lot of major servers operating in pursuit of profit run 1.7-1.8, we all know what happened to shotbow after it removed 1.8 support. Even rpgs like wynncraft support 1.8.

As for citizens, I’m not too sure if the latest build supports 1.8.8 or not. I just thought I’d throw in the issues I’ve been having recently, maybe help find the cause as i seem to be having the same issue running several versions behind.

@mergu

This comment has been minimized.

Contributor

mergu commented Nov 16, 2018

@Reversiya You're 324 citizens builds behind, much more than 'several'. Your build was released in 2015. You can't realistically expect us to step into a time machine to diagnose issues that have probably been solved since then.

As for servers 'supporting' 1.8, your example (wynncraft) runs 1.12.2 and uses plugins such as ViaVersion to provide backsupport for older clients. You can learn more about this here: https://wiki.citizensnpcs.co/Minecraft_1.8

At this point, four years after the release of 1.8, you should be running 1.12.2 or 1.13.2

@fullwall

This comment has been minimized.

Member

fullwall commented Nov 16, 2018

@Reversiya you should update to the latest Citizens build (it does support 1.8.8) so we can work off the same versions.

In terms of your issue @Blamo27, is there something else you can use to track performance? Aikar's plugin is not accurate because a lot of PlayerUpdateTask's time is spent within Minecraft internals and not Citizens code but it will be reported as Citizens' fault anyway.

@Reversiya

This comment has been minimized.

Reversiya commented Nov 16, 2018

@mergu as I stated before, I am throwing my issue in as it’s an extremely similar situation to the one shown on this issue, meaning it may still be an issue in all 324 build that followed after mine.

It was just a few months ago velt hit 8,000 players, running an entire 1.7 Network. Also viaversion only provides forward support from 1.8, I believe you meant viabackwards or viarewind.

Demographics on hypixel show 49% use 1.8 while 51% use 1.9+. Badlions demographics showed 98% used 1.7. 1.8 has almost the same amount of players than the 5 versions 1.9-.13 combined.

I would not mind updating if the community was in favor of updating to .12 or .13, however, there is clearly a large majority that prefer 1.8.

I’m not demanding you fix this bug or provide support for a build 300 versions behind. I never recall asking for support, a time machine, or a sarcastic response, I claimed I was here to help find the cause since it seems to be quite hard to reproduce if it hasn’t been patched in 3 years.

@mergu

This comment has been minimized.

Contributor

mergu commented Nov 16, 2018

We can't know if the issue you are seeing is the same as OP is seeing unless you are running comparable versions (and possibly provide better profiler recordings)

Edit: Not here to argue about superior server versions, but let's at least get the statistics right: https://bstats.org/global/bukkit. It's a fact that more people play 1.12.2

@Blamo27

This comment has been minimized.

Blamo27 commented Nov 16, 2018

@fullwall Okey, I can do it, what track performance software should I use ?

@fullwall

This comment has been minimized.

Member

fullwall commented Nov 16, 2018

@Blamo27 something like warmroast, visualvm, jprofiler, (proper java profilers) would be ideal. They are somewhat difficult to set up however. You want the method profiling data from one of those programs.

@Reversiya the NMS code for 1.8 and 1.12 is completely different, let alone the Citizens code since that build. It's extremely unlikely that this is the same issue. However, if you update to the latest Citizens build and use a proper profiler we can get closer to the root cause of your issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment