Jump to content
Sign in to follow this  
darkpeace

Multi cpu / hyperthreaded flashpoint server s/w

Recommended Posts

Guess it paied off reading the documentation then (DS-ADMIN.RTF) biggrin_o.gif

So Suma, it only works in the one .CFG file ?, Well there you go, many admins made that mistake crazy_o.gif

Even in the linux version I assume it is the same.

Might have to spread the word.

Share this post


Link to post
Share on other sites
Then you must have seen the famous placebo effect.

Yeah, i see one of those famous placebo effects nearly every day in this forum tounge_o.gif

Share this post


Link to post
Share on other sites
Then you must have seen the famous placebo effect.

Yeah, i see one of those famous placebo effects nearly every day in this forum  tounge_o.gif

Yeah, and he sees the famous placebo effects nearly every day in his office tounge_o.gif

Share this post


Link to post
Share on other sites

So does that mean even though you use the argument "-config=server.cfg" it still only uses those values from the flashpoint.cfg or does the arguement overide that?

Share this post


Link to post
Share on other sites

I think what Suma was indicating is that some commands are for flashpoint.cfg only, where as other commands are for the server.cfg only.

So to summarise what has been said above, and make it easier for people to join the forum mid way I have included the following (based from DS-ADMIN.RTF with minor edits)

==============================================

Server configuration Commands List

When running a dedicated server, you will usually want to create a Server.cfg file. In this file you can adjust many server parameters, and you can provide a mission list for automatic mission selection. An example can be found in Appendix B. The following entries are recognized in the configuration file:

password = <session_password>;

passwordAdmin = <admin_password>;

hostname = "<user friendly host name>";

motd[]=

{

"<1st MOTD line>",

"<2nd MOTD line>",

….

"<Last MOTD line>"

};

motdInterval=<interval_in_sec>;

voteThreshold=<threshold>;

reportingIP="<id_address>";

voteMissionPlayers=<number>;

class Missions

{

class Mission01

{

template = <mission_name>;

cadetMode = <cadet_mode>;

param1 = <value>;

param2 = <value>;

};

class Mission02

{ … see above … };

….

class Mission<N>

{ … see above … };

};

Note: The configuration file uses C++ like syntax. Each entry must be terminated with semicolon. You can also use C++ comments (starting with a double slash: //).

==============================================

Performance tuning (Flashpoint.cfg Commands List)

There are also some parameters that can be used to fine-tune network performance. You can add following entries to Flashpoint.cfg (the main Flashpoint configuration file):

MaxMsgSend=<limit>;

MaxSizeGuaranteed=<limit>;

MaxSizeNonguaranteed =<limit>;

MinBandwidth =<bottom_limit>;

MaxBandwidth=<top_limit>

The greatest level of optimization can be achieved by setting the MaxMsgSend and MinBandwidth parameters. For a server with 1024kbps we recommend the following values:

MaxMsgSend = 256;

MinBandwidth = 768000;

You can use the admin command #monitor to monitor server resource usage. The server never runs at more than 50 fps*. When running slower, it always uses all available CPU processing power to maintain the smoothest possible gameplay. When running at less than 15 fps, you can consider the server overloaded – the mission currently played is probably too complex for given server. If you see the server is not using bandwidth that it could use, you can try increasing values MaxMsgSend and MinBandwidth.

* - On many servers this is limited to 32 fps maximum (give or take up to 10%) due to Windows time slices and other advanced settings regarding how processes are multitasked

==============================================

Regards,

Tabris.DarkPeace

GarageLAN, ACT

Share this post


Link to post
Share on other sites
holy shit you're right it does say that lol, for almost 3 years every change i have made as been to the server.cfg and i have seen the changes,

Then you must have seen the famous placebo effect. Those values are read from Flashpoint.cfg (and only from there).

for years we have seen changes in the cfg file and they have worked, also if you place the same commands in the flashpoint.cfg and the server.cfg you get the error that thier values are all ready loaded smile_o.gif

so why does that happen?

Share this post


Link to post
Share on other sites

Maybe Suma made a mistake

Everyone does.

Still I'll stick to the documented method myself.

Share this post


Link to post
Share on other sites

most of us know it all ready works and since OFP has all ways been "flawed" even tho we love the game so much, suma can make mistakes, if you limit the server to a very low xfer rate in the server.cfg it will suffer showing the commands do work

plus why would MP server commands not work the main OFP server file config in the 1st place, placing it else where is .....  unproductive

i love u suma, the fact that you guys have gone out of your way for updates compared to other games after three years is wicked

Share this post


Link to post
Share on other sites
Quote[/b] ]if you limit the server to a very low xfer rate in the server.cfg

I can make a mistakes, and I do it quite often, but I would be really surprised if I made it in this case, as I specifically checked the sources. I am checking it once more now an I am pretty sure following values are only loaded from Flashpoint.cfg:

MaxSizeGuaranteed, MaxSizeNonguaranteed, MinBandwidth, MaxBandwidth, MinErrorToSend, MaxCustomFileSize

Quote[/b] ]for years we have seen changes in the cfg file and they have worked, also if you place the same commands in the flashpoint.cfg and the server.cfg you get the error that thier values are all ready loaded

Can you post a server.cfg and Flashpoint.cfg demonstrating this here?

Share this post


Link to post
Share on other sites
Quote[/b] ]And does anyone know, (and is willing to answer), if VBS1 servers are more optimized thread wise for 8 logical CPUs under Linux ? - I have asked around and been given conficting reports, I suspect that VBS1 server is NOT any faster, or uses any more CPU than Resistance 1.96RC (unless they removed the 50fps or 32fps limiters. Suspect it is no faster on the Xeon above, than Resistance was)

Judging from the screenshots I have seen, with the soldiers all lined up next to each other on computers, I dont think the server is at all different from the Flashpoint we have.  I think VBS1 was more built towards LAN capabilities, but I could be wrong.

Share this post


Link to post
Share on other sites

More optimized ? (that is the whole point of this post really, the Flashpoint server does not benefit at all, from a 2nd, 3rd, 4th......8th CPU, unless you run multiple servers from the same box, and assign each to a dedicated CPU, being a real CPU, not a hyperthreaded logical one.....damn that is slow)

Getting (the current unthreaded) Flashpoint Server process to run on more than 1 CPU is folly.

Reason Cache-Coherency over multiple CPUs:

~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Yes I am aware it 'appears' to work under Linux, but it just load balances over 8 CPUs at 1/8th load each, or 4 CPUs at 1/4th load each, never really hitting 100% usage.

It is faster to isolate to a single CPU, the reason for this is cache-coherency, (we already discussed this above to a lesser degree so I wont bother repeating it here unless we need to)....

Bear in mind that the server is also capped at 50 fps. So the only time you will really notice it under load is if your servers' CPU hits 100% load before the server (game/physics world) is running at 50 fps.

The load balancing above does not help, as it is 'capped' at (# of CPUs div/ #of CPUs)percent% load per CPU (be they logical hyper-threaded CPUs or real Xeons or Opterons), which means with four CPUs the load balanced server process uses (at a maximum) 25% of each CPU. Well you might think this is faster having 4 x CPUs at 1/4 load each.

Now bring into account that each CPU needs to see the caches of the other 3 and you will find it actually leads to a slow down in performance. (and wastes alot of cash on a uber server that never runs at full load)

Thank you for re-iterating my point:

~~~~~~~~~~~~~~~~~~~~~~

Anyway, that is exactly my point, if the Flashpoint Server was threaded, we could all go out and get Dual/Quad/8-Way Xeon (1066FSB) or Operton servers and actually see them run close to 100% load (over all CPUs), even if it still capped at the lowly 50 fps (which as Flashpoint turns into a Counter-Strike replacment is becoming another server side annoyance).

Bear in mind, however, to have a 8-Way Opteron at full load and only get 50 fps from the server would require around 1,000 AI or perhaps more, and several vehicles, AS WELL (Hyper)THREADED OFP SERVER SOFTWARE to run such a mission on (aka: MFCTI with more AI and more vehicles with many players and 32 human squads per side, with a few AI squads roaming the landscape)

Which is exactly why I want a 8-Way THREADED server in the first place (MFCTI: Deluxe)

Short Answer:

~~~~~~~~~

No I do not believe that VBS1 server is threaded, and more than 1 CPU (or enabling HyperThreading in the BIOS) is folly as it only slows the server down.

However if anyone can prove me wrong (that VBS1 is theaded) I will more than happily part with Resistance 1.96 and port MFCTI 1.16+ to VBS1 (yes I would pay AU$700 just to get my uber server running at 80-100% load over all 4 CPUs)

Share this post


Link to post
Share on other sites

Please Note:

~~~~~~~~

In the above post where I say that enabling HyperThreading is folly, I am referring the the Flashpoint Server only.

The clients (or people gaming on their machines) are typically better off with HyperThreading enabled.

Server Side:

- You want HyperThreading off

- Unless it doubles as a HTTP/FTP server and you dedicate each process to a dedicated 'logical' CPU

- HyperThreading (or load balancing with the curent non-threaded server) can really hurt performance, esp in larger missions, high rate of fire weapons do not seam to enjoy it very much at all (I am talking large missions here, really big ones)

Client/Player Side:

- You want HyperThreading on (so long as they run Win2K/XP+)

- All the Direct X, Sound, 3D Video, etc benefits from hyperthreading, to a degree at least, rarely will Flashpoint go over "50%" load on a HT system, but it still improves performance (however slightly)

Just to make sure no one misunderstood my previous post,

Tabris.DarkPeace

Share this post


Link to post
Share on other sites

i ordered our new P4 3.0  800 HT linux last friday

this is what im and going to do....

1) test 3.0 800 with and with out HT on our linsux server and record stats

2) Monday i have ordered Win2k Pro OEM for $81 US off of pricegrabbers.com

3) have mananaged.com install the OS

4) test 3.0 800 with and with out HT on the newly loaded win2k and record stats

5) since i know the win2k will kick the shit out of linux when both have HT enabled im leaning toward the fact that win2k wont share load the ofp server thread and actually perform better

6) Depending on the route we'll go with VBS1 or OFP2 (if it's ever released) and purchase P4 3.4 /800 with HT with 1 meg cache and mb/hd/1 gig ram/ and the phatest copper fan we can find, over clock the shit out of it and install ofp2/vbs1

smile_o.gif

as Big P would say

EAT ITTTTTT!!!!!

Share this post


Link to post
Share on other sites

Which Linix distro / version / kernal you using ?

(eg: Red Hat / Fedora, SuSe, etc)

Share this post


Link to post
Share on other sites
as Big P would say

EAT ITTTTTT!!!!!

No, he does'nt say it, he screams it

Share this post


Link to post
Share on other sites
Which Linix distro / version / kernal you using ?

(eg: Red Hat / Fedora, SuSe, etc)

red hat 9 with teh latest security patches ect what ever you call them

we have to run older libs though to make it work

I ordered win2k for our server to day and it cost me $90

you can get it cheaper some places but they may not have a license or used but then the server company has a fit if its been opened before hand

I did throw the net settings into flashpoint.cfg and the server started sending at 1400+ Kbs

this was last night with 8vs8 and we never saw an ounce of lag for 2 ours smile_o.gif

I'll still be posting as I see data

Share this post


Link to post
Share on other sites
red hat 9 with teh latest security patches etc

I highly doubt that, as support for redhat has been stopped in april and there aren't any security patches for redhat anymore. Redhat is now called Fedora, and if you want security patches you have to upgrade to Fedora. [1]

I guess it's time to get my cracker tools and take over a fast server instead of waiting for our new server to come tounge_o.gif

[1] https://www.redhat.com/security/archives.html

https://www.redhat.com/solutions/business/migration/

"Red Hat Linux 7.x, 8.0 and 9 maintenance and errata support ended April

30, 2004."

Share this post


Link to post
Share on other sites

Was doing some benchmark reading and noticed:

It would appear that the flashpoint server is:

- Not designed with SSE2 in mind / does not use SSE2

- Not designed with threading in mind / does not use multiple CPUs at load / does not use hyper-threading

- Primarily related to the Whestone FPU benchmark*

- Secondarily related to Drystone benchmark*

(* - please correct me if I have misread what appear to be the facts, maybe Drystone is a more accurate indicator than plain Whestone is, I could have them back the front. Also bear in mind that memory speed, CPU pipeline depth, caching, etc all impact performance, esp when placing a heavy load on any server, 1 MB cache may boost performance a fair bit, I am just looking at RAW figures here, they are ONLY an indication. Consider this a fair warning for the benchmark impaired !)

Now show me the numbers:

Here are some SANDRA 2004 scores of various CPUs:

[CPU Name]

[Drystone, Whestone FPU, Whetstone iSSE2, MHz]

[Performance Index vs P4-C w/o HT]

Intel Pentium 4-C [2 SMT] 3.2GHz 512L2 (HyperThreading)

9808, 4059, 7095, 3200

119, 171, 164, 100

Intel Pentium 4-C 3.2GHz 512L2 (No HyperThreading)

8243, 2368, 4330, 3200

100, 100, 100, 100

AMD Athlon FX53/Opteron 150 2.4GHz 1ML2

9749, 3764, 4903, 2400

118, 159, 113, 75 (so far 3.2Ghz add 33%)

AMD Athlon XP 3200+ 2.2GHz 512L2

8380, 3465, NOSSE2, 2200

102, 146, " , 68.75 (so for 3.2Ghz add 45%)

Intel Pentium M 1.8GHz 1ML2 (*)

7084, 2499, 3196, 1800

86, 106, 74, 56.25 (so for 3.2Ghz add 77%)

(If you want to see more then goto:

http://www.users.on.net/~darkpe....RKS.xls for the full SANDRA 2004 SP1 list)

If the server was threaded, even less efficiently than above, and used SSE2 then a HyperThreaded P4 3.2 Ghz would perform very well (cache and memory subsystem dependant)

However it does not use SSE2, so you can ignore the Whetstone iSSE2 column. It does not use HyperThreading or multiple CPUs so you can ignore the first CPU which was a P4 Northwood (HT+800FSB+512kb).

Notes:

~~~~

Once threading and SSE2 are not used the P4's x87 FPU+SSE starts to suffer performance wise (4059 down to 2368 - OUCH !)

(*) The Pentium-M (not the P4-M the P-M) has a very effective FPU and is over 13% more efficient than the Athlon XP at equal clock speeds in floating point calculations.

Since SSE2 is not used by the server the most cost effective server would likely be a Barton core based Athlon XP with 512kb cache, as they are not memory bandwidth intensive like a Pentium 4 during a mispredicted branch.

Personally for large LANs and MFCTI based games I would go the Athlon 64FX (1mb cache and newer ones are DualDDR aswell, ECC is now optional).

An Opteron (MultiCPU) would be of little use, just as the MutliCPU Xeons and HyperThreaded P4s do not really benefit.

Perhaps Suma, or another coder could explain or reply with some detail as to which parts of the system the server hits the most and which parts it simply ignores exist (eg: SSE2)

Personal expectations on a MFCTI are: FPU/SSE, ALU/MMX, Cache+Memory (assuming it has some SSE and MMX optimizations when compiled, and that it was compiled for systems with such features)

Final words:

~~~~~~~

Overclocked servers are proportionally faster

However you would really need to ramp up the P4-Northwood to have it perform as well as a AthlonXP-Barton or Athlon 64FX. (Unless the server hammers the memory subsystem regardless of the CPU used)

In this case I doubt the P4 Extreme (with +2MB L3) or P4-Prescott (with 1 MB L2, but many more stages in the pipeline) would perform more than 5% better than a P4-Northwood at equal speeds.

So it would appear a shorter pipeline CPU is the way to go, with 1 single logical CPU/FPU (with SSE and MMX) and a fast memory/cache system.

Regards,

Tabris.DarkPeace

(Now if I can get confirmation of the above, I am off to build a Athlon64 based server for LANing, so I can keep it for home use when required)

[EDITS: Minor typos fixed, added a Performance Index vs P4-C 3.2Ghz]

Share this post


Link to post
Share on other sites

Well we have just taken delivery of our nice shiney 64 Processor SUSE server, and it would be nice while we wait the 6 months for the software it was bought for to be ready to turn it into an ofp server. Well I guess that won't happen sad_o.gif would have been nice if we could *ahem* load tested the machine while we waited for the real software to materialise

Share this post


Link to post
Share on other sites

I heard SuSe Linux had some sort of addin that makes all the CPUs be seen as 1 single CPU by software.

How well it works is another thing.

FYI:

~~~

1) Quad Opteron is overkill

2) I didn't think OFP:R or VBS1 ran on non-x86 systems

3) No x86 system (system not cluster) I am aware of supports 64 CPUs, the FSB of most systems can only handle 8 CPUs. (UltraSparc + FLashpoint = No Go)

If / When you get it working, post some pics here with some CPU load and process lists of flashpoint running with 2000+ AI.

Share this post


Link to post
Share on other sites

It is a cluster with front end of a dual opteron and 32 dual opterons behind it, I can't be arsed putting up the full specs, if you really want them PM me. Since it is still in workup I can't play with it to see how SUSE actually classifies it. Once it comes out of workup I will see what I can do and what OFP does to the poor thing. Pics and stats will be posted.

So all I need is for opf to support 2000 ai charging at you at once and preferably a god mode so you can survive the first hail of bullets and we are set to go smile_o.gif

Share this post


Link to post
Share on other sites
Since SSE2 is not used by the server the most cost effective server would likely be a Barton core based Athlon XP with 512kb cache, as they are not memory bandwidth intensive like a Pentium 4 during a mispredicted branch.

i really doubt any barton could compete with the brute force of 800 mhz for the same cost, just look at the Devgru server, they tought it was a Celeron 1.7 and it turns out it was a XP 2500+ Barton and she has the worste CPU lag i have seen, I retweaked that server and it does perform allot better, i even took out our MOTD line where i had it saying "if you want lag go play on the Devgru 1.7 celery server"

mind you on a game level my Barton 2500 oc to 3200 kicks my P4 2.8 (HT 800) O/C to 3.06 ass by 2000 points on 3dmark 2001

after spending money on that "upgrade" i was really disapointed

Share this post


Link to post
Share on other sites

I had a Athlon XP2000+ (mind you it was on 310 FSB or so) and it performed very well in MFCTI v1.0 and v1.1.

It is hard to benchmark a OFP:R server though sad_o.gif

The 800FSB of the P4 is just for branch mispreditctions so it can reload its 20 (or 30+ stage for PreScott) stage pipeline still it would help in memory intensive tasks.

Well maybe it is more Drystone and Memory/Cache related than I thought, still makes the Athlon 64(FX) look attractive as a server (or a overclocked P4-Northwood/PreScott)

Anyone got any scripted missions (with lots of AI) that you can run to benchmark a server and manually note the FPS at 15 sec intervals ? (using #MONITOR 15 from the word go)

Cheers,

Tabris.DarkPeace

GarageLAN, ACT

Share this post


Link to post
Share on other sites

Well, our new server will be an athlon64, so i guess i can tell you in a short time if i notice any difference biggrin_o.gif

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
Sign in to follow this  

×