Skip to content

2.15

Compare
Choose a tag to compare
@brianmiller brianmiller released this 13 Apr 03:42
· 31 commits to master since this release

Commits

10d2168
b5d2fb6
332bfa6
faf981c
7ef7acf
042413f
f145468
e75145c

Fixed missing scrollbar on world editor pages

image

Thunderstore multithreading!

This release brings multithreading to the Thunderstore local sync process. The current TS database is around 50MB of JSON. It's takes a really long time to parse through more than 2.4million lines of text each time for every mod. This change introduces two new configuration options within the 'settings' table.

In the 'settings' table: the below are default values

  • thunderstore_local_sync = 1
    -- valid options: 1 = enable, 0 = disable
  • thunderstore_chunk_size = 1000
    -- this value tells your computer to breakup the big 50MB json file into smaller pieces. A value of 1000 will create individual workable chunk files containing no more than 1000 mods per file. As of this date, Thunderstore currently has 5702 mods in the Valheim database. A value of 1000 would create 6 files which will result in 6 parallel threads. I.e., lower value = more threads
    -- if your computer cannot keep up, a WARNING will appear in the thunderstore sync log.
  • this change dramatically speeds up the mod editor admin page load times as well

Here's multithreading in action on the production server hosting https://phvalheim.com with a "thunderstore_chunk_size" set to 50. This server has 36 cores w/hyperthreading--72 threads (dual xeon e5-2699 v3) CPUs.

  • Before multithreading total execution time took 4hrs~
  • With a chunk size set to 50 (115 threads), total execution time took 3mins~

image

Note: the above is a super powerful server, adjust with caution. Learning the limits of your system is a humbling process 🙂.