OpenXRay/xray-16

Plans for Multithreading/Multiprocessing (i.e. using ALL THE CORES)

Aperta

#1540 aperta il 23 nov 2023

 (10 commenti) (0 reazioni) (0 assegnatari)C++ (519 fork)auto 404
EnhancementHelp wantedPerformancePlayer ExperienceQuestion

Metriche repository

Star
 (3524 stelle)
Metriche merge PR
 (Metriche PR in attesa)

Descrizione

Is your feature request related to a problem? Please describe.

I have enjoyed the original trilogy, as well as Anomaly in vanilla and GAMMA flavours. openXRay 1.6 is the de-facto way to play the OG trilogy as well as the upstream for xray-monolith on which Anomaly is based, hence I'm asking about this here:

Are there any plans to implement multithreading/multiprocessing?

With the engine being pretty CPU-bound, it was already frustrating at 4 cores that the engine would only utilize 25% of the CPU, but now that after over a decade I finally upgraded to a 16-core CPU I get the engine to utilize a whopping… 6.25% of available CPU resources. And this will only get more ridiculous if things like RISCV enter the desktop market, i.e. machines where you can expect like 128 cores, but each with very low performance.

I fully expect to still play some variation of STALKER 15 years from now, so I don't really care about how long it would take and I don't care either if it won't receive any sort of priority for years to come, but I would like to see at least some acknowledgement, that this is on developers' minds.

Describe the solution you'd like

The engine being able to use all cores, i.e. have all CPU-bound subsystems like A-Life use either multithreading or multiprocessing to achieve maximum parallel resource usage.

Describe alternatives you've considered

The engine being able to use… more cores than now, with dedicated threads or processes for specific subsystems like A-Life, physics, etc. Not ideal, but sounds like it would be an easier approach to get a considerable boost of CPU-bound performance within an intermediate timeframe.

Additional context

Love the project either way. ❤️

Guida contributor