Pages: [1] :: one page |
|
Author |
Thread Statistics | Show CCP posts - 0 post(s) |
Suchosh
Crimson Serpent Syndicate Heiian Conglomerate
0
|
Posted - 2014.04.05 20:36:00 -
[1] - Quote
Hello,
can anybody who knows it (developer or player) tell me, what causes server load in large fights? I did some math about number of "connections" between ships (I mean keeping track of distances between them, transversals etc...). I'm almost sure I did it right (heh), so for 3000 subjects like drones and ships, it's 4 500 000 of those "connections".
Informations about speeds, transversals etc. update every second. If you multiply this number (4 500 000), by number of instructions needed to calculate those informations (I have no idea about exact number. It's really hard to tell so i will stick with probably very underrated 250), you get number of instructions processor must execute every second. For this particular example the number is huge - about 1.1 bil instructions.
So am I right, that just calculating this takes tens of percent of processor usage? I'd like to have my idea confirmed/disqualified by any of developers before I write another post with my terrible English.
Suchosh |
ShahFluffers
Ice Fire Warriors Late Night Alliance
5101
|
Posted - 2014.04.05 22:44:00 -
[2] - Quote
The long and short of it is that EVE's architecture was made back in 2004 using Stackless Python. Since single core processors were the "norm" back then and it was assumed that CPUs would be faster in the future, the coding was designed around that.
Fast forward to now... the code is still "single threaded" (meaning it will only use one core on a multi-core CPU) and the DEVs have to learn and revise legacy code made by people who are not around anymore (and did not document things properly).
And no... they can't get better hardware than what they have right now. If I recall correctly, they are using a decommissioned military supercomputer to run EVE (I'm not joking). Change isn't bad, but it isn't always good. Sometimes, the oldest and most simple of things can be the most elegant and effective. |
S'totan
Dark Forge Enterprise Ninja Unicorns with Huge Horns
42
|
Posted - 2014.04.05 22:52:00 -
[3] - Quote
Lots of people cause the server load. |
Nariya Kentaya
Phoenix funds
1175
|
Posted - 2014.04.06 03:25:00 -
[4] - Quote
ShahFluffers wrote:The long and short of it is that EVE's architecture was made back in 2004 using Stackless Python. Since single core processors were the "norm" back then and it was assumed that CPUs would be faster in the future, the coding was designed around that.
Fast forward to now... the code is still "single threaded" (meaning it will only use one core on a multi-core CPU) and the DEVs have to learn and revise legacy code made by people who are not around anymore (and did not document things properly).
And no... they can't get better hardware than what they have right now. If I recall correctly, they are using a decommissioned military supercomputer to run EVE (I'm not joking). No no no, It's a supercomputer salvaged from the wreckage of the last Supervillain hideout hidden inside their volcano.
More in line with the OP.
The server has to track several things EVERY SECOND (hereafter referred to as a tick). every tick of the server it processes what characters are in space, what their skills are, what ships they are in, what modules are in their ships, what ammo they are shooting, and then their speed/direction/distance from EVERY OTHER SHIP in the same space.
It must do this INDIVIDUALLY every tick, in a program structure that only supports doing 1 thing at a time.
This is why the N+1 problem becomes evident so quickly in EVE, because of all that information having to be tracked, and thats just the basic stuff, theres tons of other things the server is tracking that are battle-relevant every second that contributes.
Basically, If Im remembering right, 1 person in space server does one thing, 2 people in space it does 4, 3 it does 9, etc, quickly QUICKLY becoming an issue with 2000+ in system (and the servers have managed to survive up to 4000 with TIDI, which slows down ingame speed so the server can perform more calculations inbetween each tick). |
scorchlikeshiswhiskey
Cirrius Technologies O X I D E
149
|
Posted - 2014.04.06 03:28:00 -
[5] - Quote
Nariya Kentaya wrote:ShahFluffers wrote:The long and short of it is that EVE's architecture was made back in 2004 using Stackless Python. Since single core processors were the "norm" back then and it was assumed that CPUs would be faster in the future, the coding was designed around that.
Fast forward to now... the code is still "single threaded" (meaning it will only use one core on a multi-core CPU) and the DEVs have to learn and revise legacy code made by people who are not around anymore (and did not document things properly).
And no... they can't get better hardware than what they have right now. If I recall correctly, they are using a decommissioned military supercomputer to run EVE (I'm not joking). No no no, It's a supercomputer salvaged from the wreckage of the last Supervillain hideout hidden inside their volcano. Do you want Skynet? Because that's how you get Skynet. |
Nariya Kentaya
Phoenix funds
1175
|
Posted - 2014.04.06 03:31:00 -
[6] - Quote
scorchlikeshiswhiskey wrote:Nariya Kentaya wrote:ShahFluffers wrote:The long and short of it is that EVE's architecture was made back in 2004 using Stackless Python. Since single core processors were the "norm" back then and it was assumed that CPUs would be faster in the future, the coding was designed around that.
Fast forward to now... the code is still "single threaded" (meaning it will only use one core on a multi-core CPU) and the DEVs have to learn and revise legacy code made by people who are not around anymore (and did not document things properly).
And no... they can't get better hardware than what they have right now. If I recall correctly, they are using a decommissioned military supercomputer to run EVE (I'm not joking). No no no, It's a supercomputer salvaged from the wreckage of the last Supervillain hideout hidden inside their volcano. Do you want Skynet? Because that's how you get Skynet. POSs already have a tendency to shoot their owners and allies, it's Skynet having target practice for the day CCP eventually plugs it into the rest of the internet. |
Suchosh
Crimson Serpent Syndicate Heiian Conglomerate
0
|
Posted - 2014.04.06 08:07:00 -
[7] - Quote
Well... I'm quite interested in "Battle mode" idea.
When TiDi of the system exceeds certain level, Battle mode starts. This will cause that everyone, who doesn't really care about transversals etc., will be excluded from process of calculating those informations. There should be ofcourse some kind of switch in settings, that allows FCs to turn calculating on.
There will be calculations just between you and something you're targeting, as they are mandatory for shooting etc.
This should decrease processor usage by 90% or even more and still don't screw sandbox, because everyone will be able to see transversal velocity if he wants (Lets be honest, 99% of the people in blob warfare doesn't care. It's all about clicking your broadcast history.).
It will be a lot work to do, but it might help to decrease TiDi a bit.
Suchosh |
HiddenPorpoise
Under Dark
181
|
Posted - 2014.04.06 08:41:00 -
[8] - Quote
Suchosh wrote:Well... I'm quite interested in "Battle mode" idea. There will be calculations just between you and something you're targeting, as they are mandatory for shooting etc.
That's what the server does already, the transversal is done locally based on ship motions until you shoot. |
Ralph King-Griffin
Var Foundation inc.
584
|
Posted - 2014.04.06 09:41:00 -
[9] - Quote
http://community.eveonline.com/news/dev-blogs/what-a-hed-ache/ the most recent "techy" devblog i remember on server load. Gû¼Gû¼Gû¼Gû¼Gû¼Gû¼Gû¼Gû¼Gû¼Gû¼a«£¦¬¦P¦¬a«£Gû¼Gû¼Gû¼Gû¼Gû¼Gû¼Gû¼Gû¼Gû¼Gû¼ -á-á-á-á-á-á-á-á-á-á-á-á-á-áIf In Doubt....Do....Excessively. Gû¼Gû¼Gû¼Gû¼Gû¼Gû¼Gû¼Gû¼Gû¼Gû¼a«£¦¬¦P¦¬a«£Gû¼Gû¼Gû¼Gû¼Gû¼Gû¼Gû¼Gû¼Gû¼Gû¼
|
Kaerakh
Obscure Joke Implied
164
|
Posted - 2014.04.06 16:01:00 -
[10] - Quote
HiddenPorpoise wrote:Suchosh wrote:Well... I'm quite interested in "Battle mode" idea. There will be calculations just between you and something you're targeting, as they are mandatory for shooting etc.
That's what the server does already, the transversal is done locally based on ship motions until you shoot.
I'm pretty sure that's incorrect. CCP keeps as many gameplay operations as possible out of the client in order to limit the possibility of illegitimate tampering. |
|
Velicitia
Emergent Avionics
2123
|
Posted - 2014.04.06 17:45:00 -
[11] - Quote
Suchosh wrote:Well... I'm quite interested in "Battle mode" idea.
When TiDi of the system exceeds certain level, Battle mode starts. This will cause that everyone, who doesn't really care about transversals etc., will be excluded from process of calculating those informations. There should be ofcourse some kind of switch in settings, that allows FCs to turn calculating on.
There will be calculations just between you and something you're targeting, as they are mandatory for shooting etc.
This should decrease processor usage by 90% or even more and still don't screw sandbox, because everyone will be able to see transversal velocity if he wants (Lets be honest, 99% of the people in blob warfare doesn't care. It's all about clicking your broadcast history.).
It will be a lot work to do, but it might help to decrease TiDi a bit.
Suchosh
"Transversal" is only relevant to parties that you:
A. Have locked and are actively shooting at B. Are on grid with you if you have the angular velocity column active
Having 100 people in system and on grid only means that the server is telling you the following info:
- Pilot(s) are blue/red - Pilot(s) are flying from x1,y1,z1 to x2,y2,z2 - Pilot(s) are yellow-boxing you - Pilot(s) are yellow-boxed by you - Yellow-boxed pilot(s) have Armor/Shield/Hull HP - your own status, including but not limited to HP, targeting range, resists, weapon range, tracking, sig rad, weapon sig res.
Soon as guns go hot, then the game starts calculating transversal (because it's used in the weapon hit math), but only for the target(s) that you're actively shooting.
And then there are all the drones that people will start spamming ...
Granted, it's also doing this for the 99 other people, not to mention re-working things as they change (e.g. incoming reps, incoming cap, incoming neuts, incoming damage ... and displaying it out to everyone who needs to see it).
Now, it's also tracking more than one grid/system ... and more than one system / server (unless Jita or hardened node or CCP starts kicking off the less-used systems to give resources to the fighting system).
Really the worst thing for the system is dealing with people coming in (gates, bridges, cynos) and going out (podding ... and all the other things too ... but mostly podding).
Note the above is grossly simplified ... but for the purposes of discussion, as right as can be inferred from the devblogs about TiDi and everything else. One of the bitter points of a good bittervet is the realisation that all those SP don't really do much, and that the newbie is having much more fun with what little he has. - Tippia |
Hesod Adee
Kiwis In Space
311
|
Posted - 2014.04.06 20:04:00 -
[12] - Quote
Kaerakh wrote:HiddenPorpoise wrote:Suchosh wrote:Well... I'm quite interested in "Battle mode" idea. There will be calculations just between you and something you're targeting, as they are mandatory for shooting etc.
That's what the server does already, the transversal is done locally based on ship motions until you shoot. I'm pretty sure that's incorrect. CCP keeps as many gameplay operations as possible out of the client in order to limit the possibility of illegitimate tampering. Those local calculations don't get sent back to the server. The only thing they are used for is showing them on your overview. So the only thing that could be done by altering the calculations is to make your own overview show incorrect data.
Making it a safe calculation to do on the client. Just like all the client-side graphics processing. |
Hesod Adee
Kiwis In Space
311
|
Posted - 2014.04.06 20:05:00 -
[13] - Quote
Velicitia wrote:Soon as guns go hot, then the game starts calculating transversal (because it's used in the weapon hit math), but only for the target(s) that you're actively shooting. It probably only calculates it on the ticks where the guns fire. Because that's the only tick where it matters. |
Daichi Yamato
Xero Security and Technologies
1299
|
Posted - 2014.04.06 20:49:00 -
[14] - Quote
i think i read ppl clicking on their mods a lot was a problem as well lol
the CSM 8 minutes touched upon it. said something about mods, i wasnt reading that with a great amount of attention EVE FAQ "7.2 CAN I AVOID PVP COMPLETELY?No; there are no systems or locations in New Eden where PvP may be completely avoided""So it will be up to a pilot to remain vigilant wherever they may be flying and be ready for anything at any time" |
Velicitia
Emergent Avionics
2125
|
Posted - 2014.04.06 23:35:00 -
[15] - Quote
Hesod Adee wrote:Velicitia wrote:Soon as guns go hot, then the game starts calculating transversal (because it's used in the weapon hit math), but only for the target(s) that you're actively shooting. It probably only calculates it on the ticks where the guns fire. Because that's the only tick where it matters.
Yeah, it runs the specific calc for the specific player once every ... what 4 ticks or so ...
But every tick, it still has to check stuff like "yes, the guns are still partway thru their cycle" or "oh wait, no their cycle got shortened" or "no, he lost his ganglinks, now I have to re-work all the things".
Essentially, it goes from "bad" to "really friggin bad" pretty quick.
Although, assuming a normal fight - it's not necessarily the guns and stuff that ruins the server, but rather the loads of people getting on grid or jumping into system -- moving the characters across nodes is (IIRC) the most taxing part of the game. One of the bitter points of a good bittervet is the realisation that all those SP don't really do much, and that the newbie is having much more fun with what little he has. - Tippia |
Kaarous Aldurald
ROC Deep Space The ROC
4461
|
Posted - 2014.04.07 00:30:00 -
[16] - Quote
Name me another MMO that can even consider having more than a thousand people in the same general area without crashing multiple servers.
Within their limitations(which are not inconsiderable), they're freaking miracle workers. "Verily, I have often laughed at the weaklings who thought themselves good because they had no claws."
-áPsychotic Monk for CSM9.
|
Nevyn Auscent
Broke Sauce
1222
|
Posted - 2014.04.07 00:45:00 -
[17] - Quote
Kaarous Aldurald wrote:Name me another MMO that can even consider having more than a thousand people in the same general area without crashing multiple servers.
Within their limitations(which are not inconsiderable), they're freaking miracle workers. Having seen ESO personally with 400+ on 'grid' and it handling it, they 'might' just get to over 1000. On the other hand, that's a brand new on the market MMO with a design focus to enable large scale 'open world' PvP and using a server system that almost certainly takes some of it's inspiration from how EVE functions given they similarly are advertising about being a mega server.
And their PvP zones hard cap at 2000 people max across the entire zone.
With no true 3D movement, no calculations for angular momentum, and far shorter combat ranges.
So yea, EVE is a miracle of MMO's with their tech so far. |
Kaarous Aldurald
ROC Deep Space The ROC
4462
|
Posted - 2014.04.07 00:54:00 -
[18] - Quote
Nevyn Auscent wrote:Kaarous Aldurald wrote:Name me another MMO that can even consider having more than a thousand people in the same general area without crashing multiple servers.
Within their limitations(which are not inconsiderable), they're freaking miracle workers. Having seen ESO personally with 400+ on 'grid' and it handling it, they 'might' just get to over 1000. On the other hand, that's a brand new on the market MMO with a design focus to enable large scale 'open world' PvP and using a server system that almost certainly takes some of it's inspiration from how EVE functions given they similarly are advertising about being a mega server. And their PvP zones hard cap at 2000 people max across the entire zone. With no true 3D movement, no calculations for angular momentum, and far shorter combat ranges. So yea, EVE is a miracle of MMO's with their tech so far.
Oh, yeah, I forgot that dirt pile had launched, hadn't it?
I give it 120 days before it goes free to play. ESO might have much better tech behind the servers, but the game itself is one of the worst designed things I have ever played, and I even used my press credentials to get into the beta from a very early point.
They spent all their time on the style, and none on the substance. "Verily, I have often laughed at the weaklings who thought themselves good because they had no claws."
-áPsychotic Monk for CSM9.
|
Alundil
Sky Fighters Sky Syndicate
460
|
Posted - 2014.04.07 01:41:00 -
[19] - Quote
Pilots piloting. Clone mechanics enchancements Deep Space Probe Revival |
Nariya Kentaya
Phoenix funds
1177
|
Posted - 2014.04.07 03:19:00 -
[20] - Quote
Alundil wrote:Pilots piloting. >pilots >in eve
technically no, pilot in the sense your 1 man controlling the whole ship, but the smallest ship is still bigger than a 747.
just figured id go ahead and point that out before ANYONE mentioned a "fly your ship" idea. |
|
Meandering Milieu
House Aratus Fatal Ascension
22
|
Posted - 2014.04.07 03:37:00 -
[21] - Quote
I wonder if a crowd sourcing idea could work. Sometimes universities and other organizations use large groups of volunteers to run small calculations on their systems and send back the info. Not everyone could do it, because of hardware restraints, but a checkbox option, which allowed you to do some of the processing of information locally, and then send it back to the node, could possibly reduce the ordeal. Eve could be set up so that, if you have it enabled, packets for the systems under heaviest load are sent to you, and the same pack could be sent to multiple people, to guard and double check against slow machines/bad connections. You could leave it running when you aren't logged in, if you so desired, to keep eve running smoothly. If connection is lost, the server could pick up immediately, as it already does. So there should be no loss in performance.
Idk the technical end of this, so it is spitballing. |
Nevyn Auscent
Broke Sauce
1222
|
Posted - 2014.04.07 04:10:00 -
[22] - Quote
Meandering Milieu wrote:I wonder if a crowd sourcing idea could work. Sometimes universities and other organizations use large groups of volunteers to run small calculations on their systems and send back the info. Not everyone could do it, because of hardware restraints, but a checkbox option, which allowed you to do some of the processing of information locally, and then send it back to the node, could possibly reduce the ordeal. Eve could be set up so that, if you have it enabled, packets for the systems under heaviest load are sent to you, and the same pack could be sent to multiple people, to guard and double check against slow machines/bad connections. You could leave it running when you aren't logged in, if you so desired, to keep eve running smoothly. If connection is lost, the server could pick up immediately, as it already does. So there should be no loss in performance.
Idk the technical end of this, so it is spitballing. So..... CCP would be reliant on everyone being honest? Dumb dumb idea for an MMO. |
Corraidhin Farsaidh
Hello-There
343
|
Posted - 2014.04.07 05:38:00 -
[23] - Quote
To be fair he did say he didn't know the tech side of this and if it was random data from a system you aren't in I doubt you could do much with it other than just process it. However this would mean probably as much recoding of the game engine as just fixing it would. Better to concentrate those resources on the core code and get it rewritten for multi-thread etc |
Nariya Kentaya
Phoenix funds
1178
|
Posted - 2014.04.07 21:12:00 -
[24] - Quote
Nevyn Auscent wrote:Meandering Milieu wrote:I wonder if a crowd sourcing idea could work. Sometimes universities and other organizations use large groups of volunteers to run small calculations on their systems and send back the info. Not everyone could do it, because of hardware restraints, but a checkbox option, which allowed you to do some of the processing of information locally, and then send it back to the node, could possibly reduce the ordeal. Eve could be set up so that, if you have it enabled, packets for the systems under heaviest load are sent to you, and the same pack could be sent to multiple people, to guard and double check against slow machines/bad connections. You could leave it running when you aren't logged in, if you so desired, to keep eve running smoothly. If connection is lost, the server could pick up immediately, as it already does. So there should be no loss in performance.
Idk the technical end of this, so it is spitballing. So..... CCP would be reliant on everyone being honest? Dumb dumb idea for an MMO. beyond that, wouldnt work under a single-core reliant architecture, and changing the ssytem to work under multi-core capabilities solves a majority of the problem in the first place, making subsequent "fixes" excessive and uneccesary. |
|
|
|
Pages: [1] :: one page |
First page | Previous page | Next page | Last page |