View Issue Details

IDProjectCategoryView StatusLast Update
0006503The Dark ModCodingpublic10.03.2024 20:53
Reporterstgatilov Assigned Tostgatilov  
PrioritynormalSeverityfeatureReproducibilityN/A
Status resolvedResolutionfixed 
Product VersionTDM 2.12 
Target VersionTDM 2.13Fixed in VersionTDM 2.13 
Summary0006503: Jobs system improvements
DescriptionRight now job system is rather limited in how many cores it can use (hardcoded with cvar).
The historical reason for that is parallel images loading, which should not use too many threads on HDD.
Time to improve core allocation for jobs system: use more cores in gameplay, use maximum cores during loading.
Additional InformationSee post:
  https://forums.thedarkmod.com/index.php?/topic/20869-reducing-load-times/&do=findComment&comment=491752
TagsNo tags attached.

Activities

stgatilov

stgatilov

10.03.2024 20:51

administrator   ~0016566

Last edited: 10.03.2024 20:52

A big bunch of commits:
  r10669 Revised jobs system to use more cores (exact number determined automatically).
  r10670 Reimplemented parallel images loading with better parallelism.
  r10671 Fixes to producer-consumer queue.
  r10672 Added a way to conditionally use idScopedCriticalSection.
  r10673 Minor refactoring of idSoundCache::FindSound in preparation for parallel sounds loading.
  r10674 Implemented parallel loading of sound samples.
  r10675 Yet another EAS loading optimization.
  r10676 Great overhaul of mission load progress bar.

So the basic points here are:
1) Automatically use all physical cores during gameplay, all logical cores during loading/offline.
2) Better parallel loading of images.
3) Parallel loading of sound samples.
4) Better progress bar.
5) Further optimized EAS loading for maps with elevators.
stgatilov

stgatilov

10.03.2024 20:52

administrator   ~0016567

Perhaps in some distant future I'll do parallel loading of models too.
Then all three "big" type of assets would be loaded in parallel =)
But not now.

Issue History

Date Modified Username Field Change
09.03.2024 12:39 stgatilov New Issue
09.03.2024 12:39 stgatilov Status new => assigned
09.03.2024 12:39 stgatilov Assigned To => stgatilov
10.03.2024 20:51 stgatilov Note Added: 0016566
10.03.2024 20:52 stgatilov Note Added: 0016567
10.03.2024 20:52 stgatilov Note Edited: 0016566
10.03.2024 20:53 stgatilov Status assigned => resolved
10.03.2024 20:53 stgatilov Resolution open => fixed
10.03.2024 20:53 stgatilov Fixed in Version => TDM 2.13