New ITAGAKI interview touches on 360 and PS3 comparison

dantruon said:
well the topic of conversation for this thread is Itagaki, so why on earth they talk about Cell and Xenon

Why?You see there a some people who takes every word that comes out from their favourite game developer as though they were revelations.In this case Itagaki commented that he prefered the Xbox 360 because it was less complex than the PS3.That sparked off debates that took each and every component of the 2 consoles that they could think of to argue.Me think this is hidden ******ism among some people.
 
dantruon said:
well the topic of conversation for this thread is Itagaki, so why on earth they talk about Cell and Xenon
Well you know, Cell happens to be the CPU in the PS3, and this Itagaki is talking about how hard PS3 is supposed to be to code for, compared to X360... Do you expect people to discuss the difficulties of coding for PS3 without talking about Cell, and how it compares to Xenon, given that's what the first post was about? :???:
 
The guy should spend more time making good games (or try anyway), than talking about the competition's work. My opinion obviously...
 
london-boy said:
The guy should spend more time making good games (or try anyway), than talking about the competition's work. My opinion obviously...
He is a chatty thing, ain't he! He is kind of creepy IMO. He looks like the cross between a rockstar and grunge star. Obviously from a hardcore gamer perspective DoA seems to fall short of Tekken, SC, etc (and yet is a commercial success). But from the reviews it seems Ninja Guiden is a good game. Maybe he is chatting on DoA dev time :LOL:
 
Acert93 said:
He is a chatty thing, ain't he! He is kind of creepy IMO. He looks like the cross between a rockstar and grunge star. Obviously from a hardcore gamer perspective DoA seems to fall short of Tekken, SC, etc (and yet is a commercial success). But from the reviews it seems Ninja Guiden is a good game. Maybe he is chatting on DoA dev time :LOL:

NG is definately a great game.
I just don't think it's professional to call for press conferences explicitly to talk about the competitor's work. He should stick to what he does. I don't see Bungie calling for conferences "About HL2 and PC gaming". Or Kojima talking about Splinter Cell. They might mention it, if it happens, but they surely don't go all out commenting at great lengths about their competition.
 
london-boy said:
I just don't think it's professional to call for press conferences explicitly to talk about the competitor's work. He should stick to what he does.

Seconded. That's what I don't like about Sony-execs too, and why I think Peter Moore is a nice guy.

Sorry for the OT. :)
 
london-boy said:
NG is definately a great game.
I just don't think it's professional to call for press conferences explicitly to talk about the competitor's work. He should stick to what he does. I don't see Bungie calling for conferences "About HL2 and PC gaming". Or Kojima talking about Splinter Cell. They might mention it, if it happens, but they surely don't go all out commenting at great lengths about their competition.
/signed. The fact is there are really talented people in EVERY industry who are JERKS. Look at the forums. You have the same thing. Some drop dead accurate and intelligent posters who seem to, well... follow the path of Itagaki (or whatever his name is!)

Being a jerk does not change the quality of your product (being a nice guy does not equate to more sales, at least not games) but it does rub wrong.
Seconded. That's what I don't like about Sony-execs too, and why I think Peter Moore is a nice guy.
I would agree, but it does not matter. MS likes it, at least to a degree. It means Sony is taking MS seriously.

I don't even bother mentioning people and positions that are irrelevant. In business you mock your competitor because it gives a sense of, "Ewww there stuff must be really good to be so confident" or it says "Ewww they are afraid of this new product".

Consoles are an industry of hype. So many "middle of the road" games have done really well because of style, market position, advertising, and because gamers did not know better. The key is creating a perception and then fulfilling it.

It is a business, one that is very serious in dollars (huge stakes), but is also the same industry closely tied with the lame game magazines. That is changing as the industry matures and the audiance expands and becomes older, but due to the nature of the industry you will get unprofessional stuff--only because it appeals to their audiance.

Gen X does not want to hear, "Yeah, they have a nice product to, but here is how we are different" but instead they feed on, "They are the suxor version 2! Not even version 2, but suxors version 1.5! My grandma could do better!111"
 
Acert93 said:
He is a chatty thing, ain't he! He is kind of creepy IMO. He looks like the cross between a rockstar and grunge star. Obviously from a hardcore gamer perspective DoA seems to fall short of Tekken, SC, etc (and yet is a commercial success). But from the reviews it seems Ninja Guiden is a good game. Maybe he is chatting on DoA dev time :LOL:
He's batshit insane. Not only dresses like a rock star, but acts like one, and one on drugs at that. But his studio makes top notch games.

As for DOA falling short of Tekken: No way. SC - maybe and Virtua Fighter - maybe.

Cheers
Gubbi
 
As for DOA falling short of Tekken: No way. SC - maybe and Virtua Fighter - maybe.

I guess taste has a lot to do with that. So it's almost pointless to discuss that. It's undeniable that Tekken5 has been given much higher scores than any DOA ever made, by pretty much every website on the net, for many different reasons. Same for SC and VF really.
But if you don't like Tekken, that's another story.
 
darkblu said:
"overlapping address spaces with potential context violations
If you want you can seperate the address spaces with the MMU, then you have things called processes. ;) On console platforms, they're not generally used, but all modern OSes on SMP architectures support that abstraction if you want.

everything ever touched by more than one thread should be thread safe or you should be absolutely sure what you're doing
This is true of SPEs too. I'm still not clear how a DMA properly synchronizes SPE execution to the PPE. If the PPE wants a job executed, how does it signal to the SPE it wants the job to be done? If the SPE is already busy, how does the PPE add it to the SPE's job queue? How does it get a signal back from the SPE that the job is complete? How does it know where to collect the results from?

All of these operations require two threads to touch some sort of data structure, hence there has to be some sort of locking protecting those data structures, right?

actually, the part after the AND above is totally superfluous.
Consider the case in which you have 3 threads and 1 CPU.

The high priority thread is waiting on a resource held by the low priority thread. There is a medium priority thread consuming all cycles on CPU0. Every timeslice, the OS will examine the ready to run threads, notice that the medium priority thread is ready to run, and dispatch it. Because the low priority thread is never given a timeslice, it will continue to hold the lock, blocking the high priority thread from ever completing.

This is the priority inversion problem.

(Most OSes do some sort of priority inversion detection and/or boost the priority of CPU starved threads to help reduce the impact of priority inversion.)

Now consider the case in which you have 3 threads and 2 CPUs.

The high priority thread is waiting on a resource held by the low priority thread. There is a medium priority thread consuming all cycles on CPU0. Every timeslice, the OS will examine the ready to run threads, notice that the medium priority thread is ready to run, and dispatch it onto CPU0. Then it will see that the low priority thread is ready to run, and dispatch it onto CPU1. Because the low priority thread is given a timeslice, it will run, and will eventually release the lock, unblocking the high priority thread.

There is NO priority inversion problem in this case.

Now consider the case in which you have 3 threads and 3 CPUs.

The thread running on CPU0 is blocked waiting on a resource held by the thread on CPU2. There is a thread consuming all cycles on CPU1. The thread on CPU2 will still execute to completion and release the lock, thus allowing the thread on CPU0 acquire the resources and continue.

There is NO priority inversion problem in this case.

If you have exactly 6 threads assigned to 6 hardware contexts which are executing concurrently, you will never get a priority inversion problem -- a thread that holds a resource will continue to execute until it releases the resource, allowing the other thread to acquire the resource. There is no starvation precisely because the OS scheduler is not involved and there is no prioritization of threads going on, they're all running concurrently.

sorry, i missed that - why? you have N threads for the high performance parts (N = num hw threads) and an arbitrary number of other 'non-high performance' threads - and you get software threading, just not among the high-performance threads, supposedly.
It's stupid to blow 1000s of cycles on a software context switch for a high performance thread. For high performance threads you want to dedicate a hardware thread to it. For low performance threads, just pack them all onto one hardware thread to avoid scheduling them with your high performance threads and messing them up.

You can create 5 threads, then use SetThreadAffinityMask() to lock them to the 5 hardware threads that the system provides. From then on, those 5 threads will always execute on those 5 hardware threads and the system will never move them to other cores or cause them to preempt each other in software. Then you create all your low performance threads, lock them to the remaining hardware thread, and those get software threaded automatically by the OS scheduler.

You can vary this ratio or arrangement however you like. You can create 3 threads and lock them to the 3 cores and not use SMT or software scheduled threads at all. 4 threads, two on one, and one each on the remaining. Or 10 threads, 5 on the hardware threads, and the remaining 5 software scheduled on the last hardware thread. You have the flexibility to set it up however you want.

after the slight corretions above i don't see why anynmore.
not only thread (N) can starve (N - Y) on a scheduling basis, but also (N - Y) can be running and still its SMT 'roomate' can trash the former's cache so badly, that you get a brand new form of 'priority inversion' - one where (N + X) cannot run because a thread of arbitrary low priority (even lower than N - Y) to which the former has no contention relations whatsoever is cache-bulling (N + X)'s lock-keeper (N - Y).

Regarding cache line evictions, remember, going out to main memory is going to cost 100s of CPU cycles. So the first cache eviction that thread A hits will cause it to block, and allow B to execute -- remember it will be 100s of CPU cycles before the data comes back from memory and actually kicks out the cache line that B needs -- even if it does, which isn't likely -- because the cache will probably choose a colder cache line to evict than the one that B just spent a hundred CPU cycles working with.

In any case, cache eviction is a performance issue, not a correctness issue. You don't have to worry about this when you're just trying to get your multithreaded code to work -- it will run just fine, but slowly.

You can always go back later and clean it up and optimize it and rearrange your data structures, add the prefetching, and cache locking and whatever, whereas with stuff like DMAs and LS and asymmetric threads, you have to be upfront and all of it has to be right and working before your program can start doing any useful work.
 
Last edited by a moderator:
Shifty Geezer said:
Which is why I guess no-one writes in assembler anymore, and there's no need to anyway except on tiny little code snippets!
:| But that's what I originally said... and the way you determine when to write these code snippets is through some performance-profiled directed effort. The rest of the time you want the system and coding to be as easy to use as possible.

.Sis
 
Gubbi said:
He's batshit insane. Not only dresses like a rock star, but acts like one, and one on drugs at that. But his studio makes top notch games.

As for DOA falling short of Tekken: No way. SC - maybe and Virtua Fighter - maybe.

Cheers
Gubbi
Wow. When did this turn into a character assassination thread? Maybe I missed a report or something. Do you have links to back up this claim of drug use?

Itagaki's arrogance has, to me, always come across as an act. He seems to enjoy having fun in interviews.

.Sis
 
Sis said:
Wow. When did this turn into a character assassination thread? Maybe I missed a report or something. Do you have links to back up this claim of drug use?

Itagaki's arrogance has, to me, always come across as an act. He seems to enjoy having fun in interviews.

.Sis

He said he looks and acts like a rockstar on drugs, not that the guy's taking drugs!!
 
london-boy said:
He said he looks and acts like a rockstar on drugs, not that the guy's taking drugs!!
:LOL: My bad, Gubbi! I need to parse the grammar a little better, me thinks.

.Sis
 
Sis said:
Wow. When did this turn into a character assassination thread? Maybe I missed a report or something. Do you have links to back up this claim of drug use?
Gubbi said he looks and acts like a rock star on drugs--not that he used drugs.

While not flattering comments, I must say when i saw him he looked like a low class rock star. Growing up in the Seattle area during the "Grunge Scene" (although I have never been one much for music at all) the way he dresses does remind me of the rock stars strung out on heroine. It may all be an act as he tries to portray himself as a rockstar (which is his goal as I have heard) but he does look, well, like a rockstar (and many of those are big druggies).

He is eccentric. Gubbi is just commenting on that. And I must say the look he is aiming for made me think of the same thing. But I think we all know just because you LOOK a part does not mean it is so. Thee are typical Joes who are big crack users and there are rock stars who are all organic and would never think of drug use. But there is a stigma due to the popularity of certain things in different circles.
 
Sis said:
:| But that's what I originally said... and the way you determine when to write these code snippets is through some performance-profiled directed effort. The rest of the time you want the system and coding to be as easy to use as possible.

.Sis
The topic of assembler only came up in reference to Cell SPE programming and low-level data management. You don't NEED to write in assembler for the low-level data management of Cell though. You can write in C/C++. And maybe other languages would be well suited to SPEs, like Forth?
 
To be fair, it seems as if folks are seeking out TI. He's not calling them like "Hey 1UP! Do I have a story for you!" :???:

Good info in this thread. Learned alot.
 
Shifty Geezer said:
The topic of assembler only came up in reference to Cell SPE programming and low-level data management. You don't NEED to write in assembler for the low-level data management of Cell though. You can write in C/C++. And maybe other languages would be well suited to SPEs, like Forth?

Forth would probably be a particular bad choice since it centers around a stack. False dependencies on the TOS would choke the in-order cores of next-gen consoles.

C/C++ is as good as any other IMO. Maybe with some CSP instrinsics (or a good class library).

Cheers
Gubbi
 
Back
Top