Does/will nexuiz support multi GPU/CPU configurations?

Discuss anything to do with Nexuiz here.

Moderators: Nexuiz Moderators, Moderators

Does/will nexuiz support multi GPU/CPU configurations?

Postby 003 » Sat May 31, 2008 2:10 am

Do you guys know if the current version of nexuiz supports the multi GPU solutions currently offered, such as SLI from nvidia and Crossfire from ATI? Also, what about multi processor configurations, for people who have a dual or quad core processor?
003
Advanced member
 
Posts: 70
Joined: Sat Jan 13, 2007 9:01 pm

Postby Taiyo.uk » Sat May 31, 2008 5:28 am

Multi GPU support is more to do with the graphics hardware and the associated drivers.

Multi CPU is a more complex issue though.

"real" multi CPU (where the work is evenly distributed across the CPUs) will require a substantial and complex rewrite of the engine code.

Multi-threading is relatively simple where each thread can run on different cores. So instead of even load distribution each core would handle a different part of the engine (rendering, sound, network, etc).
Taiyo.uk
Alien trapper
 
Posts: 436
Joined: Mon Apr 17, 2006 8:48 pm
Location: Reading, IN-GER-LUND!!!

Postby divVerent » Sat May 31, 2008 7:20 am

Benchmarks have shown that, except for the dedicated server, multithreading won't help DarkPlaces much. Even on a (to today's standards) low end computer, the client (renderer etc.) take less than 5% of the CPU power. Actually, in many cases, the CPU runs in power save mode while DP is running (and only switches to full clock speed while loading a map).

The dedicated server on the other hand could really make use of multithreading to evenly distribute load among the cores - but here the problem is with the Quake design. The language QuakeC, in which the game code is written, has no pointers or such stuff, and thus makes lots of use of global variables. Example function calls that write stuff to globals and thus can't be thread safe are traceline (uses trace_* globals), tokenize (uses argv(n) globals) and every single method call (one manually sets the "self" global before calling the method), some of which originate from the engine so the call convention can't be changed. So to make the server code multithreaded, one would have to change the language the game code is written in to support pointers/call-by-reference, and quite likely rewrite huge parts of it to make use of ways to transfer data without using global variables for everything - and in case one HAS to use a global, there'd need to be functions for locking data structures.

If however one succeeds in doing this, the maximum working player count for a "high end" server machine could increase from currently 32 to 128, if it is a quadcore (but probably just about 100, as it won't scale perfectly). Currently, the only way to fully utilize a quadcore machine as Nexuiz server is to run four servers on it - which sure is nice, but a well performing server with 128 players is far from possible yet.
1. Open Notepad
2. Paste: ÿþMSMSMS
3. Save
4. Open the file in Notepad again

You can vary the number of "MS", so you can clearly see it's MS which is causing it.
divVerent
Site admin and keyboard killer
 
Posts: 3809
Joined: Thu Mar 02, 2006 4:46 pm
Location: BRLOGENSHFEGLE

Postby Blµb » Sat May 31, 2008 7:33 am

divVerent wrote:Benchmarks have shown that, except for the dedicated server, multithreading won't help DarkPlaces much. Even on a (to today's standards) low end computer, the client (renderer etc.) take less than 5% of the CPU power. Actually, in many cases, the CPU runs in power save mode while DP is running (and only switches to full clock speed while loading a map).(...)


Wait, what!?
since when?
Have you had shadows and dynamic lights on when you tested that? I'm sure you haven't :S
Blµb
Alien trapper
 
Posts: 277
Joined: Thu Mar 29, 2007 1:49 pm

Postby sallyxi » Sun Jun 01, 2008 3:20 am

"The dedicated server ", what you mentioned? Could you point out some examples?
sallyxi
Newbie
 
Posts: 3
Joined: Sun May 25, 2008 6:16 am

Postby Ed » Sun Jun 01, 2008 12:54 pm

sallyxi wrote:"The dedicated server ", what you mentioned? Could you point out some examples?

This poster may well be a spammer. No understanding of what's going on, URL in profile linking to some crappy video converting program on a .us domain which redirects to another site and poor use of English. Check the other posts by them too.

Edit: oh and they post on other forums too:
http://forums.digium.com/profile.php?mo ... 7d3aa78311
Occupation: Apple

Yeah right. Spammer. Delete and ban.
Ed
Forum addon
 
Posts: 1172
Joined: Wed Mar 01, 2006 12:32 am
Location: UK

Postby 003 » Mon Jun 02, 2008 3:19 am

Ok well does nexuiz support multi-threading if not full multi CPU? I thought that multi GPU support had to be supported by the game engine AND the video drivers, not just the video drivers. Is this incorrect?

Does anybody here have a sli or crossfire setup? If so, can you update to the latest drivers and benchmark nexuiz with and without multi gpu enabled?
003
Advanced member
 
Posts: 70
Joined: Sat Jan 13, 2007 9:01 pm

Postby esteel » Tue Jun 03, 2008 7:29 pm

Multithreaded was basicly already answere.. no, the server does not do it because of QC and the client does partly. Sound and rendering are threaded. (at least in sdl i think)
esteel
Site admin and forum addon
 
Posts: 3924
Joined: Wed Mar 01, 2006 8:27 am


Return to Nexuiz - General Discussion

Who is online

Users browsing this forum: No registered users and 1 guest

cron