The Killd Board / Iron golems

How many iron golems does it take to crash a Minecraft server?

Server died#5 of 12 on the board

3,131 before the tick rate gave way, and 27,445 before the server died. Iron golems took more than the mobs above them on the board, but they made the point about collision cost better than anything else we spawned.

server stopped keeping up at
3,131
pushed to
27,445
The process stopped answering. Watchdog territory.

Paper 1.21.11 · AMD Ryzen 7 9700X · 6GB allocated

Why iron golems cost so much

An iron golem has one of the largest hitboxes in the game. Entities standing in the same space have to test each other for collisions, and that testing scales badly as the pile gets denser, so the cost per golem rises as you add golems. Long before the server had anything to do with the player, the pile was spending its tick budget on golems shoving each other.

How we tested it

Everything spawned into a single chunk, in one pile, with the server left running until the tick rate gave up. The server ran Paper 1.21.11 on an AMD Ryzen 7 9700X with 6GB allocated, which is the same hardware and the same RAM policy as an ordinary Hostd plan. We watched TPS and tick times rather than guessing, wrote down the count where the server first fell behind, and kept spawning until it either died or made it clear it was not going to.

Iron farms accumulate. If yours has no kill chamber, or the chamber jams, the golems stack up in one chunk and you get exactly this failure in miniature.

What this means for your server

If your own server is printing Can't keep up! Is the server overloaded? the cause is the same shape as this one: something in the tick loop is taking longer than its 50ms budget. Roastd reads your RAM allocation, view distance, player slots, JVM flags and logs and names which of those it is. No account, no world upload, no charge.

Get your server roasted

Questions about iron golems

Do iron golems cause lag?

A working iron farm does not. A jammed one does. Golems that pile up in a single chunk keep testing collisions against one another, and that cost grows faster than the count does. Our test server started falling behind at 3,131 in one chunk.

Why does entity crowding lag a server more than the same number spread out?

Because collision checking is between entities that share space. Spread a thousand mobs over a hundred chunks and most of them never test against anything. Put the same thousand in one chunk and each one is checking against its neighbours every tick. Crowding is its own tax, on top of the per-entity cost.

Elsewhere on the board

See the full Killd Board, all 12 runs ranked →

Keep reading

Rent the machine we keep breaking

Same AMD Ryzen 7 9700X, same hard-reserved RAM, same NVMe. Yours will not have 27,445 iron golems in one chunk, which gives it a considerable head start. Online in under a minute, with a free address, DDoS protection and a 7-day money-back guarantee.

Cookies