Page 1 of 10 12345 ... LastLast
Results 1 to 10 of 93

  Click here to go to the first Developer post in this thread.  

Thread: Dedicated server performance

  1. #1

    Dedicated server performance

    Hi all, I'm Sibolo from the BDR and we are having lots of trouble running our DS for our ATC Campaign.
    ATC is a multiclan PvP campaign with 80 players played once a week.

    During tests we have done, before the start of the campaign, our old server was showing great lag problems with very low server FPS and all strange of behaviours in game (scripts failing and so on) and it was really unplayable.
    We tried different missions (both light non scripted missions and the well known Valhalla) just to understand if it had to do with the mission we were using and the server kept this lagging behaviour, so our attention was focused on the server performance. We discovered to have a lot of lost packets on our server connection, and the hosting company told us that they had recently setup a filter on UDP traffic to avoid hacker attacks.
    We tried playing on another clan's server and found out that although the FPS were quite low, nobody had lags or any other problem.

    So we decided to get a new server on this clan's hosting company and we bought a more costly and powerful option to try and be sure we would get good performance.
    This is the new server specs:

    Spoiler:


    Once our server was up we started testing again to find out we had the same lag problems. I investigated on the server and found out that it was only using one of the 8 cores (I mean really using, some threads were on the other cores but they were not working intensely) and infact, although we had very low server FPS around 1-3, the maximum CPU usage was only 15%.
    So reading on some very interesting threads on this forum I found out that the server should have autodetected the number of cores, but that sometimes this fails so I put manually the Exthreads=7 and cpucount=4.
    This showed a very different behaviour, now the server was actually using up to three cores and the overall cpu usage went up to around 30%.
    So reading further I understood that since Hyperthraeding splits cpu's in two, in this case it would have been better to switch it off so that those 3 cores could have more power to them.
    So now HT is off and the server can use during games up to 75% of the cpu power.
    On our game this means that the FPS has greatly improved, infact during the same mission with almost the same number of players we have higher FPS which actually stays in the 30-40 zone....but suddenly it goes down to around zero, than after a second it comes back up to high values. This gives smooth game for about 30 secs and than a big lag to everybody: unplayable.

    Further investigating showed that maybe those lags can be due to sudden big I/O operations so I thought of a disk bottleneck and started looking at the possibility of using a ramdisk and tried the Fancycache program, but we are still having these problems.

    During the tests we have tried fiddling around with the server performance settings and we used the default values, the same values as our friend clan (which runs smooth but with low FPS) and also values from the Kelly's Heroes site who have a nice guide on these settings.

    So now we are really lost, we are still paying both servers and any of your help would be greatly appreciated.

  2. #2
    a) post your server.cfg and basic.cfg please
    b) your high player count tests have been with 1.59 or also with 1.60
    c) did you try to optimize your mission?

  3. #3
    Private First Class Sibolo's Avatar
    Join Date
    Mar 25 2011
    Posts
    22
    Author of the Thread
    Thank you for your reply:

    a)
    Server.cfg
    Spoiler:


    Basic.cfg:
    We have tried different configs including default values without solving our problems.
    The config that I retain the best choice is the one I copied off Kelly's Heroes site but I am not sure it is:

    Spoiler:


    b)
    All our tests have been done on the 1.59 stable release. We now have moved to 1.60 stable only a few tests were conducted without much improvement but further testing is needed (not easy to keep 80 people up for testing...).

    c)
    Surely I've done what I could to optimize the mission scripts.
    These were the first beleived cause of the problem, but then we tried different missions which had already been played in the past and had the same behaviour. Also tried some light missions, and the well known DAO Valhalla missions, still having problems. So this made us think it's mainly (but not only) a server issue.

  4. #4
    This is just to "clean up"

    Server.cfg

    motd[] = {
    "", "", "",
    "Benvenuto nel server BDR",
    ..........
    "", <- not the last ","
    };


    It's in bits pr second. An of course it's a guesstimate

    Basic.cfg
    MinBandwidth=41943040; (40 mbps)
    MaxBandwidth=104857600; (100 mbps)

    and the ones to play with is these three I think
    MaxMsgSend = 1024;
    MaxSizeGuaranteed = 1024;
    MaxSizeNonguaranteed = 64;

    And why do you don't use default in v1.60 instead of:MinErrorToSend = 0.0040000002;

    But the server probably won't use more than 4MB RAM.
    You could set up the server with RAMDISK and put the most used addons in that RAMDISK.
    Also you could use "mklink" to make links to the addons in RAMDISK.

    After that you probably have to consider the mission.
    Artificial intelligence is no match for natural stupidity

    NoPryl of Norway

  5. #5
    Quote Originally Posted by NoBrainer View Post
    Basic.cfg
    MinBandwidth=41943040; (40 mbps)
    MaxBandwidth=104857600; (100 mbps)
    40Mbps is 40000000, 100Mbps is 100000000, (b) bits.
    Since he states server is connected at 100Mbps, no reason not to use it all. There still is overhead, for 100mbps, should be around 3~8Mbps
    MinBandwidth=92000000;
    MaxBandwidth=100000000;

    Quote Originally Posted by NoBrainer View Post
    and the ones to play with is these three I think
    MaxMsgSend = 1024;
    MaxSizeGuaranteed = 1024;
    [I]MaxSizeNonguaranteed = 64;
    MaxMsgSend is how many messages, can be sent in a simulation cycle. this should allow you tweak more of the bandwidth. A message cannot be larger than 1,500Bytes (B), the only time you will see a full 1,500Byte message is in LAN. So after some conservative calculations, assume message will not be larger than 1,450~1,472; we will go with 1,450Bytes. 8,316 1,450Byte messages can be sent over 92Mbps.
    MaxMsgSend=8192;

    Theres no real reason to not use the default MaxSizeGuaranteed, or MaxSizeNonguaranteed. Since they are less than a full message size, the message is sent once its full at 1,450Bytes.
    Quote Originally Posted by NoBrainer View Post
    But the server probably won't use more than 4MB RAM.
    Server will never use a mere 4MB of ram, it idles using around 100MB, and gets as large as 1,200MB

    ...Syn...

  6. #6
    The server.cfg and basic.cfg look OK.

    As ...Syn... points out you could tweak the MaxXXX values. The MinErrorToSend is pretty important too.
    Or use the defaults by not setting the values.

    However the problem is to test with 80 impatient people.

    My advice would be to try to get 2-3 servers ready to test for one night.
    This way you may have a higher chance for success and you can see if one server is the problem.

    Also prepare a second mission you know that works as backup.
    To let people play this one instead if your tests fail - to keep them happy playing something at least.


    One more idea: Run the mission on your server alone for a few minutes and then use #missions.
    After that upload the mpStatistics.log here.

    You said the server had low fps with the 80 player, didn't you? Anyway use #monitor 1 to get the info while testing.

  7. #7
    You should use:

    PHP Code:
    verifySignatures 2
    And also, this value:

    PHP Code:
    regularCheck=""
    should be:

    PHP Code:
    regularCheck="{}"
    From the Wiki:

    regularCheck is also known to cause sporadic (10 mins - 2 hrs) disconnects, terminating the client with "You were kicked off the game." on the client side and "Player Test disconnected." in the console log. To turn this function off, write regularCheck="{}";. But beware, this will also make the server more prone to cheating (even though most cheats are averted when connecting)
    Probably doesn't help with the slowdowns, but just stuff I noticed.
    Hackintosh Windows 7/Mountain Lion. Intel i7-920 @3.8 Ghz.
    Gigabyte GA-EX58-UD5 Rev1. Palit GTX 680 4GB.
    6Gb DDR3 RAM. Corsair 650W PSU.

  8. #8
    @...Syn...

    So he will guarantied get 100mbit network?
    I have never seen a 100mbit get 100mbit all the time.
    I know my guesstimate for 40mbit is low, but then again, is just for A2 to calculate whatever it calculates.

    I think your values are far off, but you may be more correct than me. Since I only have 12-18 people and only 26mbit network.

    And of course 100mbit ain't 100000000 bits, since its 1k ain't 1000, but 1024.

    I see I have written 4MB, but I mean 4GB of memory. But you guys got that one.
    Then he has 12 GB RAM left to play with.

    And the explanation for MaxMsgSend was good. But I doubt you're numbers will hold on "da intanet". But if he get's those values you say, it would be awesome.

  9. #9
    Wasn't the regularCheck issues supposed to be resolved/improved with v1.60?
    Is this is not the case?
    A.C.E. Advanced Combat Environment

    Dev-Heaven.net Free Project Hosting | A2 Community Issue Tracker Help BIS, Help yourself!

  10. #10
    Staff Sergeant Alderman's Avatar
    Join Date
    Oct 13 2009
    Location
    Oregon, United States
    Posts
    270
    Quote Originally Posted by Sickboy View Post
    Wasn't the regularCheck issues supposed to be resolved/improved with v1.60?
    Is this is not the case?
    I am wondering this myself.
    Executive Director / Chairman
    Military Gaming Organization
    http://militarygaming.org
    Ph: (800) 601-2798 - Fax: (800) 601-2948

Page 1 of 10 12345 ... LastLast

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •