5
\$\begingroup\$

I don't have the cash to stump up for a PS3 or 360 devkit, but the G3, G4 and G5 macs are running with PowerPC chips, which I believe is virtually the same architecture as the 360, and only missing the SPUs from the PS3, so I would like to know which Macs would be good for profiling code with.

I'm after a machine that would give me equivalent timings (not actual timings, but scale the same given difference code) so I'm looking for ones that have about the same cache size and memory bandwidth ratios as the consoles. Are there any specific Macs that have these traits?

The reason I need one is that I'm developing a new programming language for games development that specifically targets the current and potential future of console hardware. One aspect of this is the in-order microcode expanding risc chips at the core of both the 360 and the PS3, and probably the next generation too, which is why I want a PPC based mac, as I'd heard that places like where I work used to use Macs as pretend 360 devkits until the hardware design was in a fit state to send out prototype 360s.

At a later date, I'll want to get my hands on an FPGA (as that's the only other route I can see consoles heading any time soon), and a cluster (as they are good practice for ensuring your task scheduling and separation are up to scratch), but for now I just need to know if there is a sweetspot machine that had very similar specs to the current consoles' CPU and memory bandwidth.

\$\endgroup\$
4
  • \$\begingroup\$ Since you apparently know about the cache size, memory bandwidth, proc speed etc., maybe if you post those details people can simply give you the information you need... \$\endgroup\$
    – Engineer
    Aug 5, 2011 at 16:36
  • 11
    \$\begingroup\$ "What's a good alternative to buying a console devkit?" Getting someone else to buy one for you, obviously. \$\endgroup\$
    – thedaian
    Aug 5, 2011 at 16:45
  • \$\begingroup\$ The G5's were very much 'pretend' in so much that they had a completely different performance profile from the final kits (in both the CPU, GPU and other components). What they did offer was a familiarity with PPC which was new for developers and also a platform to start working with that was simpler for them to transition from. You couldn't make any assumptions from those first kits on what was going to be possible, all you had was a spec on paper of what it was going to be. You're bio says you work at Rockstar, surely you can get access to this hardware there? \$\endgroup\$ Aug 5, 2011 at 23:02
  • 1
    \$\begingroup\$ access for work related stuff, but not my own personal research into new languages or techniques (my opinions and comments are not those of Rockstar and should not be taken as anything other than personal statements) \$\endgroup\$ Aug 6, 2011 at 7:19

5 Answers 5

11
\$\begingroup\$

If you want to develop native games for 360/PS3, there is no alternative to getting a Devkit.

Consoles are more than just a CPU. It's graphics card, OS, memory, File-System, SDKs and a lot more. If your idea is to port later, thats not gonna work as easy as getting a more less similar machine in terms of its specs. The entire environment is different to a normal PC/Mac, not to mention the certification process (TRC/TCR) by Sony/Microsoft before you can actually release your game. You should be aware of the certification requirements before writing too much code.

If your plan is to develop for consoles, focus on them right from the beginning. But most likely you won't get Devkits, its not as simple as just ordering them. So the whole getting-a-similar-system-idea renders useless from different angles.

\$\endgroup\$
3
\$\begingroup\$

In order to get on the Xbox you can start out making a PC game using XNA, and if it's good it shouldn't be a big problem to get the right permissions so that you can port it to Xbox 360. If you are on the "a dev kit is probably too expensive" stage, don't even bother considering the PlayStation 3 a potential target platform.

\$\endgroup\$
2
\$\begingroup\$

In addition to what Maik said, you'll struggle to find something with the same performance profile as the Xbox 360 CPU. From the public version of the hardware spec on Wikipedia (as the XDK stuff is under NDA) you can see that the CPU is "in-order" execution where most if not all "desktop" CPU's. This one big difference can make a massive difference to the performance profile of the CPU alone, let alone the way all the different systems are hooked together. It completely changes the way the code needs to be optimised because of the way any stalls now affect the speed the CPU executes code. The CPU also includes custom logic for performing vector operations you won't find elsewhere.

It's also not as simple as just "having enough money" to buy a devkit. You'll also need to show MS you have a decent enough concept and also probably more discussion before they'd let you licence one.

\$\endgroup\$
5
  • 1
    \$\begingroup\$ I was always curious why is it such a big process to get a dev kit for the AAA consoles. I mean what is their motive? Wouldn't they only benefit from having loads of programmers fiddling with developing for their consoles? Indie teams have produced quite a few gems for the PC... \$\endgroup\$ Aug 5, 2011 at 19:46
  • 1
    \$\begingroup\$ @Zaky: It's to stop people from being able to emulate the environment, I believe- a form of vendor lock-in. \$\endgroup\$
    – DeadMG
    Aug 5, 2011 at 19:56
  • 1
    \$\begingroup\$ @Roger: Concept approval is basically gone from the "get dev kits" stage at this point. (Except maybe for Nintendo?) Companies are more than happy to lease you expensive hardware for an indeterminate time, as long as you're not actually releasing / talking about games. \$\endgroup\$
    – user744
    Aug 5, 2011 at 20:05
  • 1
    \$\begingroup\$ @Zaky: In addition to what DeadMG said (and the anti-reverse engineering statement it implied), I expect companies also want to prevent the flood of horrible third party games that helped cause the industry crash in the 1980s. Take a look at XBLIG if you want to see what loads of programmers fiddling with development would produce (hint, it's... mostly not very good) (there are exceptions, of course). The main reason is likely to prevent reverse engineering and piracy, though. \$\endgroup\$
    – thedaian
    Aug 5, 2011 at 20:32
  • \$\begingroup\$ @thedaian yeah but why do they care that so many low quality games are hanging around the internet? It doesn't bother me abit as a PC player. The big, or good games are still covered by the media and everyone buys them. From having people play with the development environments eventually more knowledge about solving problems is found in places such as stackexchange and blogs, the high quality titles benefit with faster development, and more good titles are released for the platform. I understand the fear from emulation though... \$\endgroup\$ Aug 6, 2011 at 13:14
0
\$\begingroup\$

MS offers its development stack for the 360 (XNA Game Studio, Expression Blend) for free. And they also offer a pretty cheap entrace to market via Xbox live

\$\endgroup\$
0
\$\begingroup\$

There is no alternative to actually organising the tests and then running them on final hardware. A Mac has

"a completely different performance profile from the final kits (in both the CPU, GPU and other components)"

So, I should just work on the project until such time as I can get access to the hardware then submit a set of tests and get profiles back and iterate like that until I'm happy with the state of the project.

Please vote to close as this question is too limited in use to anyone.

\$\endgroup\$
4
  • 1
    \$\begingroup\$ That is not really a reason to close the question, just select an answer and it will be sorta closed. \$\endgroup\$ Aug 6, 2011 at 9:14
  • \$\begingroup\$ Whether that approach will work or not completely depends on the kind of tests you have in mind. If by tests you mean a 100 line code testing floating point vectorization or something similar basic PPU/CPU stuff, then yes, this will easily work. Even a little bigger might work if you find appropriate abstractions for the main differences like graphics-pipeline, filesystem, memory-management, SPUs etc. \$\endgroup\$ Aug 6, 2011 at 9:29
  • \$\begingroup\$ But then again you will test code developed on a completely different machine, each abstraction caused by the cross development will actually slow down everything and invalidate the actual results. The outcome might be very different if you had developed it on your target machine. For instance finding an appropriate abstraction level for the SPUs is very hard if you don't actually have access to the Sony SDK and hardware, and no such simulation will give you proper results in terms of its real performance. \$\endgroup\$ Aug 6, 2011 at 9:29
  • \$\begingroup\$ You can however use the free Cell-Simulator but that will tell you nothing about it's performance on the PS3 and neither anything about Sony's SPU integration (SDKs are very different) and how it works with the other components. So the question is what kind of tests you have in mind? \$\endgroup\$ Aug 6, 2011 at 9:30

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .