Jump to content
N-Europe

Arstechnica: Cross-platform game development


BigTac

Recommended Posts

This is a great article! It's incredible how almost everything he says is covered by nintendo philosophy of the next generation of consoles, and it also makes me think that the revolution will have a single core CPU (wanting it to be a simpler system to develop for, and the fact that the gamecube devkit can be used for revolution games).

If his theory proves to be true, nintendo will have a bright future.

Link to comment
Share on other sites

I'm expecting Nintendo to have multicore, just because it allows much easier ports. There's no doubt that they'll make single threaded mode easy though, unlike the other two which 'in single-threaded can be outperformed by a Dreamcast'.

Link to comment
Share on other sites

Ah that all reminds me of a few courses at university ... there is nothing more fun than Amdahls law. It is really easy ... so I can show you guys how better dual/triple/quad/... cores are:

 

Few easy formulas and you can do it yourself!

 

Speedup:

 

S(n) = T(1) / T(n)

 

T(1) .. sequentiell runtime

T(n) .. parallel runtime with n processors

 

 

Efficency:

 

 

E(n) = S(n) / n

 

 

Degree of parallelism (Speedup is limited by non-parallel operations):

 

 

S(n) = (n / 1 + (n - 1) * f) < 1 / f

 

f .. amount of non-parallel operations

 

 

I simplified it a bit ... it would take more than 10 minutes to remember all that stuff and correctly translate it into the english language.

Link to comment
Share on other sites

Can you apply does formulas to the 360 or ps3? I didnt understand. :hmm:

 

Ps. I'm obviously retarded.

 

not obviously. I assume he has had more indepth explanations making the equation easier. If he gave an example to show the formula in action it would have been more useful.

 

in its current form its as useful to me as

 

P+Q=R, and thats how you figure out what processor is effectively the most powerful.

Link to comment
Share on other sites

Let me try ... this is not very accurate nor would it show "real life" performance:

 

 

Simplifed problem: You have a digital filter operation (used in digital signal processors)

 

And lets say this operation consists of 4 multiplications and 3 subtractions (those take all the same amount of time) ->

 

First Step: A B C D (4 multiplications)

Second Step: E F (2 subtractions)

Third Step: G (1 subtraction)

 

A perfect machine with,

 

1 CPU needs 7 time units: CPU 1: * * * * - - - (4 multiplications + 3 subtractions = 7 time units)

 

2 CPUs need 4 time units: CPU 1: * * - -

CPU2: * * -

(first cpu needs at least 4 time units and the second cpu is finished after 3 time units)

 

4 CPUs need 3 time units: CPU 1: * - -

CPU 2: * -

CPU 3: *

CPU 4: *

 

* = multiplications

- = subtraction

 

So with 4 CPUs you don't gain much performance compared to only 2 CPUs. This example assumes that first all the multiplications are done before you can do 2 subtractions and if those are finished you can do the last subtraction.

 

Basicly it means if you want to calculate (3-4) * 2 - You first have to do 3-4 and then do the multiplication by 2.

I guess most guys won't understand this but to make it really simple:

 

The speed you gain by multiple CPUs is heavily dependend on the code so the 7+1 SPEs in the Playstation 3 sound pretty good on a piece of paper but thats about it.

Link to comment
Share on other sites

×
×
  • Create New...