OpenArena Message Boards

OpenArena Contributions => Development => Topic started by: TheShooter on April 12, 2009, 10:17:04 PM



Title: Is Openarena Multi-threaded ? Does it not like triple-core CPUs ?
Post by: TheShooter on April 12, 2009, 10:17:04 PM
I am wondering whether Openarena is multi-threaded? Does it ustilize only one core of the cpu or two cores, or can it even utilize 3 or 4 cores ?

I have a T7200 Core 2 Duo on my laptop with an ATI  X1400. OS is Ubuntu Hardy (8.04) with ATI fglrx driver, and when I play OA, I can see that both cores are utilized to the maximum.

Recently I got a new desktop with a Phenom II x3 and an ATI HD3200. OS is Ubuntu Jaunty (9.04) with ATI fglrx driver, and when I play OA, I can see that only one core is utilized with other almost doing nothing.

So what's going on? Does OA have a problem with triple core CPU's or is there something else up ?


Title: Re: Is Openarena Multi-threaded ? Does it not like triple-core CPUs ?
Post by: sago007 on April 13, 2009, 02:02:06 AM
The official build uses only one core. You can compile a multi-threaded version and some distributions have.

Not all parts of the engine are completely thread safe and that is the reason disabling it in official builds.


Title: Re: Is Openarena Multi-threaded ? Does it not like triple-core CPUs ?
Post by: 0kelvin on April 13, 2009, 06:09:29 AM
openarena


Title: Re: Is Openarena Multi-threaded ? Does it not like triple-core CPUs ?
Post by: sago007 on April 13, 2009, 04:34:41 PM
From what I heard, a single-threaded game running on a multi core system never takes advantage of multi-threading, what happens is that the OS keeps switching from one core to the other.
yes and no.

The game will only use one core at a time if compiled without SMP support.

However it is not entirely correct that it does not gain from running on a multi-core system. A system usually has a lot of background programs running and they can be moved to other cores and will not steal resources from the program.

Multi-threaded programs are extremely hard to test as they may crash undeterministic. Even if you run a program flawless for years an upgrade to the Operating system priority system might break the program.

Multi-threaded programs can have lots of problems that single threaded programs does not care about such as race conditions and deadlocks. The way to avert race conditions is to design the program to be multithreaded from the beginning that is too late for id tech3. I don't remember what part of ioquake3 that has problems. It might be the sound system or input system that has possible race conditions.

Most multi-core systems are able to run OpenArena at full speed on one core, so SMP does usually not give any performance gain. If you have an old dual processor system like 2*500 MHz Pention III you might gain something but those setups are rare.


Title: Re: Is Openarena Multi-threaded ? Does it not like triple-core CPUs ?
Post by: Marble of Doom on April 14, 2009, 03:00:51 PM
OA uses 60% of one of the dual 500mhz ppc cores on my old G4 PowerMac.
Very powerful old system with a 16mb ATI Rage128 Pro, 1.2gb system ram, dual 500mhz ppc cores, gets 60-100fps with a 24inch Dell display (1024x786 res. in game).