PDA

View Full Version : Can I use Xgrid to play games?


SonOfSylvanus
2004-06-30, 15:42
Know this is a silly question, but can I use several Macs (er... I have one) and Xgrid (er... I don't even have one of that) to super-speed-up a quick bout of, say, Call of Duty? Heh, no really... seriously...

(I'll be back tomorrow to read any replies... fuck 56k... effing dark ages again, d00d...)

Thanks

Kickaha
2004-06-30, 15:47
Not really.

Graphics cannot be sped up with Xgrid, and that's the largest bulk of computing done in most games these days. Sorry.

MACSRULETHEWORLD
2004-06-30, 19:43
this is really something that i hope to see in the future: delegating normal system tasks through xgrid.

Windows Breaker G4
2004-06-30, 19:47
this is really something that i hope to see in the future: delegating normal system tasks through xgrid.
I would like to see this too. I would also like to see apple fix shake and qmaster to work with maya 6.

Kickaha
2004-06-30, 19:54
this is really something that i hope to see in the future: delegating normal system tasks through xgrid.

Er... like what? What system tasks can you think of that would be faster if done distributed across an Xgrid system than if done locally?

When those other systems are running similar system tasks that might need to be distributed if possible?

:\

Really, which tasks do you have in mind? Because Xgrid only speeds up specific classes of processes - those that have minimal shared resource needs, but require intense number crunching.

MACSRULETHEWORLD
2004-06-30, 20:18
like, UT2K4. i don't know, but my ibook 700 cant manage that. but with that 700Mhz, plus my brother's 450Mhz, plus my Sister's 450Mhz, plus my Parent's 400Mhz, i just might be able to.

Kickaha
2004-06-30, 20:31
Nope.

UT2K's graphics are the bulk of the computation load, and can't be distributed.

The physics models need to have immediate feedback - network transport time alone is too long, and they're intimately tied together... can't distribute.

So no, it wouldn't help with something like that at all.


OTOH, my research is comprised of nearly independent computations that take several seconds each, and are in a well-formed dependency tree. I can toss out the bottom level computations across the network, and as results come in, generate the next level items as appropriate and send them out. Xgrid is *perfect* for it, and my computational needs are perfectly suited to take advantage of it.

synotic
2004-06-30, 21:02
Kickaha seems to have covered it but just so it's easier to understand what tasks would benefit from something like Xgrid...

There are two factors you have to consider, one is network lag and whether a task can be split up or is intimately dependent on the results of a previous calculation. Here are some examples:

Compressing a movie using Xgrid: This can't be done because the rendering of each frame relies on the result of the previous frame. Say you had a 200 frame movie and wanted to spread the load among a few computers. Doing so would be pointless because each computer would have to wait while one computer does one frame and then it would send it over the internet and then the other computer with load it. It would just be pointless, the fastest way to get the movie compressed would be to put it on the fastest computer.

Applying a filter to a large image: Now this would be more realistic. You'd have to have a pretty large image however to want to distribute the load among several computers :) Say you wanted to apply a noise filter to a 100 mb file, you could have it separate the image into several blocks and give it to a bunch of computers, each computer could crunch each block and then send it back and the main computer could recompile the image.

Applying a filter to a small image: Here's a case where distributed loading works but wouldn't be helpful. Network lag would eliminate any speed gains. This is also why simply tasks like resizing or minimizing a window can't be sped up using Xgrid, network lag would make any rendering even choppier. Same with 3D games, because the rendering is done on the spot and immediately, you would experience lag as the other computer sent back the rendered image. For example let's say you're in a particular part of a game and in a particularly complicated scene, it would have to send one frame (can't send multiple because it can't guess the future anything in the past has already been rendered) to another computer, it would render it and send it back. By the time the process is over your game will have lagged for seconds. 0.2 FPS doesn't seem too attractive. Same with the movie compression example, you would simply want to use the fastest computer you had available.

Rendering a movie: Unlike compression, rendering a movie from a 3D application can be accelerated using Xgrid. I might be talking out of my ass but I believe that for each frame there are instructions for how it should be rendered, a movie can be broken down into several segments and sent to several computers, rendered, and then recompiled on the main computer.

Anyways, these are just some examples I came up with, feel free to correct me.

SonOfSylvanus
2004-07-01, 18:14
Thanks for the replies, esp Kichaha and synotic. Sounds like a resounding NO! then :\ Ah well...

fireemblem555
2005-10-01, 17:32
Any extra processing power gained through x-grid for gaming would be made moot by the trip through the ethernet cables, x-grid is designed for relatively long term parallel computations that do not have to be finished in a fraction of a second. In addition to this, it's a simple law of physics that no matter how good ethernet, or firewire, or usb 2.0 becomes it will always be faster to travel millimeters across a processor. In the event that physics stop happening, and a large time warp occurs, you still do not possess the video memory to effectively utilize all the extra processor space. This is like trying to do a math test with 1 pencil, and a few students a football field across.

fireemblem555
2005-10-01, 17:32
just realized i repeated alot of what the guy before be said, srry.