open All Channels
seplocked EVE Information Portal
blankseplocked New Dev Blog: CarbonIO and BlueNet: Next Level Network Technology
 
This thread is older than 90 days and has been locked due to inactivity.


 
Pages: 1 2 3 [4]

Author Topic

CCP Atropos

Posted - 2011.06.21 22:27:00 - [91]
 

Originally by: NoobPwn
Good to know that you made such improvements, but things you really should get done is to get rid of standard Python interpreter once and for all, use something like LLVM to improve actual runtime performance.

Example:
http://code.google.com/p/unladen-swallow/

Unfortunately Unladen Swallow is pretty much dead in the water these days.

If you're interested in other Python VM's, here is a good panel from PyCon this year covering most of the currently available VM's (CPython, PyPy, Jython and Iron Python).

CCP Curt

Posted - 2011.06.22 12:48:00 - [92]
 

Quote:
With GPU's being used more and more for calculations etc. (and less for "sweet graphics"), Have "you guys" looked into that possibility with some of the things being done server-side?

Short answer is no, long answer is hell no.

Three problems that I can think of off the top of my head:
- GPUs are *not* CPUs, they are specialized parallel vector processors. They do math very. damn. fast. (google MAC unit) But that's really all. Logic-wise they are pretty limited and highly proprietary, not the hybrid RISC/CISC beasts modern CPUs have become.
- Primarily because of the preceding, coding for them is very specialized. There is no good standard, crack a book on writing pixel shaders for an education on the mind-scrambling business of writing code that works on even most of them. Let alone any kind of standard API for loading non-graphics work onto them
- Even if all of that could be solved, there is still the fact that servers don't have *****in' graphics cards, if they have one at all its usually an on-board single-chip OEM something-that-gets-the-terminal-to-light-up. Servers tend to be stuffed with conventional CPUs.

If you were referring to speeding up the Client then its a flat-out "no" the GPU is busy doing what it needs to be doing, game logic/routing always takes a back seat to rendering.

Quote:
You guys tried running your Python code base on PyPy? Its just-in-time compilation can bring surprising performance improvements.

The powers that be are very conscious of newer/faster/better platforms and research them more thoroughly then they are generally given credit for. Try to keep in mind that there is a vast big difference between proof-of-concept code or even a moderately complex piece of software and the weapons-grade commercial monster that runs cluster-wide making EVE happen.

Quote:
I think this is just an async networking model which has been widely used for about a decade, thing different is that your packet builder & parser is written in Python

Close, most of the communications glue has been asynchronous since StacklessIO. What was (and is) in Python is the marshaling logic (aka Machonet) which can be thought of as a dynamic routing configure-er. Its interaction is minimal once the routes are computed, and was never a bottleneck. The difference now is the decoupling of the GIL from the actual transactions (of which there are about a kabillion per second) so they can deliver that data to *other* asynchronous-capable systems.

Which in turn frees up the Python interpreter to do [much]more work.

Quote:
Nope. that's only true when you're writing a new iFart application for iPhone.

For huge, realtime systems with tens, or even hundreds of thousands of concurrent users, systems just like EVE, that few cpu cycles are worth much more than single hour of programmer.

I would so pay for iFart.

You are are correct, CPU cycles can be VERY precious, but only "where it matters" and that's the rub, when does it matter? Less than most people think. For excellent discussion on such things I refer you to an extremely relevant masterwork: http://www.amazon.com/Zen-Code-Optimization-Ultimate-Software/dp/1883577039

If you are interested in writing seriously fast code, skip the chapter on optimizing for the 286 and Tatoo the rest on the inside of your eyelids.

Glyken Touchon
Gallente
Independent Alchemists
Posted - 2011.06.22 14:19:00 - [93]
 

Originally by: Gnulpie
Why can't that be done with the modules that handle the space simulation and creates "the lag" in huge fleet battles? Offload the critical parts from Python and the GIL, calculate bits and pieces using multicores/multiprocessors, use a static copy of the battlefield until all calculations are done, upload the result back to Python - just the same way you do it with the IO now?
If I'm reading it correctly (no guarantees), that's the sort of stuff Gridlock will be doing next - taking advantage of the new capabiltites.

WheatGrass
Silent but Friendly
Posted - 2011.06.22 19:03:00 - [94]
 

Edited by: WheatGrass on 22/06/2011 19:06:19
-The geek in me really enjoyed the dev blog. Thank you.
Originally by: CCP Curt
- Even if all of that could be solved, there is still the fact that servers don't have *****in' graphics cards....
May 24, 2011
Cray Unveils Its First GPU Supercomputer
Michael Feldman of HPCWire.com

Edit...
I suppose you're going to want me to renew my subscription now.

Alundil
Gallente
Galactic Salvage Inc.
Posted - 2011.06.22 22:39:00 - [95]
 

First, excellent dev blog CCP. Enjoyed reading about this. And I also enjoy knowing that there are real tangible plans (and implementations) to improve the backend.


Originally by: WheatGrass
Edited by: WheatGrass on 22/06/2011 19:06:19
-The geek in me really enjoyed the dev blog. Thank you.
Originally by: CCP Curt
- Even if all of that could be solved, there is still the fact that servers don't have *****in' graphics cards....
May 24, 2011
Cray Unveils Its First GPU Supercomputer
Michael Feldman of HPCWire.com

Edit...
I suppose you're going to want me to renew my subscription now.


I guess since you found an article showing "servers" with GPU's you expect CCP to have already coded for, and deployed to, said "Servers?" (even though the server you reference is a Cray SC and not a traditional "(datacenter server") Who feels like upping their sub $$ to help acquire a couple true deal super comupters?

Grimnir
Posted - 2011.06.22 22:58:00 - [96]
 

Originally by: Alundil

I guess since you found an article showing "servers" with GPU's you expect CCP to have already coded for, and deployed to, said "Servers?" (even though the server you reference is a Cray SC and not a traditional "(datacenter server") Who feels like upping their sub $$ to help acquire a couple true deal super comupters?


We can pay for it in Aurum!

Sorry, couldn't resist it :)

CCP Curt

Posted - 2011.06.22 23:17:00 - [97]
 

Quote:

I guess since you found an article showing "servers" with GPU's you expect CCP to have already coded for, and deployed to, said "Servers?" (even though the server you reference is a Cray SC and not a traditional "(datacenter server") Who feels like upping their sub $$ to help acquire a couple true deal super comupters?

Now now, be nice :)

Those supercomputers are one-trick ponies, they exist to do math (vector processing) and very little else. That article is very interesting read in that the blades have to balance actual CPUs with GPUs depending on the job they are meant to do.

Very little an EVE server does would benefit from GPU offloading, remember its not just "math" its a specific KIND of very parallel-ready vector math that those monsters do.

Oh I'm sure if we slapped some network interfaces on those blades, and re-implemented our codebase in Cray-Linux they would be very capable servers, but bang-for-buck would be pretty disgusting. Remember the whole point of parallel computing is to go wide. Supercomputers go wide *and* deep to do specialized high-availability (usually real-time) tasks such as weather, ballistics, particle models and such.

Christelle CoraFlorenza
Posted - 2011.06.22 23:30:00 - [98]
 

Congratulations to programmers who were finally given a possibility to realize an elegant solution the way it should have worked from day one.

Also, maketing guys, don't cry. You'll be able to phuk those techies over again soon enough by rushing out next features half-finished.

But seriously. You have our money, please let the techies do their thing and give it to us when it's awesome, not when it just barely works.

Jaik7
Posted - 2011.06.23 03:52:00 - [99]
 

will this let me run CQ on low settings above 19 FPS? because i am getting tired of running into walls.

Eraggan Sadarr
Comply Or Die
Posted - 2011.06.23 13:39:00 - [100]
 

Very nice read. A true dev blog :)
... and python because productivity is so high with this language.

Jim Luc
Caldari
Rule of Five
Vera Cruz Alliance
Posted - 2011.06.23 16:03:00 - [101]
 

I heard a few things about not offloading to GPU things and such, but perhaps I'm not understanding correctly.

It is possible to implement a PhysX server for the space physics calculations now, right? I know the GPU wouldn't be good for things like fleet fights or AI calculations, but regarding missile physics, ship physics (so we can finally get a better rigid body than just the bounding sphere, I would think this would help take the load off of the regular CPU, or at least return the calculations per tick much faster.

I would like to see an eventual inclusion of twitch-based controls, even if they're only plausible for a frigate in MWD or for controlling drones & fighters - it would be fun to fly around like that.

Inspiration
Posted - 2011.06.23 16:09:00 - [102]
 

Edited by: Inspiration on 23/06/2011 16:10:51
Edited by: Inspiration on 23/06/2011 16:10:32
Originally by: CCP Curt
You are are correct, CPU cycles can be VERY precious, but only "where it matters" and that's the rub, when does it matter? Less than most people think. For excellent discussion on such things I refer you to an extremely relevant masterwork: http://www.amazon.com/Zen-Code-Optimization-Ultimate-Software/dp/1883577039

If you are interested in writing seriously fast code, skip the chapter on optimizing for the 286 and Tatoo the rest on the inside of your eyelids.



I remember the book from him called: 'Zen of Assembly Language'

http://www.amazon.com/Zen-Assembly-Language-Knowledge-Programming/dp/0673386023/ref=pd_sim_b_1

Learned a great many things from it back in my young days :). If this book you refer too is half as good as that one was, it is worth its money with ease!


Lederstrumpf
Posted - 2011.06.27 13:08:00 - [103]
 

CCP PR folks should have advertised your blog rather than waste time praising monocles!

Ma Talune
Minmatar
DaZeD and ConFuseD
Nabaal Syndicate
Posted - 2011.06.28 17:34:00 - [104]
 

Originally by: Jim Luc
I heard a few things about not offloading to GPU things and such, but perhaps I'm not understanding correctly.

It is possible to implement a PhysX server for the space physics calculations now, right? I know the GPU wouldn't be good for things like fleet fights or AI calculations, but regarding missile physics, ship physics (so we can finally get a better rigid body than just the bounding sphere, I would think this would help take the load off of the regular CPU, or at least return the calculations per tick much faster.


Nope - most of this stuff is done on servers for cheat security reasons and what not. E.I. not your local CPU+GPU and the servers gain nothing from GPGPU and not to say never but the stuff CCP does is way to general stuff to work well with GPU's.

Originally by: Jim Luc

I would like to see an eventual inclusion of twitch-based controls, even if they're only plausible for a frigate in MWD or for controlling drones & fighters - it would be fun to fly around like that.

Think we all would - beta tested a german game for release soon but it just sucked in most ways EvE is great as you can't have both things and eat it too generally speaking. Tech of a propper MMO like EvE doesn't work with realtime stuff - infact this blog has been about they are trying to go closer to the realtimeish way WoW and many other land based MMO's are trying to do it. But thats just cheats to hide that its still not nearly realtime. Often spacestation walking like behavior just cheat people a little better due to how we programmers can predict people behavior better into the future. But every competitor is just like all EvE systems are now or worse.
On of the main issues being the time between you are CCP London and back in internet world is way to long for most realtime stuff like what we dream of. In fact modern First Person Shooters's like Call of Duty or Battlefield uses many of the same cheats as MMO's to hide they still have really big problems with the delay. Thats why for all the research into the topic FPS's still lag unless your are very closed based with good stable connections in internet world terms.
And thats why we can't have cake Crying or Very sad

As a note on people loving fixes (like me ;) they should be aware CCP need to keep content pushing first for EvE as competition are getting better at doing stuff which looks neat compared to EvE if you are not a spreadsheet or sci-fi geek like me and can accept EvE realtime limitations YARRRR!! Basically CCP are in periods of new competing releases in strong competition over new and old customers until people realize that other games does not provide the depth to their differentiating features. This is due to EvE always have the edge being able to match anyone in money and staff while having been around for a long time and having some very clever staff members. I've spoken to some when they where in Denmark and even drunk are they neat people in general Razz

Ma Talune
Minmatar
DaZeD and ConFuseD
Nabaal Syndicate
Posted - 2011.06.28 17:37:00 - [105]
 

Originally by: Ma Talune

Nope - most of this stuff is done on servers for cheat security reasons and what not. E.I. not your local CPU+GPU and the servers gain nothing from GPGPU and not to say never but the stuff CCP does is way to general stuff to work well with GPU's.



What I mean to say is that MMO physics != singleplayer physics. Heck even your multiplayer game like online FPS does not integrate well with any advanced physics. They just cheat a lot so you don't see the difference and use some more CPU power on server and such.

!= being "does not equal"

Xianthar
Vanishing Point.
The Initiative.
Posted - 2011.07.05 22:58:00 - [106]
 

Edited by: Xianthar on 05/07/2011 22:58:25
Originally by: Vile Zurk
You guys tried running your Python code base on PyPy? Its just-in-time compilation can bring surprising performance improvements.



Stackless python can't run on just any VM, its a distribution of its own or can be used as a module in CPython.

That being said PyPy has included many of the features of stackless and they have been tossing around the ideal of killing the GIL.

The GIL isn't a "feature" of Python but of the VM running the code.

For instance jython doesn't have a GIL, nor does ironpython.

pypy, cpython (the 'default' vm) and stackless (a fork of cpython) do have the GIL.

Subrahmaya Chandrasekhar
Amarr
J0urneys End
Posted - 2011.08.29 16:19:00 - [107]
 

Exceptional explanation CCP Curt. I know a lot of work went into that. Thank you!

Altzcher
Posted - 2011.09.01 11:27:00 - [108]
 

Edited by: Altzcher on 01/09/2011 11:32:52
[...] How effective is this? We're not sure yet, but its somewhere between "unbelievably stunning" and "impossibly amazing" reductions in lag and machine load for systems where this is applicable. Seriously we can't publish findings yet, we don't believe them. [..]

Grats on ur achievement, sounds rather groundbreaking - wut about the technology itself? im no techie, but can other systems use ur work? and if they can, then a big gz on ur raise =P

In any case good luck and ty for the read.

D.

Electra Magnetic
Posted - 2011.09.01 18:39:00 - [109]
 

You guys are way behind. I am highly disappointed that this was not implemented during the latest patch. The delay represents as a whole how myself and the majority of your players and potential players feel about CCP. We are fed up with your lackadasical approach to development and player experience.
Multi-core, GPU, and Monitor support was due months ago.
walking in stations with other people seems years away.
What happened to Dust 514? Oh yea... You guys dont care enough about the money you are making now to improve the game and expand.

"No one wants to spend 3 weeks of their lives training refinery efficency 5"

Peregrine Brockhouse
Posted - 2011.09.01 21:52:00 - [110]
 

Originally by: Electra Magnetic
You guys are way behind. I am highly disappointed that this was not implemented during the latest patch. The delay represents as a whole how myself and the majority of your players and potential players feel about CCP. We are fed up with your lackadasical approach to development and player experience.
Multi-core, GPU, and Monitor support was due months ago.
walking in stations with other people seems years away.
What happened to Dust 514? Oh yea... You guys dont care enough about the money you are making now to improve the game and expand.

"No one wants to spend 3 weeks of their lives training refinery efficency 5"


Clueless troll is clueless.

Omendor
Special Projects Experts
Posted - 2011.09.02 12:43:00 - [111]
 

Edited by: Omendor on 02/09/2011 12:44:37
To be serious again...

That Dev-Blog about CarbonIO was just amazing and there are hints across the article that let me assume that also or especially the client can benefit greatly from this update. Can you tell us how this will have an impact on our clients?
Sometimes when loading grids, loading hangars at POSes, checking/searching assets, jumping with assets window open, searching contracts and so on we all can experience some pause in the client. Will this apparent I/O heavy operations also benefit from CarbonIO?
I do not expect another great and detailed blog from the devs, just a short glimpse on what we can expect from this, thanks a lot!

And to everyone at CCP: Please keep up with all the great work! You give us great stuff to have fun with! All those trolls out there are just cute little teddy bears, which want to play with kids (or was it the other way around Wink )

Sverre Haakonson
Gallente
Posted - 2011.09.06 08:40:00 - [112]
 

A really nice blog!


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