Lets talk about the distributed computing aspect of PS3. I found this on ...
another forum
AlgebraicRing wrote:
1) The cost of communicating the solution must be less than the cost of computing the solution.
Corollary: The cost of scheduduling and distributing the problem must be less than the time to compute the answer AND receive the results back
There's no point in asking someone else what 1+1 is when it takes less time to figure it out than to ask the question. Are there any kind of problems that are easy to describe, require lots of computation and cost little to send the results around?
This is a very good point and I thank for bringing it up because all I explained in the Cell article was that there were metrics that governed how and where Cell packets were sent.
To explain in more detail i will provide data metric formulas for governing what data gets sent where. As the actual data and code of the packet isn't to important for understand this point rather the metric formula.
First let me point out that Cell packets would not be transmitted to other Cells unless the transmitting Cell is already reached maximum resource capacity or the Cell packet contains more computational resources than the machine has.
Next lets present some scenarios as to why Cell packet transmission might occur:
In a Client / Application Server (Say for example: SOCOM server interface) Cell relationship the bulk of the static code (basic environments, permanent objects, etc.) would be processed on the server and the end results be transmitted to the Client systems GPU for processing, then output to VRAM for display.
Ok so say we have a populous of networked Cells (WAN Scale). We have a Cell packet generated by a transmitting Cell that is greater than ( < ) 1sec in processing time for said transmitting Cell. So to help understand this further and to easily input this into an equation- let&#8217;s assign it a Resource Unit.
This "Resource Unit" metric will map directly to the number of PE's (processing elements) (In a &#8220;preferred&#8221; embodiment (as the Patent outlined it), a PE comprises eight APUs) divided by the number of seconds for said Cell packet (remember that Cell packets contain data and instructions for processing). So this transmitting Cell (a PS3) contains 6 PEs. So 6/1sec. = (6 RU). Now this information is appended to the Cell Packet before it is processed by the Routing logic and becomes part of Cell packet.
Example Cell Packet (BTW we are assuming Ethernet network and transmission via TCP/IP) I&#8217;m not going to replicate the TCP/IP or ETHERNET encapsulation for now, to save time:
--- header --- -----RU------ -----payload----- ---CRC--
[destination / source ] [000110 (6)] [data & instructions] [checksum]
Once this packet hits the Routing logic it will make decision on where to forward this packet based on these metrics:
- Delay (hop count) in MS (milliseconds)
- Member Cells PE load (RU)
- Number of PEs (or Cell Class, eg 8APUs = A class node)
So say for the sake of example we have a member Cell in California, New York, Nevada, Colorado, and Florida. While the transmitting Cell resides in California.
Now let&#8217;s assign an RU & Delay Metric to each member Cell:
California: RU load = .3 Delay = 73ms PEs = 6
New York: RU load = .8 Delay = 179ms PEs = 16
Nevada: RU load = 1 Delay = 89ms PEs = 6
Colorado: RU load = 2 Delay = 97ms PEs = 6
Florida: RU load = 10 Delay = 164ms PEs = 1
So in order to understand how to find the best metric, we have to resolve the RU load floating point (decimal). So to resolve we simply find for x; (x being the milliseconds. of processing / transmission time of said softcell).
California: RU load = 20,000ms. + Delay = 73ms product = 20,073
New York: RU load = 20,000ms. + Delay = 179ms product = 20,179
Nevada: RU load = 6,000ms. + Delay = 89ms product = 6,089
Colorado: RU load = 3,000ms. + Delay = 97ms product = 3,097
Florida: RU load = 100ms. + Delay = 164ms product = 264
So this shows us that while the server in New York has the most processing power (currently available); right now it&#8217;s CPU and delay creates a prohibitive metric. Conversely the Florida Metric is much better; only producing a cost of 264ms. However this can be deceiving as this task will take 6,000ms longer on the Florida system due to its single PE configuration. So the actual best metric would in turn be the Colorado system which offers 3,097ms for current processes and another 1,000ms to process this request process from the transmitting member Cell; resulting in roughly a total 4,097ms to execute this process and receive the results.
Said process would have otherwise been held in queue until the transmitting Cell completed it's full cycle of processing, which would have been longer than 4,097ms in order for the transmitting Cell to off-load the process onto the Cell network.
I certainly hope I&#8217;ve shed some light onto this question. I will explain how QOS can play a roll in certain softcells later on, for now; let me get to the other questions...
AlgebraicRing wrote:
2) What happens when an ISP hiccups and a block of machines become unreachable, the content of their computation becomes unreachable?
This would then cause a check response to be sent to the unreachble Cell, in turn would cause re-transmission of the Cell packet. So yes, the data would be lost. Although this should be rare.
AlgebraicRing wrote:
3) What about latency between machines? For a real time game, Machine X is going to have to get data from Machine Y at least 30 times a second.
I explained this above.
AlgebraicRing wrote:
4) Am I in control of what code is being run on my machine? If I'm playing Game Y will my machine be calculating results for Game Z? Can I donate my down time to a particular game?
Most likely not in the intial phases. Probably leaving your system on and connected will make you a part of the collective.