Server Profiling - update with runtimes

Read-Only Forum for General News concerning Alasiya EvE.
Guest read access allowed.

Server Development

Posts: 578

Joined: Tue Mar 25, 2014 6:47 pm

Post Tue Sep 01, 2015 3:17 am

Server Profiling - update with runtimes

this can be filed under the "for those that give a shit" flag.....
profile of current server runtimes.
  Code:
i
21:13:13 S   Alasiya's EvEMu: Server Information:
21:13:13 W   Server Revision:  0.7.85-allan
21:13:13 W        Build Date:  30 August 2015
21:13:13 W      Memory Usage:  RSS: 613.633Mb  VM: 858.586Mb
21:13:13 W     Server Status:   S: R | T: 3(8) | U: 3.07 | K: 1.75
21:13:13 W     Server UpTime:  16 H, 12 M, 20 S.
21:13:13 W    Active Bubbles:  295
21:13:13 W    Active Systems:  7
21:13:13 W      Loaded Items:  1435
21:13:13 W Connected Clients:  0
p
21:13:18 S   Alasiya's EvEMu: Server Profile:
21:13:18 W    Server Profile: Items with 0 calls are not implemented yet, or disabled.
21:13:18 W     Server UpTime:  16 H, 12 M, 25 S.
21:13:18 S    Server Profile:  Main() called 0 times. Hi: 0.000000us, Lo: 0.000000us, Avg: 0.000000us.
21:13:18 S    Server Profile:  Destiny called 1943726 times. Hi: 0.764893us, Lo: 0.000977us, Avg: 0.001057us.
21:13:18 S    Server Profile:  EntityClient called 3215727 times. Hi: 16987.885010us, Lo: 0.000977us, Avg: 0.043632us.
21:13:18 S    Server Profile:  EntitySystem called 5384324 times. Hi: 2866.645996us, Lo: 0.000977us, Avg: 0.042302us.
21:13:18 S    Server Profile:  Map called 0 times. Hi: 0.000000us, Lo: 0.000000us, Avg: 0.000000us.
21:13:18 S    Server Profile:  Client called 359458 times. Hi: 715.526855us, Lo: 0.000977us, Avg: 0.008805us.
21:13:18 S    Server Profile:  NPC called 0 times. Hi: 0.000000us, Lo: 0.000000us, Avg: 0.000000us.
21:13:18 S    Server Profile:  Bubbles called 39938 times. Hi: 0.735840us, Lo: 0.000977us, Avg: 0.002757us.
21:13:18 S    Server Profile:  Items called 0 times. Hi: 0.000000us, Lo: 0.000000us, Avg: 0.000000us.
21:13:18 S    Server Profile:  Modules called 262543 times. Hi: 1456.647949us, Lo: 0.000977us, Avg: 0.062910us.
21:13:18 S    Server Profile:  Functions called 0 times. Hi: 0.000000us, Lo: 0.000000us, Avg: 0.000000us.
21:13:18 S    Server Profile:  DB called 0 times. Hi: 0.000000us, Lo: 0.000000us, Avg: 0.000000us.
21:13:18 S    Server Profile:  Ship called 66558 times. Hi: 0.164060us, Lo: 0.000977us, Avg: 0.001135us.
21:13:18 S    Server Profile:  Missile called 9490 times. Hi: 879.062988us, Lo: 0.000977us, Avg: 1.534300us.
21:13:18 S    Server Profile:  Loot called 18 times. Hi: 0.028076us, Lo: 0.002930us, Avg: 0.009413us.
21:13:18 S    Server Profile:  Salvage called 0 times. Hi: 0.000000us, Lo: 0.000000us, Avg: 0.000000us.
21:13:18 S    Server Profile:  Spawn called 0 times. Hi: 0.000000us, Lo: 0.000000us, Avg: 0.000000us.
21:13:18 S    Server Profile:  Profile Times Compiled in 587.009033us.
Last edited by Allan on Mon Jan 25, 2016 4:46 pm, edited 1 time in total.
Reason: Just noticed time designations were wrong. Changed 'ms' to 'us' to reflect accurate timing numbers.

Server Development

Posts: 236

Joined: Fri Apr 10, 2015 3:08 pm

Post Tue Sep 01, 2015 10:04 am

Re: Server Profiling - update with runtimes

Well, little by little, we can get closer to those neat graphs CCP used to show ^_^
I mean - a little bit more detail, DB/file logging and viola - we have the data for the graphs!
Total wrecks, total shots fired, total amount of shit sold on market, total cash flow throughout the universe...that kind of things, you know.

Server Development

Posts: 578

Joined: Tue Mar 25, 2014 6:47 pm

Post Tue Sep 01, 2015 11:44 pm

Re: Server Profiling - update with runtimes

yeah, i can add all that. wont be a big thing at all.
i just dont know the graphics part of how to make those neat graphs. :/
that profile system was written mainly just for me to time code execution for optimizations and the amount of new code that was running thru Process() (which all those shown do)

Server Development

Posts: 236

Joined: Fri Apr 10, 2015 3:08 pm

Post Wed Sep 02, 2015 6:21 am

Re: Server Profiling - update with runtimes

Oh, don't bother. All we need from the server - write the calls into a separate DB table. Would be great if those calls would be filtered by dates, like 1 row = 1 day. Graph composing is a task for another program.

Server Development

Posts: 578

Joined: Tue Mar 25, 2014 6:47 pm

Post Wed Sep 02, 2015 11:44 pm

Re: Server Profiling - update with runtimes

i'll think of a way to cache them, and flush to db every so often or so.
im sure there is a way for Dot to make the graphs, but i have neither the time nor knowledge to do so.....and dont have the inclination to learn right now. ;p

well, since we're talking about it, what kinda info you think we should have? for now, i can put it on a status page, and it would be something else for ppl to look at. ;)

cheers

Server Development

Posts: 236

Joined: Fri Apr 10, 2015 3:08 pm

Post Thu Sep 03, 2015 7:03 am

Re: Server Profiling - update with runtimes

I think we can start with pretty standard data:
- Total shots fired (turrets. like - count the activations of turret modules)
- Total missiles launched (same for missiles)
- Total NPC ships killed (pretty straightforward here)
- Total Player ships killed (same here)
- Total amount of ore mined (just count the m3 of the ore that was mined off. Might be postponed, before we fix the miners)
- Total amount of bounties received
- Total amount of ISK spent in the market

Plus, if you want, you may include a bit of technical data (just for yourself), like memory/CPU load flow.

Most of those should be easy enough.
As for mechanics - to prevent overloading the DB with constant queries, i think that we can implement the temporary cache, that will store the data and upload it to DB in a single query once in, say, 15-30 minutes. That will keep the server load low and allow the daily-graph creation (so we can generate both overall, monthly, daily or even hourly graph reports. That could be neat). Timeframes are up to you - may it be 10 minutes or 1 hour - that's your call, mate.

If you want, i can compose the approximate DB template for those reports. The template that will give the graph generating that much needed flexibility i told about right above.

Server Development

Posts: 578

Joined: Tue Mar 25, 2014 6:47 pm

Post Thu Sep 03, 2015 11:35 pm

Re: Server Profiling - update with runtimes

yeah, that'd be great. get me a template, and i'll start coding it when i get time. (not soon, tho)
i'll update when i get something done.

Server Development

Posts: 236

Joined: Fri Apr 10, 2015 3:08 pm

Post Fri Sep 04, 2015 10:40 am

Re: Server Profiling - update with runtimes

Well, i decided to not make it over-complicated, so it's just a simple 2-table skeleton.
First table is just 3 columns (ID, INT value and time stamp), second is informative one (description of ID's).
You only need to make server insert the ID and the value - time stamp will be pulled automatically.
Commited it to the repo.

Cheers!

Server Development

Posts: 578

Joined: Tue Mar 25, 2014 6:47 pm

Post Mon Aug 05, 2019 5:01 am

Re: Server Profiling - update with runtimes

this is a very updated version of the profile system, with current runtimes..... dev server, single client, in space, no rats
  Code:
22:55:50 G   Alasiya's EvEMu: Server Profile:
22:55:50 W    Server Profile: Current Stamp: 758339.
22:55:50 W     Server UpTime:  1 W, 1 D, 18 H, 22 M, 19 S.
22:55:50 W       Connections:  1 Current Clients Online.
22:55:50 W       Connections:  1 Clients Connected since startup.
22:55:50 G    Server Profile:  Current Process Profile times for this run:
            DB   387k times.    Hi: 90817449.7500us,    Lo: 76.0000us,          Avg: 639.4814us,
    EntityList   757k times.    Hi: 91283801.7500us,    Lo: 5.5000us,           Avg: 435.8194us,
        Client   757k times.    Hi: 14840.2500us,       Lo: 0.5000us,           Avg: 3.4964us,
     SystemMgr   757k times.    Hi: 533286.2500us,      Lo: 14.7500us,          Avg: 265.2009us,
       Bubbles   757k times.    Hi: 35129.5000us,       Lo: 1.2500us,           Avg: 12.5306us,
        Spawns   728k times.    Hi: 7187.0000us,        Lo: 0.2500us,           Avg: 0.4191us,
       Destiny   5m times.      Hi: 7319.2500us,        Lo: 0.2500us,           Avg: 0.4962us.
           NPC   0 times.       Hi: 0.0000us,           Lo: 0.0000us,           Avg: 0.0000us,
  Item Loading   18 times.      Hi: 115901.5000us,      Lo: 1348.2500us,        Avg: 15745.3056us,
       Modules   757k times.    Hi: 7289.0000us,        Lo: 4.0000us,           Avg: 10.3171us,
          Ship   126k times.    Hi: 7351.7500us,        Lo: 6.5000us,           Avg: 10.1368us,
       Missile   0 times.       Hi: 0.0000us,           Lo: 0.0000us,           Avg: 0.0000us,
        Damage   0 times.       Hi: 0.0000us,           Lo: 0.0000us,           Avg: 0.0000us,
          Loot   0 times.       Hi: 0.0000us,           Lo: 0.0000us,           Avg: 0.0000us,
       Salvage   0 times.       Hi: 0.0000us,           Lo: 0.0000us,           Avg: 0.0000us,
    Collisions   Disabled.
        Drones   0 times.       Hi: 0.0000us,           Lo: 0.0000us,           Avg: 0.0000us,
        Colony   407 times.     Hi: 31815.2500us,       Lo: 5253.0000us,        Avg: 11014.6757us,
 Profile Times Compiled in 966042.5000us,



this is a previous version of profile system from main server, almost 3 week runtime.
  Code:
15:48:19 G   Alasiya's EvEMu: Server Profile:
15:48:19 W    Server Profile: Current Stamp: 1771847.
15:48:19 W     Server UpTime:  2 W, 6 D, 11 H, 54 M, 7 S.
15:48:19 W       Connections:  2 Current Clients Online.
15:48:19 W       Connections:  1388 Clients Connected since startup.
15:48:19 G    Server Profile:  Current Process Profile times for this run:
            DB   61k times.     Hi: 7249212.0000us,     Lo: 26.0000us,          Avg: 3309.1379us,
    EntityList   1m times.      Hi: 12914322.5000us,    Lo: 1.5000us,           Avg: 503.6696us,
        Client   34k times.     Hi: 541004.5000us,      Lo: 0.2500us,           Avg: 46.9089us,
     SystemMgr   41k times.     Hi: 186399.7500us,      Lo: 0.5000us,           Avg: 300.2370us,
       Bubbles   1m times.      Hi: 1363421.0000us,     Lo: 0.2500us,           Avg: 32.5022us,
         Spawn   33k times.     Hi: 26.0000us,          Lo: 0.2500us,           Avg: 0.2783us,
       Destiny   1m times.      Hi: 24205.0000us,       Lo: 0.2500us,           Avg: 0.4843us.
           NPC   1158 times.    Hi: 21.5000us,          Lo: 0.5000us,           Avg: 1.1904us,
  Item Loading   470 times.     Hi: 46315.2500us,       Lo: 2053.0000us,        Avg: 3922.6176us,
       Modules   10k times.     Hi: 6817.0000us,        Lo: 2.0000us,           Avg: 10.3041us,
          Ship   1662 times.    Hi: 63.0000us,          Lo: 2.0000us,           Avg: 9.1488us,
       Missile   652 times.     Hi: 185622.2500us,      Lo: 0.5000us,           Avg: 286.1185us,
          Loot   1 times.       Hi: 4.5000us,           Lo: 4.5000us,           Avg: 4.5000us,
       Salvage   0 times.       Hi: 0.0000us,           Lo: 0.0000us,           Avg: 0.0000us,
        Drones   315 times.     Hi: 83.7500us,          Lo: 0.7500us,           Avg: 3.0484us,
        Colony   0 times.       Hi: 0.0000us,           Lo: 0.0000us,           Avg: 0.0000us,
 Profile Times Compiled in 2036489.7500us,

cheers all

Return to News

Who is online

Users browsing this forum: No registered users and 2 guests