I learned today that Minecraft server only work with single core CPU, I would like to know how I set up Minecraft server so that all CPU cores are fully used.
Minecraft servers can only run on one core, so many have multiple Minecraft servers running on one server
Nonsense
Well. That's how Minecraft was written.
And it doesn't look like that will change.
The forks like Spigot or PaperSpigot have already worked hard to move actions to other threads and cores (Netty, Chunk-laden.), But in the end the problem of the poorly programmed server remains.
Minecraft could easily support 500 players on a server and also a higher tick rate.
But changing is time-consuming. And costs time. And with it money.
It will never be something
Then have a look. Minecraft server multithreading
No, this is not possible, the main loop can only run on a single thread.
The plugins and the game itself are just not designed for it. Back then, Notch didn't think about it because it wasn't worth the effort.
The chat, asynchronous tasks, and other stuff are already running on other threads / cores. But this does not bring a big performance boost, because what matters is the main loop, and as I said, it can only run on a single thread.