Page 1 of 1

Multithreading Oblivion

Posted: 26 Mar 2014, 23:52
by CBass
It's no secret: The Oblivion engine sucks.. pretty bad. Installing a couple of textures/mods wil drop the framerate drastically. I assume the reason of this is because the engine doesn't allow using multiple CPU cores. I know there are some .ini tweaks, but they don't seem to do that much.

Is it possible to make some sort of fix/patch to make the Oblivion engine us multiple CPU cores? I realise that if this was easy to do, it would have already been done, but I always wondered. And since most of you guys working on OpenMW are programmers of some sort, I think this is a good place to ask.

Re: Multithreading Oblivion

Posted: 27 Mar 2014, 00:11
by wheybags
Basically just no :P
That sort of thing is nontrivial and is decided by the architecture of the whole program, you can't just hack it on afterwards

Re: Multithreading Oblivion

Posted: 27 Mar 2014, 02:58
by SquireNed
I believe Oblivion has some minor attempts to support multicore stuff that cause instantaneous CTD's and freezes; the problem remains in Fallout 3 (but fixed by New Vegas), and impacts every rig I've ever run the games on, though there is a config line to fix it which disables what little use of multithreading the game had.

Long story short, "if it's broke don't break it more".

Re: Multithreading Oblivion

Posted: 27 Mar 2014, 03:12
by dwcoates
wheybags wrote:Basically just no :P
That sort of thing is nontrivial and is decided by the architecture of the whole program, you can't just hack it on afterwards
To say the least

Re: Multithreading Oblivion

Posted: 27 Mar 2014, 03:46
by Chris
CBass wrote:It's no secret: The Oblivion engine sucks.. pretty bad. Installing a couple of textures/mods wil drop the framerate drastically. I assume the reason of this is because the engine doesn't allow using multiple CPU cores. I know there are some .ini tweaks, but they don't seem to do that much.
The problem here is that the engine is imply not designed with parallelization in mind. It will throw out tasks to different threads/CPU cores, but not having a proper design means the engine has to lock a critical section whenever it accesses certain pieces of data, and that prevents other threads/cores from doing any other work with the same data at the same time, which in turn kills any benefits multiple cores would have.

There is, however, an OBSE plugin that actually disables some of these critical sections and it does improve performance. But it's also a mine field waiting to blow up in your face, for obvious reasons.

Re: Multithreading Oblivion

Posted: 27 Mar 2014, 10:19
by ezze
CBass wrote:Is it possible to make some sort of fix/patch to make the Oblivion engine us multiple CPU cores?
Actually, YES. It would be a similar project to OpenMW, you might have heard of it, you should start it ;)

Re: Multithreading Oblivion

Posted: 27 Mar 2014, 20:32
by CBass
ezze wrote:
CBass wrote:Is it possible to make some sort of fix/patch to make the Oblivion engine us multiple CPU cores?
Actually, YES. It would be a similar project to OpenMW, you might have heard of it, you should start it ;)
Okay...so...first step...open.......Excel?

:roll:

Thanks for answering guys. :P

Re: Multithreading Oblivion

Posted: 28 Mar 2014, 12:39
by ezze
Excel can be useful to calculate how long it will take or how much it will cost :)