open All Channels
seplocked EVE Information Portal
blankseplocked New dev blog: Telemetry on Tranquility
 
This thread is older than 90 days and has been locked due to inactivity.


 
Pages: [1] 2 3 4

Author Topic

CCP Guard


C C P
C C P Alliance
Posted - 2011.07.27 14:06:00 - [1]
 

CCP Veritas from Team Gridlock has some cool tricks up his sleeve when it comes to understanding and fighting lag.

Check out his latest blog on Telemetry!

DE version
RU version

T1nyTradingMan
Posted - 2011.07.27 14:23:00 - [2]
 

Edited by: T1nyTradingMan on 27/07/2011 14:27:24
Edited by: T1nyTradingMan on 27/07/2011 14:25:49
first?

Woot! Cool

Nice blog too btw. That is one powerful tool. Can't wait to see the benefits of it in game. Keep bringing the blogs to btw.. I check the blogs everyday and there have been a lot of no blog days lately Rolling Eyes

BTW You didn't link the comments thread in the blog post.. you might get a lot more replies that way?

Trebor Daehdoow
Gallente
Sane Industries Inc.
Posted - 2011.07.27 14:30:00 - [3]
 

What, no sneak-peak video of time-dilated lasers? Twisted Evil

Sessym
Amarr
Posted - 2011.07.27 14:40:00 - [4]
 

Great tool there!

Also, just curious, wouldn't it be better from an optimization viewpoint if everything that applied to the whole fleet (like warp speed) would be an attribute of the fleet itself? Every bit of free CPU time is useful, no? Wink

CCP Veritas

Posted - 2011.07.27 14:52:00 - [5]
 

Originally by: Sessym
Great tool there!

Also, just curious, wouldn't it be better from an optimization viewpoint if everything that applied to the whole fleet (like warp speed) would be an attribute of the fleet itself? Every bit of free CPU time is useful, no? Wink


That's a really good idea, I hadn't thought of that! Right now, the implementation of fleets is a bit of a mess, but I'll make a note to myself to make exactly this happen when we get around to refactoring how fleets work.

Estimated Prophet
Ye Olde Curiosity Shoppe and Trading Company
EVE Trade Consortium
Posted - 2011.07.27 14:53:00 - [6]
 

I've noticed a Telemetry button in the in-game monitor. Clicking it doesn't appear to do anything. Does it do anything? Or is it disabled for mere mortals like me?

CCP Veritas

Posted - 2011.07.27 15:00:00 - [7]
 

Originally by: Estimated Prophet
I've noticed a Telemetry button in the in-game monitor. Clicking it doesn't appear to do anything. Does it do anything? Or is it disabled for mere mortals like me?


I believe that's a convenience button for the guys working on the client - they're using this tool as well for performance analysis. I don't know if it does anything for mortals or not, but for us it connects the client to Telemetry. Quite handy.

Kenpachi Viktor
Gradient
Electus Matari
Posted - 2011.07.27 15:00:00 - [8]
 

The lowest ship warp speed is a known factor. Would it make sense to stop looking at warp speeds if a ship in fleet is found with the lowest warp speed?

T1nyTradingMan
Posted - 2011.07.27 15:03:00 - [9]
 

Originally by: CCP Veritas
Originally by: Sessym
Great tool there!

Also, just curious, wouldn't it be better from an optimization viewpoint if everything that applied to the whole fleet (like warp speed) would be an attribute of the fleet itself? Every bit of free CPU time is useful, no? Wink


That's a really good idea, I hadn't thought of that! Right now, the implementation of fleets is a bit of a mess, but I'll make a note to myself to make exactly this happen when we get around to refactoring how fleets work.


I didn't want to suggest anything knowing nothing about the actual system but this immediately jumped to my mind as well. It would make sense (not knowing the system) that on creating a fleet a fleet warp speed (the lowest) among other attributes (including a count of the number of ships with that value perhaps) was assigned to the fleet then if anyone joins the fleet compare them to that value, if anyone leaves the fleet with a warp speed equal to the fleet warp and the count mentioned earlier hits zero then the whole fleet gets pole'd again. If a ship leaves the fleet with a higher value nothing needs to change. Then entering warp would not require that activity and (depending on how it is handled now) the changing of fleet makeup should be much less taxing..

But knowing software and having given it very little of my time I could be way way off and no where near as clever as you guys. Basically I didn't want to say anything as I didn't want to insult you guys, your obviously experts in your field and none of the projects I have worked on remotely resemble the scale.

Gnulpie
Minmatar
Miner Tech
Posted - 2011.07.27 15:14:00 - [10]
 

That is pretty awesome stuff! Yaaay!

Thanks for sharing this with us. I wish the other dev teams of CCP would have the same spirit of good communication with us players as Team Gridlock and CCP Veritas in special!


Now, in the video was mentioned that a typical tick is aggregrating data of what happened and then sending it. Even though the sending of the data seems to scale really well, it still took quite a bit. Will that change with the CarbonIO and BlueNet? If I remember right it was said that you can delegate the sending to completely independent demons.

And this Telemetry tools seemd to be really handy, nice nice.

Yar'vak
Morningstar Technologies Ltd.
Shadow of xXDEATHXx
Posted - 2011.07.27 15:29:00 - [11]
 

There is only one problem. To keep the current behaviour, you have to check if the person with the lowest speed is on grid, and if not search for the person on grid with the lowest warp-speed.

Rrama Ratamnim
Posted - 2011.07.27 15:30:00 - [12]
 

NOICE A DEVBLOG, ok its more a show off your new toy blog, but still its a devblog better than nothing, Veritas, any word from the other devs when more info will be coming i thought the devs said they had devblogs lined up on things that are going on and being worked on etc... its been oftly quiet for a while now.

CCP Veritas

Posted - 2011.07.27 15:31:00 - [13]
 

Originally by: Gnulpie
Now, in the video was mentioned that a typical tick is aggregrating data of what happened and then sending it. Even though the sending of the data seems to scale really well, it still took quite a bit. Will that change with the CarbonIO and BlueNet? If I remember right it was said that you can delegate the sending to completely independent demons.


Indeed, we've got a plan on the table to leverage BlueNet to get a bulk of that load off of the main thread entirely. A first step to the dream of a multi-threaded Eve server Very Happy

J Kunjeh
Gallente
Posted - 2011.07.27 15:38:00 - [14]
 

Edited by: J Kunjeh on 27/07/2011 15:43:52
The Devblog is a lie folks, it's just Veritas' way of distracting from the real issue...fixing lag! I mean, imagine all of the lags that could have been repaired were you not working on this crappy webcam vid....wait a minute...

Seriously though, great Dev blog. Love the tool, it reminds me (visually) a bit of the Ableton Live interface. This should be a great tool to have in the fight against lags.

Very slick new hairdo btw, you look so spiffy. Cool

Oh and people, get the man some delicious, delicious data from your pew-pew's would ya?

Flynn Fetladral
Royal Order of Security Specialists
Posted - 2011.07.27 15:40:00 - [15]
 

NEW HAIRCUT! That almost blew me away as much as the new toy! That's a seriously impressive toy btw.

E man Industries
Posted - 2011.07.27 15:42:00 - [16]
 

Nice.
I know nothing about PC's other than they let me play eve and look at *censored*

Was glad to see you can see exactly how long it takes to do everything. Looking forward to some huge fights.

Bienator II
Posted - 2011.07.27 15:42:00 - [17]
 

looks like intel's OpenCL kernel analyser. Apropos OpenCL... ;)

WachinDaGame DrinkinABud
Posted - 2011.07.27 15:43:00 - [18]
 

I think that everyone's group of 5 drones should act as one in terms of damage calculations and such. Why do the same job 5 times when once will suffice?

TheSmokingHertog
Posted - 2011.07.27 15:53:00 - [19]
 

Can't you post a HD zoomable object with a snapshot of such a fight as shown in the video?, with some pointers what is what?

Maybe the crowd can even give feedback / idea's on such process flow.

CCP Veritas

Posted - 2011.07.27 16:01:00 - [20]
 

Aaand I'm a horrible human being for not giving credit to CCP Snorlax over in Core for his work getting Telemetry integrated with our tech in the first place. He's one of those dudes I talked about above who are using it for client profiling~

Xercodo
Amarr
Xovoni Directorate
Posted - 2011.07.27 16:02:00 - [21]
 

Originally by: WachinDaGame DrinkinABud
I think that everyone's group of 5 drones should act as one in terms of damage calculations and such. Why do the same job 5 times when once will suffice?


ya, make grouped drones worked a little like grouped guns maybe?

i know their movements thru 3D space still needs individual processing but the commands given and then dmg calculations might be able to be done on a more abstract level

Nyphur
Pillowsoft
Posted - 2011.07.27 16:02:00 - [22]
 

Awesome devblog, and the new profiler looks really frigging useful. Definitely do more video devblogs in future, and more with Veritas and Team Gridlock :D.

Is the profiler collecting data all the time or must a node be set up for it in advance? And does the record-keeping add any additional load to the server node?

CCP Veritas

Posted - 2011.07.27 16:07:00 - [23]
 

Originally by: Nyphur
Is the profiler collecting data all the time or must a node be set up for it in advance? And does the record-keeping add any additional load to the server node?


It's a rather large pile of data, so it's only run when we go in and turn it on.

It does at a small amount of load, but a large bulk of it is in another thread so it does not impact the server's ability to keep up significantly.

deathpain
Gallente
The Graduates
Posted - 2011.07.27 16:15:00 - [24]
 

Thanks Veritas, this kind of Blog is something that lets us see what you guys are up too and is definitly something I would like to see more off.

Internet Knight
The Kobayashi Maru
Posted - 2011.07.27 16:19:00 - [25]
 

Originally by: CCP Veritas
errr, this is basically... uhhh... a bunch of things happening... and we're putting together all the data of what needs to be told to the clients for it...


Love you Veritas. You're a true geek. Just, I don't love you *that* way, you know.

So, errr, this Telemetry program... do you think you could... like... show a live version of it working during a fleet fight? Then all them people in fleet twiddling their thumbs can go HOLD MY BEER AND WATCH THIS and then watch as they try to make Telemetry go WIZZ WHOO WHEEEE...

That'd be cool.

Sentient Blade
Posted - 2011.07.27 16:21:00 - [26]
 

That is a very impressive looking profiling suite. How much data is the server kicking out into the profiler each minute?

Charles Dickins
Posted - 2011.07.27 16:28:00 - [27]
 

I wish I could work for CCP and just stare at that pretty telemetry and list down all the things that could be improved. It would be such a gratifying job.

I don't live in 0.0, no do I take part in massive fleet fights, but, EVE is forever, and I want to at least contribute more than just bug reports. :)

islador
Gallente
Frontier Explorer's League
Posted - 2011.07.27 16:29:00 - [28]
 

I also immediately ran across the "pre-calculated warp speed" optimization. I'm an amateur coder and skilled FC, so the first thing that popped into my head is "Yeah, every 5 minutes it doesn't matter, but when I'm pinging a 25 man bomber team or a 15 man ceptor/dictor gang around in a system with 1050 people, I don't wanna wait 300ms for it to kick in."

The specific fix that kicked into my head was that warp speed can be a calculated variable offloaded to the character node or whichever one you're using for misc crap these days. Essentially what I would do is have each fleet, wing and squad have a master warp value. This value is re-checked each time someone reships or a new person joins the squad/wing/fleet. Because this forms a bottom up system, you would only need to calc out the values of each squad, from that point on, determining the slowest speed in each wing/fleet is just a matter of comparing the master values. Since warp values are pre-calculated by whatever handles the application of skills + rigs to the ship, you would run a comparison across the squad. Each time an individual joins a squad (and thus the fleet) the process would need to compare the squad value against the new pilots ship, if he's slower, the squad value is equal to it. Unfortunately because you have to recalculate this value each time someone reships/joins the fleet you have a massive amount of processing during mass fleet forming and reships. For this reason you'd want a grace period of a couple seconds immediately after a fleet advert is made, say 2 seconds to throw out an arbitrary value.

During the first 2 seconds when a fleet link is posted you'll see 50 to 250 pilots join up, this will give your calculation a base value based on the ships currently flown. Most fleets form up in station, system lag shouldn't be too high during the forming stages, even with pilots constantly reshipping and moving around squads to setup the fleet hierarchy. This also doesn't handle podding well, as we wouldn't want fleet warp set to 0 when someone takes the capsule express.

The next hurdle is how this calculation would impede on fleets during combat. As pilots are reduced to pods and eventually their clone bay each reship would result in a recalculation of fleet warp speed. I don't know enough about how the podding process works, but in order to preserve game mechanics, anyone not in a ship (pods are ships) would need to have their value removed from the equation without having themselves removed from the fleet, so as far as fleet-warp is concerned, they are a null value if they aren't in a ship.

Pods are a little harder to handle as they are produced mid-combat and not calculating at each reshipping would alter game mechanics. For this reason, 3000 characters into this post, I've been forced to accept that the concept of trading a value calculated on the fly for a pre-calced master value sounds nice, but isn't feasible in EVE based on my knowledge. I say this because the performance bottleneck we're trying to avoid is the 300ms while initiating a fleet warp. The system I've described would negate that right up until someone is killed as that would force a reship and thus a recalculation, so now we're adding a couple milliseconds to the fight in exactly where we don't want it -> Right in the thick of combat. There is also the potential with this system for someone to sit in station in their carrier while being in an interceptor squad, thus slowing down the squad warp speed and perhaps the wing as well.

CCP Veritas is better equipped to determine whether a milisecond or so everytime someone is podded is a performance gain or not, and I hope he takes the time to check that at some point, but from my perspective, it isn't worth exploring.

Rhennthyl
Posted - 2011.07.27 16:31:00 - [29]
 

Originally by: T1nyTradingMan
Originally by: CCP Veritas
Originally by: Sessym
Great tool there!

Also, just curious, wouldn't it be better from an optimization viewpoint if everything that applied to the whole fleet (like warp speed) would be an attribute of the fleet itself? Every bit of free CPU time is useful, no? Wink


That's a really good idea, I hadn't thought of that! Right now, the implementation of fleets is a bit of a mess, but I'll make a note to myself to make exactly this happen when we get around to refactoring how fleets work.


I didn't want to suggest anything knowing nothing about the actual system but this immediately jumped to my mind as well. It would make sense (not knowing the system) that on creating a fleet a fleet warp speed (the lowest) among other attributes (including a count of the number of ships with that value perhaps) was assigned to the fleet then if anyone joins the fleet compare them to that value, if anyone leaves the fleet with a warp speed equal to the fleet warp and the count mentioned earlier hits zero then the whole fleet gets pole'd again. If a ship leaves the fleet with a higher value nothing needs to change. Then entering warp would not require that activity and (depending on how it is handled now) the changing of fleet makeup should be much less taxing..

But knowing software and having given it very little of my time I could be way way off and no where near as clever as you guys. Basically I didn't want to say anything as I didn't want to insult you guys, your obviously experts in your field and none of the projects I have worked on remotely resemble the scale.


A few quick thoughts on the potential complications:

If you stored the fleet warp speed as an attribute, you would probably have to also create separate sub-fleet attributes for wings and squads since they can also be group-warped. Additionally, you would need to decide whether to refresh this value based on when someone enters/leaves grid as well as enters/leaves fleet unless you want the fleet speed to be affected by ships who will not be warping with the group. That could still be an acceptable tradeoff if the performance gain was high enough, but itís a consideration that may be important.

ShadowandLight
Amarr
Cryptonym Sleepers
Test Alliance Please Ignore
Posted - 2011.07.27 16:32:00 - [30]
 

amazing tool!!!

CCP Veritas, its been suggested that players are able to cause lag using the copy bookmark feature (copying many thousands at one time during a fight)

Is this true? Can you verify? Would it be possible to tweak features like this to prevent abuse during large fights?


Pages: [1] 2 3 4

This thread is older than 90 days and has been locked due to inactivity.


 


The new forums are live

Please adjust your bookmarks to https://forums.eveonline.com

These forums are archived and read-only