Sorry your browser is not supported!

You are using an outdated browser that does not support modern web technologies, in order to use this site please update to a new browser.

Browsers supported include Chrome, FireFox, Safari, Opera, Internet Explorer 10+ or Microsoft Edge.

Geek Culture / physics processing unit (ppu)

Author
Message
TKF15H
21
Years of Service
User Offline
Joined: 20th Jul 2003
Location: Rio de Janeiro
Posted: 13th May 2005 09:35
Quote: " People said the same thing about GPUs. And like all the GPU nay-sayers, you will be proved wrong too."

Probably not. If you have a dual-core PC you should be able to get the same results (if not better) as a PPU (in theory of course, as the only PPU I've seen is the Picture Processing Unit in my ole Nintendo).
The reason for this is that it depends on the OS's use of the second core. If the OS were to sit on one processor, and run most of the game on the second, you could do anything a PPU supposedly does and probably do it better.
GPUs have a reason to be faster than CPUs. They run with their own (probably faster) RAM, and are more intimate with the hardware they control (no bus). The PPU has no such advantage, and is therefore the same as having a separate processor just for physics.


If you didn't want to read all I just said, here's a simplified version:
I agree with Mouse.

billy the kid
19
Years of Service
User Offline
Joined: 7th Dec 2004
Location:
Posted: 13th May 2005 09:54 Edited at: 13th May 2005 09:55
Ok, Ill give you an example of something a CPU (even dual-core) can not currently do in realtime that a PPU should be able to and the one that just came out claims it can. That is hair simulation.

Currently, no one really can simulate hair in a completely accurate manner. The math simply does not exist yet. However they do have algorithms that do hair simulation in a realistic manner. The best implementation of hair Ive seen was actually in The Incredibles. But even their method wasnt realtime, it was almost realtime but not quite. So anyway realistic hair simulation can not be implemented in a game currently.

However these algorithms that do a good job of simulating hair are close to realtime. And since these are all software implementations, a hardware implementation would speed everything up a lot. So with the PPU it will be feasible to do realistic hair simulation in realtime, and also do it fast enough for a AAA game where the resources are shared between AI, graphics, physics, user input, etc.

Realistic hair will probably be one of the first cool tech things to get into games because of the PPU.
Ian T
22
Years of Service
User Offline
Joined: 12th Sep 2002
Location: Around
Posted: 13th May 2005 10:04 Edited at: 13th May 2005 10:04
I'm sorry, either I completely misread that or you don't know what you're talking about, though I won't venture which as we've miscommunicated before. You're differentiating between hair simulations on a CPU as 'software' and on a PPU being 'hardware'-- running an algorithm through the two processors is the exact same thing, and whether it's a very complex one requiring extensive calculation that's not feasible for realtime or a fast one that can be used in games makes no difference. Unless there is some specialized mathematical operation which you can name that would be built into the PPU but not built into future CPUs, there will be, as previously stated, no speed difference between running it on the PPU and simply a seperate CPU of equivilant speed.

It's just a fancy name for a secondary processor!

"Grif, if there's one thing I've learned working with you, it's there there's always a margin for error."
"It's pronounced margarine, dumbass!"
Benjamin
22
Years of Service
User Offline
Joined: 24th Nov 2002
Location: France
Posted: 13th May 2005 10:12
Quote: "Unless there is some specialized mathematical operation which you can name that would be built into the PPU"

I'm sure he means that.


"Lets migrate like bricks" - Me
billy the kid
19
Years of Service
User Offline
Joined: 7th Dec 2004
Location:
Posted: 13th May 2005 10:21
Quote: "Okay, but can you think of even one equivilant to onboard AS, FSAA, T&L, etc for a physics processor?"


Well thats like comparing apples to oranges but Ill try.

AS - Uhh whats this one?

FSAA - Well since this is a global operation on the entire scene, Ill give you something else thats global no matter what physics you are doing: collision detection.

T&L - You got me on this one other than these are common operations that are very expensive. And triangle-accurate collision detection fits into that.

Im sure PPUs will have all sorts of fancy features with acronyms to go with them that really have no equivalent in GPUs.
billy the kid
19
Years of Service
User Offline
Joined: 7th Dec 2004
Location:
Posted: 13th May 2005 10:31 Edited at: 13th May 2005 11:05
Ok clarification for Mouse:

When someone says "software implementation", they mean there is no specialized hardware for whatever is being implemented. So lets take a graphics effect: bumpmapping. If I said I wrote a software implementation of bumpmapping, that simply means I wrote some really crazy code in C++ that does bumpmapping that purely runs on the CPU. It does not use any specialized hardware like a GPU. That make sense?

In terms of the PPU, there will be or already is specialized hardware for hair simulation, cloth simulation, and lots of other very expensive operations.

And no, using a secondary CPU purely for physics will not be as fast as a PPU which has specialized hardware for physics calculations.

EDIT:
A shader is an example of a pseudo-hardware implementation of some graphics effect. It is a software implementation that utilizes several specialized hardware instructions. So its kinda both software and hardware. So I imagine there will be something equivalent to HLSL for the PPU eventually. And so stuff like hair simulation may not be a true hardware implementation but the implementation will be more like a shader where specialized instructions accelerate the hair simulation but you use software to actually program it.

EDIT 2:
This may answer some of the questions for you, Mouse and others. Unfortunately there doesnt seem to be much info about the specifics of the hardware itself like the specialized instructions. I bet there are probably some academic papers but I hate searching through those. Anyway here is an interview with the AGEIA people: http://interviews.teamxbox.com/xbox/1117/AGEIA-Technologies-Interview/p1
TKF15H
21
Years of Service
User Offline
Joined: 20th Jul 2003
Location: Rio de Janeiro
Posted: 13th May 2005 11:12
Quote: "And no, using a secondary CPU purely for physics will not be as fast as a PPU which has specialized hardware for physics calculations."

I still haven't seen you give a good reason to say so.
If collision were to be implemented on the PPU, it'd need the vertex data for all the meshes, right? Therefore it'll need to have a RAM for storing this data, meaning it will most likely share the system's RAM (which is slow, and might actually slow down the main processor's memory access, AFAIK). The only advantage the PPU would have over a general purpose processor is that it would have these "specialized" instructions (that I have no idea of). These instructions will have little value anyway, as the only advantage they'd bring is reducing memory access by having a single opcode to do in one step what an x86 would do in a few steps.
Since it will have to have access to the mesh data and other things, I think it'd make more sense if the PPU were to be located on the video card sharing its RAM rather than the system's.
A general purpose core can run 5 mips today (not sure, is that right?) which is a WHOLE LOT of instructions. If you quit wasting all that on the OS, drivers, and random code you should have far more speed than necessary for simulating the hair on a yetti.

billy the kid
19
Years of Service
User Offline
Joined: 7th Dec 2004
Location:
Posted: 13th May 2005 11:32 Edited at: 13th May 2005 11:54
Quote: "The only advantage the PPU would have over a general purpose processor is that it would have these "specialized" instructions (that I have no idea of). These instructions will have little value anyway, as the only advantage they'd bring is reducing memory access by having a single opcode to do in one step what an x86 would do in a few steps."


You just articulated support of my argument without knowing it. Only doing 1 step as opposed to 5 steps is amazing savings especially if say this particular operations needs to be done 100,000 times which is definitely conceivable. This is basically all GPUs do too.

Quote: "Since it will have to have access to the mesh data and other things, I think it'd make more sense if the PPU were to be located on the video card sharing its RAM rather than the system's."


I definitely agree with that. Both ATI and Nvidia have the ability to incorporate physics into their chips.

Quote: "A general purpose core can run 5 mips today (not sure, is that right?) which is a WHOLE LOT of instructions. If you quit wasting all that on the OS, drivers, and random code you should have far more speed than necessary for simulating the hair on a yetti."


Like I said before no one can simulate hair in realtime unless using a cluster or supercomputer. Its just that simple. Let me try to convey how complex accurate hair simulation is. A single strand of hair, physically, is similar to a rope with some differences. Ok now you have thousands of strands of hair on your head. Current technology has trouble with hundreds of ropes let along thousands.

EDIT:
I forgot to mention the part about accurate lighting of hair. This is where the math doesnt exist yet. Now yes lighting could easily go on the GPU, but still this makes accurate hair simulation even tougher. Also, standard raytracing does not work for hair for lots of reasons. Though the algorithm in the end will probably be some derivative of raytracing just like all accurate lighting algorithms.
TKF15H
21
Years of Service
User Offline
Joined: 20th Jul 2003
Location: Rio de Janeiro
Posted: 13th May 2005 11:54 Edited at: 13th May 2005 12:01
Quote: "You just articulated support of my argument without knowing it."

I did know I supported your argument, since I did say "The only advantage the PPU would have over a general purpose processor is...". I was very aware of what I said.
Quote: " no one can simulate hair in realtime unless using a cluster or supercomputer"

Now you just supported my argument. A two-processor machine is faster than a two-node cluster due to the larger bandwidth in between. "oh, but a two-node cluster isn't enough to do real-time hair", you may say. Well, no one has ever tried running a physics algorythm on a processor without an OS, as that is impossible with a cluster, but possible on a dual-core machine (provided the OS allows it). Having a General-Purpose Processor (GPP, as I'm getting tired of typing that) dedicated solely to a game's physics has never been attempted, to the extent of my knowledge.

You're talking about rope physics on each strand of hair on a head, while today's GPUs can't handle that load. Besides, even if the GPU could render all that in real-time, I see no use for that much precision in hair. The character's hair in "Dead or Alive 2" was pretty accurate most of the time, and it adds little to no gameplay advantage. Worth the effort?
With a GPP dedicated entirely for the game, it is far more usefull as games will be able to run without the OS interrupting execution, and dedication to other intensive tasks are possible. For example, what if a programmer decides he doesn't care much for the physics, and he wants to have AI that can make an enemy spaceship get depressed to the point of commiting suicide? Running that AI on the main processor may not have the desired result, but doing so on a dedicated core might.

billy the kid
19
Years of Service
User Offline
Joined: 7th Dec 2004
Location:
Posted: 13th May 2005 12:05
Quote: "Now you just supported my argument. A two-processor machine is faster than a two-node cluster due to the larger bandwidth in between. "oh, but a two-node cluster isn't enough to do real-time hair", you may say. Well, no one has ever tried running a physics algorythm on a processor without an OS, as that is impossible with a cluster, but possible on a dual-core machine (provided the OS allows it)."


Usually people dont just have 2 nodes in a cluster. I was thinking more like 5, 6, 20.

And actually they do run physics on workstations, clusters, supercomputers, etc. You need to get your mind out of the realm of games. Game physics are a joke compared to the number crunching that is done in industry simulations. So when I say ppl cant do hair in realtime without some serious hardware, Im talking about ppl in research that have access to some crazy hardware and crazy brain power.

Quote: "You're talking about rope physics on each strand of hair on a head, while today's GPUs can't handle that load. Besides, even if the GPU could render all that in real-time, I see no use for that much precision in hair. The character's hair in "Dead or Alive 2" was pretty accurate most of the time, and it adds little to no gameplay advantage. Worth the effort?"


Im not going to argue if this effect or that effect is worth the effort. Thats not really my judgment call to make. That doesnt detract from the fact that accurate hair simulation is a hot research topic, and that something like a PPU could make realtime.
Ian T
22
Years of Service
User Offline
Joined: 12th Sep 2002
Location: Around
Posted: 13th May 2005 12:24
How in god's name would a generic second processor make a generic mathematical calculation shift from a slowly calculated operation to a realtime one? That makes no sense

"Grif, if there's one thing I've learned working with you, it's there there's always a margin for error."
"It's pronounced margarine, dumbass!"
TKF15H
21
Years of Service
User Offline
Joined: 20th Jul 2003
Location: Rio de Janeiro
Posted: 13th May 2005 12:26
Quote: " and that something like a PPU could make realtime."

How do you know?
You could be over-estimating the PPU's power. It's not like we've seen one, much less coded for one, to have much of an idea what we're talking about.
You are underestimating the weight an OS and all the extra processes have on a processor.

Quote: "You need to get your mind out of the realm of games."

I thought the PPU was for games. If it's for calculating a trip to mars, then it's of no importance to people other than researchers.

Quote: "Usually people dont just have 2 nodes in a cluster. I was thinking more like 5, 6, 20."

True, I said so in my post above with a different wording.

billy the kid
19
Years of Service
User Offline
Joined: 7th Dec 2004
Location:
Posted: 13th May 2005 12:42
Quote: "How in god's name would a generic second processor make a generic mathematical calculation shift from a slowly calculated operation to a realtime one? That makes no sense"


What both TK and I said about less operations. Believe or not, graphics calculations are just generic mathematical calculations too. Many people have tried to convey that as well in this thread including me.

Quote: "I thought the PPU was for games. If it's for calculating a trip to mars, then it's of no importance to people other than researchers."


It is and it isnt. They are marketing it for games but it also has lots of applications in industry. Places in industry where they dont have access to fancy hardware.

Quote: "How do you know?
You could be over-estimating the PPU's power. It's not like we've seen one, much less coded for one, to have much of an idea what we're talking about.
You are underestimating the weight an OS and all the extra processes have on a processor. "


I dont. Thats why I said "could". But I would bet money that if the current incarnation of the PPU cant do hair simulation in realtime, later versions will. Todays GPUs are ridiculously more powerful than the first GPUs.

Look all I really know with absolute certainty is that the PPU will accelerate physics calculations just like the GPU accelerates graphics calculations. And based on history, Id bet a lot of money that the PPU's history will end up similar to the GPU's.
Ian T
22
Years of Service
User Offline
Joined: 12th Sep 2002
Location: Around
Posted: 13th May 2005 12:50
Quote: "Believe or not, graphics calculations are just generic mathematical calculations too."




That's not the point. The point is you're saying that a processor you do not know the power of will be able to calculate something you do not know the mathematics of, reducing its time by an amount you can not specify from an amount you are similarly unable to provide. But you can't explain why.

See?

"Grif, if there's one thing I've learned working with you, it's there there's always a margin for error."
"It's pronounced margarine, dumbass!"
TKF15H
21
Years of Service
User Offline
Joined: 20th Jul 2003
Location: Rio de Janeiro
Posted: 13th May 2005 12:57
Quote: "And based on history, Id bet a lot of money that the PPU's history will end up similar to the GPU's."

Based on history, there is a possibility this is just a dead end like Nintendo's revolutionary VirtualBoy.

Ian T
22
Years of Service
User Offline
Joined: 12th Sep 2002
Location: Around
Posted: 13th May 2005 13:02
Or the amazing revolution MMX extentions ended up providing

"Grif, if there's one thing I've learned working with you, it's there there's always a margin for error."
"It's pronounced margarine, dumbass!"
Kevin Picone
22
Years of Service
User Offline
Joined: 27th Aug 2002
Location: Australia
Posted: 13th May 2005 13:41
erm, MMX are very useful in the right situation. The down side is Intel's (moronic) idea to make MMX registers share the FP registers.

Kevin Picone
[url]www.underwaredesign.com[/url]
Play Nice! Play Basic (Release V1.066 Out Now)
Dave J
Retired Moderator
21
Years of Service
User Offline
Joined: 11th Feb 2003
Location: Secret Military Pub, Down Under
Posted: 13th May 2005 15:48
It's really incredible how some people are experts on something that doesn't exist yet.


"Computers are useless, they can only give you answers."
billy the kid
19
Years of Service
User Offline
Joined: 7th Dec 2004
Location:
Posted: 13th May 2005 15:51 Edited at: 13th May 2005 15:54
Quote: "That's not the point. The point is you're saying that a processor you do not know the power of will be able to calculate something you do not know the mathematics of, reducing its time by an amount you can not specify from an amount you are similarly unable to provide. But you can't explain why."


Umm I do know the math for Newtonian physics as well as the math and programming for collision detection from scratch. The real trick is how to optimize it for large numbers of objects which I also know (use an octree). And yes I dont know the exact specifics of the power of the PPU nor the specific instructions it will provide. Mainly because they havent publicly released that information, not because I just feel like bullsh**ing and making stuff up. And to give you accurate benchmarks is impossible since I dont have the hardware and they havent released any sort of benchmarks either. So honestly the information you want is not available unless you can get your hands on a PPU, period.

Now that does NOT mean the PPU wont be faster than a CPU. Im telling you right now the PPU will be able to and can calculate physics a lot faster than a CPU. And again because it DOES have specialized hardware. I really dont understand why we are having this argument. It should be obvious to anyone who is a programmer that a hardware (or pseudo-hardware) implementation is faster than a purely software implementation aka runs off the CPU. Read some computer architecture books for crying out loud.

Anyway Im done with this argument. All thats needed is time to prove Im right and the others that agree with me which is about the entire game developer community. Whether or not the PPU will actually sell, well Im betting it will but it might not. But the PPU definitely will make physics calculations happen a lot faster.

BTW the PPU is a little different than the VirtualBoy and MMX. If you cant see that then...

P.S. I swear some of you argue, just to argue.
billy the kid
19
Years of Service
User Offline
Joined: 7th Dec 2004
Location:
Posted: 13th May 2005 16:04 Edited at: 13th May 2005 16:24
Quote: " It's really incredible how some people are experts on something that doesn't exist yet."


Im not an expert on the PPU. However I am an expert on whats faster: hardware vs software implementation. Its really a no brainer for a programmer, or should be.

EDIT:
Mouse - It has been explained why the PPU will be faster than a CPU several times not just by me. A PPU will reduce the number of instructions it takes to do exactly the same operations on the CPU. So if it takes 5 instructions to do something on a CPU, it will take 1 or 2 instructions on the PPU which will give you a HUGE amount of savings if the operation is common and done millions of times. Im sorry I dont have the exact instructions or operations, but I dont have a PPU to play with just like most everyone else. However that doesnt mean what I say and others say isnt correct.
Raven
19
Years of Service
User Offline
Joined: 23rd Mar 2005
Location: Hertfordshire, England
Posted: 13th May 2005 19:41
Quote: "Okay, but can you think of even one equivilant to onboard AS, FSAA, T&L, etc for a physics processor? That's what makes the difference for GPUs."


Transform & Lighting is just a design of the Vertex Pipeline that Unifies it with the Pixel Pipeline allowing the Data of Lighting and Rendering to be performed quicker.

FSAA, only actually Hardware-based on the N64. It's a bloody good question to why the hell this isn't a seperate chip yet, the advantage of it is very clear.

AS, which I'm sure you actually ment AF.. is just a form of Texture Filtering. Again nothing to do with hardware itself, the hardware simply dictacts the depth of colour and texel processing speeds. The actual legwork is still done via drivers.

On the point 'Dual Core CPU can do what the PPU can', well your really moving to the argument of Sound and Graphics Processors again here.
The CPU is designed to be able to do any task, but because it isn't optimised for any 1-particular task this means that a dedicated processor who's only job is to process these things is capable of performing better.

The proof of this is in the fact that a 166MHz (EAX3.0 Audigy2) Sound Processor is capable of calculating and blending with up-to 16 sound stages and effects without any CPU fallback over 128 Voices.

An AthlonXP 1.8GHz is capable of Software Virtualisation of 16 Voices with up-to 2 sound stages.. at the same speed. This is on EAX1.0 which isn't even close to the realism level that EAX3.0 is capable of putting out.

We see this echoed with Graphics Processors, given that even the most high-end CPUs aren't capable of Emulating even 5% the speed of the low-end GPUs.

You can argue if it'll be taken up or not all you like.
Sound Processors are only on Creative Sound Cards and the rest of the world seems happy with thier EAX1/2-based 64-Voice equivilant chips.. the Sound Processor hasn't revolutionised the Sound Card industry, but if your willing to spend 4x more for your sound-card then you'll be able to get some true Dolby gaming and film experince.

Graphics Processors however have changed how we develop games entirely. Forcing everytone to upgrade and keep pushing this technology further.

It's possible that it could also become like the WriTech.. something very short lived and eventually integrated but ultimately never evolving.

There are so many possible out-comes for this technology, and there is no way to accurately predict how something so new will affect the gameing and development markets.

From my perspective, I can see this technology taking off.. given how obsessed people are becoming with in-game physics. I will agree though that unless the Revolution or PS3 integrate this technology, it is likely to slide in to obscurity or something like Audigy; something to just enhance peoples gaming experience.

Really you can't argue with it being able to handle over 1,000 physics enabled objects without any slow-downs compared to a current mid-range CPU handling tht many at a matter of 30-40fps.

What things like this need is the backing and introduction from a giant who dictacts how the industry moves.. Ageis isn't a big enough company with enough influence to do it on thier own.
Teh Go0rfmeister
21
Years of Service
User Offline
Joined: 17th Aug 2003
Location:
Posted: 15th May 2005 05:37
PPU: great for simulations, maybe not AS GREAT in games, but sitll useful. it might mean coders will find physics management easier, and so can spend more time focussing on what makes a game great.
Neofish
20
Years of Service
User Offline
Joined: 7th Apr 2004
Location: A swimming pool of coke
Posted: 15th May 2005 06:21
Quote: "Places in industry where they dont have access to fancy hardware."

hehe, I would have classed a PPU as fancy hardware....

Pi = 8
billy the kid
19
Years of Service
User Offline
Joined: 7th Dec 2004
Location:
Posted: 15th May 2005 06:44 Edited at: 15th May 2005 06:45
I meant multi-million dollar machines with very specific purposes. As an example, NASA's shuttle simulator.

Login to post a reply

Server time is: 2024-11-27 14:33:01
Your offset time is: 2024-11-27 14:33:01