Not logged in, Join Here! or Log In Below:  
 
News Articles Search    
 

 Home / General Programming / Physics processing in hardware add-on card. Account Manager
 
Archive Notice: This thread is old and no longer active. It is here for reference purposes. This thread was created on an older version of the flipcode forums, before the site closed in 2005. Please keep that in mind as you view this thread, as many of the topics and opinions may be outdated.
 
 
Victor Widell

March 08, 2005, 07:57 PM

Wonder when we will se the first raytracer running on a PPU...

 
ReaperUnreal

March 08, 2005, 09:55 PM

That's just freaking aweseome! I can't wait to get my hands on one of those. The article in itself is very interesting, and I think that the industry analysts have hit the nail on the head. If it takes off, then games will become totally awesome, really quickly.

Seriously though, where's my raytracing hardware? I'm tired of this rasterization stuff, I want raytracing!

 
Tim Auld

March 08, 2005, 09:57 PM

Just what PC developers need. More hardware to support.

I'm glad that there were a few sceptical developers interviewed for that article. The fact is that it will be very difficult for such a stand alone board to make a critical penetration into the market. Hardcore gamers may back it, but it will be a hard-sell to your average joe gamer. Developers who take the plunge take on a huge risk of spending more on development, and get less in return due to the limited market. They don't even give a hint as to how this PPU will accelerate physics. Sure, it's a standalone processor, but multi-core CPUs are coming along, will have benefits besides physics, and won't require nearly as specialised programming.

Even if it does provide such technical advantages as they suggest, that won't make a great game. The mass market wants to be entertained - they don't look at how realistic the physics are when they pick up the box. They buy a game because the content is something they like. The Sims wasn't on the best sellers list for 5 years because it used amazing technology. The game industry wants to specialise and perfect itself into a corner, because it consists of a bunch of tech loving geeks who want to try out the latest gadget. That's at odds with the rest of the world.

Another problem is that every physics library I've heard of being used seriously has had to undergo heavy customisation and tweaking to provide the desired result. The out-of-box implementation just wasn't right. That will complicate the abstraction they're aiming to achieve.

Read this article for a novel viewpoint on the current tech obsessed plight of developers:
http://www.gamasutra.com/features/20041229/kelly_01.shtml

 
Simon Jacoby

March 09, 2005, 01:42 AM

I'm wondering how it's gonna work in practice. They keep comparing it to a GPU, but there's one fundamental difference between the GPU and PPU: Read-back.

They say they have a PCI express and standard PCI version of the card, and that it has 128 MB of local RAM. I assume that you load collision geometry into the memory, then apply forces and the card does the rest. Then comes the snafu: when the simulation is complete, you have to read back the result to be able to use it. How fast is it going to be to read back orientation matrices for 50000 bones over a PCI bus?

Any thoughts?

Cheers,
Simon

 
John Schultz

March 09, 2005, 01:47 AM

If their PPU provides the same level of acceleration for physics that a GPU provides for graphics, it will be an interesting product. Multicore CPU's won't be able to match the performance. Whereas a multicore CPU can provide 2-4x speed up, a PPU with 100x speed up would be interesting. Developers using Novodex physics can turn on more features when a PPU is present (and still run on standard hardware with less features). This would require the same type of work required to support various GPU’s (not an issue for larger developers).

It will be good to see benchmarks between Novodex running on a CPU vs. running on their PPU. For example, my current physics engine can run hundreds of objects in real time for certain scenarios (all permanently active, not sleeping). An impressive demo for Novodex would be hundreds of objects active in the same manner, and tens of thousands of objects active running on a PPU, with a matching frame rate.

The next generation consoles are going to be very powerful, with multiple processors. This PPU concept will help PC’s to compete with consoles. If they can produce the hardware with the stated level of performance, there will be a market for it. Examine their team members, including their board of directors (such as Ed Fries, former head of Microsoft Game Studios).

http://www.ageia.com/about_exec.html
http://www.ageia.com/about_board.html

I worked with an amazing team circa 1998 that was to produce very advanced graphics hardware (Raycer Graphics). Despite an excellent team and strong VC funding, the product never shipped. Seeing real hardware and benchmarks for an operational PPU would provide an idea as to how well the product might perform in the market.

Ultimately, gameplay sells games. However, the top games typically have cutting edge tech as well. As a developer, I would not mind using a standard API for physics in much the same was as OpenGL/DX is used for graphics. There was a time when we all wrote our own low-level graphics engines… Hopefully the PPU hardware is modularized in such a way as to support alternate physics engines/methods in case different behavior+functionality is desired.


Edit: it appears they are showing their hardware at GDC (now)...

 
John Schultz

March 09, 2005, 01:54 AM


Simon Jacoby wrote: I'm wondering how it's gonna work in practice. They keep comparing it to a GPU, but there's one fundamental difference between the GPU and PPU: Read-back. They say they have a PCI express and standard PCI version of the card, and that it has 128 MB of local RAM. I assume that you load collision geometry into the memory, then apply forces and the card does the rest. Then comes the snafu: when the simulation is complete, you have to read back the result to be able to use it. How fast is it going to be to read back orientation matrices for 50000 bones over a PCI bus? Any thoughts? Cheers, Simon


Perhaps they're planning on the future with PCI Express x16, with 4GB/s bandwidth.

 
Victor Widell

March 09, 2005, 04:44 AM



John Schultz wrote: Developers using Novodex physics can turn on more features when a PPU is present (and still run on standard hardware with less features).



That would mean the physics is not relevant to the game, but is just some more eyecandy. Boring.

 
tazoman

March 09, 2005, 05:39 PM

Unfortunately this is hopeless. In a couple of years most of the CPUs will be dual core anyway. Then,
PPU = multithreading + a physics engine(ode, karma, havok, novodex, meqon, newton, ... )

who's gonna pay for a ppu then?

 
theAntiELVIS

March 10, 2005, 12:06 AM

It will work if it's bundled into the graphics card, or motherboard, or in some other way is part of the existing hardware paradigm. Otherwise it's just going to be something the hardcore buy, and developers will have to provide the "want to use this EXTRA feature?" choice in the engine options. And that means it will never be pervasive.

The vast majority of users just aren't going to shell-out for another card, and especially one that isn't immediately graspable as a benefit the way graphics cards are. But I can see ATI or Nvidia jumping on this and integrating it, WHEN it's cost effective to do so. Until then maybe they would offer a high-end enthusiast's card at a premium price.

Still, if a way of MARKETING it can be found, it would be a huge revolution in gaming.

But what a nightmare - another driver set to constantly keep updated!

 
theAntiELVIS

March 10, 2005, 12:09 AM

Ah, Microsoft will find a way to make an OS that will eat that extra power, just like they always do. As CPUs become more powerful and efficient, OSs become more bloated and inefficient.

 
nih_co

March 10, 2005, 01:14 AM

Even with more cpu horespower, we'll still be limited to basic floating point operations. So intense physics calculations will still take a lot of cycles. I have no idea what kind of clock speed this card has, but Imagine harware that supports full-on matrix operations, sphereical interpolation, whatever... that's instant calculations of something that would take hundreds of commands on a cpu.

They say "it can take the current limit of 30-40 bodies of today's high-end CPUs to a maximum of 40,000", and I believe that. Simon does raise an interesting point about the bus rate. But try and imagine a scene with 40,000 bodies on screen. Modern graphics hardware can't handle that. Take a step back and you'll see that there are ways to utilize this many bodies without drawing or needing to know specifics at all times. Deformable architecture anywhere in a world caused by random events, modeling individual rocks and shrapnel from exposions, fast accurate fluid dynamics... Screw scripting and spawning actors, you have thousands of them move about consistantly even if a player never sees them. Wonder if we'll see an AI card ;)

I personally think that this will catch on. Unless the new multicore or the magical cell processors have hardware capable of these kinds of operations (maybe?), then the ppu will defintely have a place in pc's and/or consoles.

the prospect of a ppu integrated into a gpu is also very promising since the feedback from a ppu will be used primarily. Another All-In-Wonder line would be nifty. But at that point, wtf is the cpu doing?

Just my thoughts.

 
Danny Chapman

March 10, 2005, 02:45 AM

nih_co wrote: They say "it can take the current limit of 30-40 bodies of today's high-end CPUs to a maximum of 40,000"


The lower number is a massive exaggeration - Novodex's own demos will run thousands of _active_ objects in real-time in this (high-end) CPU. Even accounting for the fact that a game will want a lower physics hit than a physics demo, a game written for a high-end PC should be able to handle hundreds of active objects, and thousands of objects in your immediate environment.

So if the lower number is an exaggeration, maybe the upper one is too.

The reason why the number 30-40 is there is because when physics is a core part of gameplay it has to run the same on the lowest spec machine as on the highest. The same argument will be there when PPUs become available (and optional).

I think physics libraries (e.g. Novodex) designed for generic multi-core/CPU systems will be much more useful and valid across a wide range of platforms than a single piece of dedicated hardware...

 
cppkid

March 13, 2005, 04:24 PM

Novodex physics looks very good and multiprocessor support is forward looking since it will be required for future platforms. However, the physics chip just is a solution looking for a problem. Physics isn't really a big problem for high spec processors of today and certainly won't be a problem for the multi-core processors of tomorow. Look at sound cards with built in 3D sound capabilities - these are made irrelevant by the fact that the CPU cost of doing the computations is negligable.

I really hope from both a developer point of view and a consumer point of view that this disappears without a trace.

 
Moe

March 13, 2005, 04:56 PM

“Physics isn't really a big problem for high spec processors of today.”

I wouldn’t say that if I consider real time shattering, soft-bodies or fluids. Still, I think the way to go would be less specification in hardware and more towards SIMD.

Ray tracing on the PPU might be fun though since NovodeX already provides ray object intersection :)

 
Nils Pipenbrinck

March 13, 2005, 05:56 PM

Moe wrote: “Physics isn't really a big problem for high spec processors of today.” I wouldn’t say that if I consider real time shattering, soft-bodies or fluids. Still, I think the way to go would be less specification in hardware and more towards SIMD.


Physics is not the problem on the high end machines. The slow machines are the problems if the physics is a game relevant element.

Can you give the average gamer joe on his 1.5Ghz machine the same experience as the hardcore gamer with his brand new machine? I doubt so. Heck we even have to support 4 year old non pixelshader cards because there is still a huge market for them.

All these nice things that we *could* calculate and do are just eyecandies, and therefore it's not important if they are calculated correctly. If they look cool that's enough, no need for precision and interaction. That's the only way to have scalable physics. Sad but true.

If you put *very* cpu intense physics into a game, so intense that am external copro would make sense you're writing a game for hardcore gamers only. I doubt that such a game will ever become the next blockbuster (I don't accept quake 3 as a counter-argument, the guys at ID, and a couple of others can do what they want and their games still sell like sliced bread).

Ray tracing on the PPU might be fun though since NovodeX already provides ray object intersection :)[/i]


Well, I doubt that the chip does anything more complicated than solving huge sparse linear equation systems. That's what eating the CPU time in physics calculation.

Multipliers are and FPGA's are cheap these days. Just throw 512 or more multipliers on a board, add some glue-logic and interface and you're done (Spartan III anyone)?






 
John Schultz

March 13, 2005, 11:11 PM

Just checked out the Novodex Rocket demos - comments:

(The Novodex engine in the Rocket demo was not multithreaded).

Pro: Very fast, on the Big Bang demo with ~17,000 boxes, ran ~1FPS (once most boxes were active), with 30Hz considered real-time for ~567 active (real-time) boxes (P4 3.2GHz, 1GB RAM). This is impressive as the boxes are all in very close proximity.
Con: Used ~447MB of RAM.

Pro: supports many different object shapes (convex hulls through general meshes).
Pro: supports many different constraints, including mixing with pre-defined motion.
Con: the high-angular velocity precession demo did not precess (very slight effect before objects fell over and stopped).
Con: the motion appears highly-damped; most objects appear to be made of cardboard (when light) and cardboard filled with sand when heavy. This engine appears to be optimization-based. Hopefully their PPU hardware can additionally run other physics methods.
Pro: the creature/ragdoll demos show future gameplay potential.

If their PPU can run the Big Bang Demo 100x faster than a 3.2 P4, it will make a compelling demo. A more game-oriented demo would be running through a crowd of Orcs, etc., from LOTR, with every creature physically interacting with the environment (just like in the movies (and current games), this can be faked without all creatures needing to be physically active, though). Anyone see their PPU demo at GDC?

Whether or not the PPU makes it in the market, it's good to see interest in physics for interactive entertainment picking up.

 
Daggett

April 02, 2005, 11:55 PM

I love the idea of this card. I can see how the 'average' user would be hesitant to buy an extra card for say $100. But, HL2 has shown us that making an environment more physically based can lead to a more engaging world. With the 100x extra processing power, imagine what would be possible... you could blow up buildings brick by brick at 60fps if you wanted to, and I think that would be worth the money.

I'm also a real sim lover, the more realistic it is, the better it is in my book. And this card will give more pure physics power to developers like West racing and FIRST racing to make even more stunningly accurate simulations.

 
theAntiELVIS

April 03, 2005, 01:16 AM

This is why this may be pointless: the first application people can think of is blowing stuff up. LOL.

 
Danny Chapman

April 03, 2005, 05:45 AM

It's hard to imagine that a (PC) game would be sold with the minimum specs requiring a separate physics card, or even a CPU/system that is faster than say 50% of whatever the current high-end standard is. So all the core gameplay would need to run on this minimum spec machine. Consequently, I imagine that the main use for this is to offload "eye-candy physics" - e.g. particle effects, non-interactive water/smoke etc - all those things that can either be ommitted or faked, so I don't see this as really doing anything for getting more physics into gameplay.

If they manage to get the card into a console, things might be different, since then developers could rely on the PPU being there. However I don't expect it will be there in the XBox2/PS3. So physics hardware improvements will come through more generic use of multiprocessor/core system, which is more interesting anyway in my opinion.

This is one reason why comparisons with GPUs are not really relevant. Visual stuff can generally be varied much more without affecting gameplay than physics, especially when the interesting physics is linked closely to gameplay.

Having said that - eye-candy physics is still fun, and not to be sniffed at :)

 
Daggett

April 07, 2005, 11:00 AM

Pointless, perhaps... But fun, heck yes!

 
This thread contains 21 messages.
 
 
Hosting by Solid Eight Studios, maker of PhotoTangler Collage Maker.