MovingBlocks / Terasology

Terasology - open source voxel world
http://terasology.org
Apache License 2.0
3.64k stars 1.32k forks source link

feat: make number of chunk processing threads configurable #5237

Closed BenjaminAmos closed 2 months ago

BenjaminAmos commented 2 months ago

Contains

This pull request adds a setting to control the maximum number of available worker threads for chunk processing. More precisely, it controls the number of pooled threads available to ChunkProcessingPipeline.

From testing, I have found that reducing the number of chunk threads can noticeably reduce overall CPU utilisation. Although modern operating systems are very good at multitasking, I have noticed detrimental system-wide effects when the game occupies too much processor time at once. The ideal quantity will vary from player to player and so I think this may be a useful option to have configurable.

How to test