mojira.dev

Joakim Simonsson

Assigned

No issues.

Reported

No issues.

Comments

This is what I did now: I restarted the server and waited for it to completely start. I didn't log in as a player. I ran debug start/stop from the terminal and got new profiling data here: 

[media]

Between the /debug commands this was appearing in the console:

/debug start
[23:13:22] [Server thread/INFO]: Started debug profiling
[23:13:41] [Server thread/WARN]: Something's taking too long! 'root.tick.levels.world_merged_baard minecraft:overworld.tick.chunkSource.chunks.pollingChunks' took aprox 189.156585 ms
[23:13:41] [Server thread/WARN]: Something's taking too long! 'root.tick.levels.world_merged_baard minecraft:overworld.tick.chunkSource.chunks' took aprox 189.848294 ms
[23:13:41] [Server thread/WARN]: Something's taking too long! 'root.tick.levels.world_merged_baard minecraft:overworld.tick.chunkSource' took aprox 194.153756 ms
[23:13:41] [Server thread/WARN]: Something's taking too long! 'root.tick.levels.world_merged_baard minecraft:overworld.tick' took aprox 194.774353 ms
[23:13:41] [Server thread/WARN]: Something's taking too long! 'root.tick.levels.world_merged_baard minecraft:overworld' took aprox 195.017934 ms
[23:13:41] [Server thread/WARN]: Something's taking too long! 'root.tick.levels' took aprox 195.542521 ms
[23:13:41] [Server thread/WARN]: Something's taking too long! 'root.tick' took aprox 195.790319 ms
[23:13:41] [Server thread/WARN]: Something's taking too long! 'root' took aprox 195.965604 ms
/debug stop
[23:14:10] [Server thread/INFO]: Stopped debug profiling after 47.50 seconds and 951 ticks (20.02 ticks per second)

During the run, I could see one thread that was constantly using ~25% CPU.

Allright, but I don't have any server console (nogui) and never used RCON. But maybe this is good enough:

  • I logged in as a player, started debug, and logged out

  • waited some time...

  • I logged in again as a player, and stopped debug

Here is the profiling result from that run: 

[media]

@Jochem: Here are profiling results when I play on the server with one player:

[media]

Not too bad performance after a while. But using almost 100% CPU. I was not able to test with multiple players right now (the scenario when it crashes).

Is it possible to do profiling when there are no players logged in? It would be interesting to know why it is using CPU when not in use.

I have exact same setup as Justin (single-core, Arch Linux with OpenJDK8, not VM but real hardware). And I have the same problems:

  • CPU usage 25% when no players logged on

  • CPU usage 100% when playing on the server (things goes very slowly on the server, almost unplayable)

  • When 3 users are logged on at the same time, the server crashes.

  • The problem was there in 1.14 and is still there in 1.14.1

@Jochem: Are there any instructions how to turn on the built-in debug profiler?

If you want I can attach crash reports.

For what it's worth, here is a screenshot from my dedicated PC running Arch Linux with Minecraft server 1.14 (md5 of jar: 177e83e7563b08509c70b1296583f29f).

It is constantly using ~25% CPU, even when there is no player logged on.

[media]

My Java version:

openjdk version "1.8.0_212"
OpenJDK Runtime Environment (build 1.8.0_212-b01
OpenJDK 64-Bit Server VM (build 25.212-b01, mixed mode)