Skip to content

Configuration~ Forge 1.16

Steven Cao edited this page Jan 4, 2021 · 1 revision

Thread Count

Thread count changes the number of threads used by the workers. Workers or executors are used for running tasks in parallel using multiple threads. The general rule is that increasing the values will increase CPU usage and may improve performance.

Technical detail: this modifies parallelism in the ForkJoinPool constructor.

Option Smooth Boot Default Value Vanilla Default Value Notes
bootstrapThreads 1 Total CPU threads, up to 7 Bootstrap Worker is used only by datafixer builders when the game is first loading. Leave at 1 because the tasks doesn't scale well with multithreading. Could be system dependent so you may want to test it.
mainThreads 1/2 of total CPU threads Total CPU threads, up to 7 Main Worker is used by most parallel tasks such as stitching sprite atlas. Change this affects loading times, and may have an impact on in-game performance.

Note: You can change the thread count of modloading worker in Forge's own config fml.toml, at maxThreads.

Thread Priority

Thread priority changes the priority given to each of the threads. The parameter is between 1 and 10, with 5 being the default. Changing this is similar to changing an application's priority in the task manager. A lower value leaves more performance for other programs, and a higher value increases Minecraft's CPU priority. Counterintuitively, it's a good idea to lower the thread priorities, at least for the worker threads. This stops Minecraft from lagging other programs that are running at the same time (ex. Youtube videos), while it does not have a large impact on the actual game performance.

Technical detail: this calls Thread.setPriority for each thread when initialized.

Option Smooth Boot Default Value Vanilla Default Value Notes
gamePriority 5 5 For the main thread of the client/server.
integratedServerPriority 5 5 For the client integrated server thread. Does nothing on (actual) servers.
bootstrapPriority 1 5 For the threads created by Bootstrap Worker.
mainPriority 1 5 For the threads created by Main Worker.
ioPriority 1 5 For the threads created by IO Worker. IO Worker is used for reading/writing chunks and saving screenshots.
modLoadingPriority 1 5 For the threads created by modloading worker.