• Some users have recently had their accounts hijacked. It seems that the now defunct EVGA forums might have compromised your password there and seems many are using the same PW here. We would suggest you UPDATE YOUR PASSWORD and TURN ON 2FA for your account here to further secure it. None of the compromised accounts had 2FA turned on.
    Once you have enabled 2FA, your account will be updated soon to show a badge, letting other members know that you use 2FA to protect your account. This should be beneficial for everyone that uses FSFT.

A CPU cannot match a PPU or GPU for physics!

Lord Cecil said:
Not to be rude, but almost no one here, including both the 14 year old OP and myself, know much of anything on this matter. I'm here to point out that a current gpu can not replace the cpu for physics. A ppu is not involved in my argument.

By the OP's logic a gpu can already do physics and can already do physics better than the cpu. Thus it makes no logical sense as to why there isn't a single game on the market that uses the gpu for physics. Clearly, something is missing from the logical equation.

The something would be called engineering. CPUs are general purpose number crunchers for general purposes while GPUs are for a very specific purpose. The difference here is that cpus are made to account for branching. Lots and lots of branching. This is something physics requires a lot of with dozens of if statements run per object on those 30,000 boxes. Luckily the cpu is designed for such things and can handle this quite well.

GPUs on the otherhand don't really consider branching. Graphics doesn't need it. You setup some initial matrix transformations, turn on some shaders, and then churn through thousands of polygons and vertices without a single conditional statement.

Thus the statement "If a CPU can do physics, then it can do graphics." is false and entire argument falls apart.

Good day.

PPU's don't need much branching. the program (CPU run) tell the PPU that X object(s) just interacted with Y object(s) in a Z fashion. Then the PPU goes to work figuring out how that interaction will affect its environment, and how subsequent interactions will further affect their environments.
 
ryan_975 said:
PPU's don't need much branching. the program (CPU run) tell the PPU that X object(s) just interacted with Y object(s) in a Z fashion. Then the PPU goes to work figuring out how that interaction will affect its environment, and how subsequent interactions will further affect their environments.

Uhhh... I don't know how to respond other than no you're wrong? The most expensive part of physics is determining what objects x and interacting with objects y. I mean, when you have 30,000 blocks thats a rather large number of checks to make. Obviously there are activation algorithms and space partioning to keep you from having to perform checks on the order of n^2, but that is still the most expensive part of the process. Once you've determined vertex5 of box37 is penetrating box7894 by a depth of .37 in relation to plane0 actually resolving that collision isn't computationally expensive. It's actually determining this interaction that is complex, and requires all those if checks. :)
 
Lord Cecil said:
Uhhh... I don't know how to respond other than no you're wrong? The most expensive part of physics is determining what objects x and interacting with objects y. I mean, when you have 30,000 blocks thats a rather large number of checks to make. Obviously there are activation algorithms and space partioning to keep you from having to perform checks on the order of n^2, but that is still the most expensive part of the process. Once you've determined vertex5 of box37 is penetrating box7894 by a depth of .37 in relation to plane0 actually resolving that collision isn't computationally expensive. It's actually determining this interaction that is complex, and requires all those if checks. :)

I know I was wrong. Everyone else seems to have anopinion on a subject few know much about, so I threw some mumbo jumbo in there. :D
 
penguin said:
Explain to me how that's not a valid argument?
Not that I disagree with the OP on principle (I think he has some valid points, some not so valid...), but the argument is invalid.

HOCP4ME said:
If a CPU can do physics, then it can do graphics.
A CPU cannot do graphics.
Therefore, it cannot do physics.
The first sentence, stating that the ability to "do" graphics is dependent on the ability to "do" physics, is at best speculation based on a poor understanding of CPU, GPU and PPU architecture. The second sentence is false (*CPUs are Turing complete*). The conclusion is verifiably false (run HL2 for example. Also Turing complete).

For the record, I do see the OP's intent, which I think reasonable, but his proof is pretty fallacious. I also think it's much more productive and interesting to talk about architectural reasons why a CPU can or cannot perform a task.
 
"If a CPU can do physics, then it can do graphics.
A CPU cannot do graphics.
Therefore, it cannot do physics."

While Physics is a kind of calculations.
Graphics is displayin something on a Monitor. Wich sound like critical hardware.
A monitor and a Ramdac or DVI transmitter.
Where in time a lot of Graphical computation is shifted to this GPU hardware.
T&L shaders V P G shaders.

So a CPU can do Physics but not all a GPU can do. It can do most calculation a GPU can do. But what is most important the CPU can't do it at a level of performance dedicated hardware can.
The difference is large between CPU GPU in performance.
The difference is a bit smaller between Nextgen CPU and today's PPU
PPU is a light design wich a CPU can reach in 'n year or so.

Nextgen PPU's could be more related to the level of modern technology. Like 65nm instead of 130nm. That 4 times the transistor count aviable higher klok and a new design.
they could skip 90nm.

CPU and GPU have a transister count lead over the PPU.

I'am lokin forward to the nextgen PPU wich could be more competive.

Besides if CPU compete with Hardware Physics. it will be
CPU vs (PPU and GPU) wich includes QX Ex vs R600 :)
 
HOCP4ME said:
If a CPU can do physics, then it can do graphics.
A CPU cannot do graphics.
Therefore, it cannot do physics.

Whatsisname said:
Your grade for logic 101:
F

Actually this is a valid logical argument....some folks need to take discrete math or some other logic.

CPU can do physics - statement p
CPU can do graphics -statement q

You're making the argument

If p, then q
~q (negation of statement q)
therefore ~p

Which is a valid argument called modus tollens. My discrete math textbook says that "less than 60% of college students are able to apply modus tollens correctly" (so don't feel bad).


But the problem here is that the premise of the logical argument is not valid. This is a valid logical argument with false premises. CPUs can "do" graphics. What do you think processed 3D graphics before 3D-accelerated video cards?

Sure GPUs do them better, but CPUs can process graphics. Look to games like The Sims 1 (almost completely software rendered), Quake 1/2 non-OpenGL, etc.

Sure they do a sucky job at it, but they can do it. Give me sucky physics implemented on a spare CPU core first and I'll see if I buy into it enough to add yet another hardware acceleration card into the system. What's next, a light effect acceleration card to go with the GPU? :rolleyes: Maybe a superpowered math-co-processor too, let's go back to the 386 era :D
 
A very well written article indeed. Any one who has studied Computer Architecture and Logic Design wil understand whats it all about. The x86 processors follow the MIPs architecture that has sequential pipelines. In no way can they endure parellism unless emulated, which itself has performance penalties. A GPU, however, consists of parallel pixel piplelines that can process things at a much faster rate. And ofcourse a CPU is a general purpose processor so it cant be expected to perform certain operations that other processing units are specifically designed to run.
 
GreenMonkey said:
Actually this is a valid logical argument....some folks need to take discrete math or some other logic.
I would hardly call it a valid argument when the premises are wrong, but yes, I agree, other than that "minor" issue, it is a valid argument: as in it is completely invalid.
 
nVidia and ATi claim that they are able to reprogram the "processor" on their graphics cards (GPU) such that they can simulate physics to the same or a similar extend as that PPU. If this is the case, then must it not be true that that type of calculation performed in graphics processing and physics processing are likely to be very similar. GPUs are application specific chips and given my limited understanding of how engineering works, I would say that as such tradeoffs were made to execute common graphics processing calculations quickly, while sacrificing some generality.

Given this assumption: physics processing and graphics processing require a similar type of calculation, it is not too far fetched to say that when a PPU is doing graphics processing, it is likely to see a performance hit similar to a GPU doing physics processing.

Given ATi and nVidias insistence on their graphics soltuions being close in physics processing performance to a PPU and Ageia's rebuttal that they may at best be close, but not equivalent, one could consider that the PPU is equivalently powerful in processing physics as a GPU is in processing graphics.

With all this in mind, people argue that some extra CPU cores could do the work that a PPU does. If that were the case, then the extra CPU cores should be able to do graphics processing almost as well as a GPU does. However, this does not appear to be the case: Looking at integrated graphics solutions, there are sufficient benchmarks to show how limited their performance is compared to their add-in cards equivalent. If an ASIC, limited by memory bandwidth cannot even come close to achieving the performance of a graphics card, how would a general purpose CPU do any better, given that it is limited by the same memory bus and less optimized for the workload.

Now, after showing that a CPU cannot do graphics and that graphics and physics processing are claimed to be equivalent by the graphics companies, it is clear that a CPU would not be able to hold a candle to a PPU when it comes to physics processing.
 
drizzt81 said:
nVidia and ATi claim that they are able to reprogram the "processor" on their graphics cards (GPU) such that they can simulate physics to the same or a similar extend as that PPU. If this is the case, then must it not be true that that type of calculation performed in graphics processing and physics processing are likely to be very similar. GPUs are application specific chips and given my limited understanding of how engineering works, I would say that as such tradeoffs were made to execute common graphics processing calculations quickly, while sacrificing some generality.

Given this assumption: physics processing and graphics processing require a similar type of calculation, it is not too far fetched to say that when a PPU is doing graphics processing, it is likely to see a performance hit similar to a GPU doing physics processing.

Given ATi and nVidias insistence on their graphics soltuions being close in physics processing performance to a PPU and Ageia's rebuttal that they may at best be close, but not equivalent, one could consider that the PPU is equivalently powerful in processing physics as a GPU is in processing graphics.

With all this in mind, people argue that some extra CPU cores could do the work that a PPU does. If that were the case, then the extra CPU cores should be able to do graphics processing almost as well as a GPU does. However, this does not appear to be the case: Looking at integrated graphics solutions, there are sufficient benchmarks to show how limited their performance is compared to their add-in cards equivalent. If an ASIC, limited by memory bandwidth cannot even come close to achieving the performance of a graphics card, how would a general purpose CPU do any better, given that it is limited by the same memory bus and less optimized for the workload.

Now, after showing that a CPU cannot do graphics and that graphics and physics processing are claimed to be equivalent by the graphics companies, it is clear that a CPU would not be able to hold a candle to a PPU when it comes to physics processing.

Agreed.
 
jimmyb said:
Not that I disagree with the OP on principle (I think he has some valid points, some not so valid...), but the argument is invalid.


The first sentence, stating that the ability to "do" graphics is dependent on the ability to "do" physics, is at best speculation based on a poor understanding of CPU, GPU and PPU architecture. The second sentence is false (*CPUs are Turing complete*). The conclusion is verifiably false (run HL2 for example. Also Turing complete).

For the record, I do see the OP's intent, which I think reasonable, but his proof is pretty fallacious. I also think it's much more productive and interesting to talk about architectural reasons why a CPU can or cannot perform a task.
Okay... his logic was completely valid, though not correct. Therefore, he didn't get an F in logic, as his logical argument was valid.

jimmyb said:
I would hardly call it a valid argument when the premises are wrong, but yes, I agree, other than that "minor" issue, it is a valid argument: as in it is completely invalid.
Valid != Correct
 
People, if you want to know about a PPU and how it works read this:
http://www.blachford.info/computer/articles/PhysX2.html

The ageia PPU in pure vector math can outgun a Cell by 3 times over, and a single core CPU by 50 times.. (dual core by 25 times etc.)

There is no argument that the PPU is faster at Vector math (thus physics) but at GPU will not be as good as a PPU, it likely will only be slightly faster than a current CPU. (from what I can tell, I could be wrong though)

What the GPU will do though is free up CPU cycles for other things, and if you are using an addional GPU to do it (as Nvidia and ATI want you to) it will not slow down the 3D work either. However if you are using the GPU for both video and physics, it will probably be slower than having a CPU do it.

And on top of all this, it is also a matter of if the games that you want to play will support any of these solutions.. The CPU is always there, so it will always get supported. A GPU is a moving target, and the PPU has a tiny market share..
 
Seeing Cell Factor run quite well without a PPU was enough to convince me that CPUs will do just fine handling physics for the next little while. I don't doubt the power of a PPU; I doubt the necessity currently. Until CPUs start bottlenecking games, there is little reason to move load off them.

They aren't utillized right now. Cell Factor runs fine on a CPU because the only thing it really uses the PPU for is the cloth at the end. When games are developed that actually allow the power of the PPU to be used to its full potential, you will see what I mean.

well...

GPU pipes doing physics, get backlogged and have to be reprocessed... pipes arnt meant for physics.

and umm. HOCP4ME, do you know sum1 named Terra?

I never liked Terra either. The only thing we had in common is that we wanted to PPU to succeed.

Also, are you saying that a GPU cannot do physics either? Because, based on your second statement, I would assume you disagree with Terra. But Terra's biggest opinion was that a GPU could not do physics.

Why should we have dedicated physics processing? Because we can.

The OP started the thread with logic. Many of the contra arguments sound like this: Why do we need to have airconditioning or stereos in our cars? You can just as easily cool yourself down by rolling down the windows (known in the industry as 2-65 a/c) and more cheaply entertain yourself by listening to your children sing in the back seat. What a bargain. The flaw is in the argument.

If you remember playing BF 1942, you might recall killing yourself by driving a jeep into a fence or a tank into a tree. Having driven jeeps and tanks in real life, I can tell you that fences and trees do not fare so well when run into/over by real life military equipment. Having a dedicated physics processor would allow the fence to shatter and the tree to be knocked down. Instead, currently, such objects are purely static. Boring.

If you played Duke Nukem, you might remember seeing that wall with the peculiar shape telling you that if you hit it with the rocket launcher a hole would appear. Cool at the time. Now? Yawn. Shooting the walls left little markers which would fade overtime (self healing walls - wish I had those back in my dorm-days...)

As it stands, any object with a collision mesh (like a wooden fence) will block a simulated bullet. However, if you've ever been in combat, wooden fences provide good concealment, but not good cover.

The potential is reason enough for why we should do it. If you recall Remedy's Matrix-like demo (from Max Payne - Remedy being the first outfit to actually send simulated bullets down range) a PPU would allow for the actual destruction of the walls in response to different caliber bullets. Otherwise all we're doing is painting the walls ala Duke Nukem.

As has been said: the CPU should calc AI and general world information, the GPU paint it for us and calculate the lighting (as it does better and better each year) and we should have a dedicated PPU (solely because we can) to make things realistically breakable. Each year that would get better and better and the content available to the end user (i.e. us gamers - become more and more awesome (because lets face it we all need better reasons to avoid real life! ...and frankly its more fun to play "Desert Combat" than to be actually shot at in the desert.).

Don't forget an AIPU: http://www.hardforum.com/showthread.php?t=1094855 eventually we won't need a CPU at all. yay.

I'm not currently a supporter of the AIPU. And before you say that I have conflicting opinions, let me explain why. AI, at this time, works fine on a CPU. The reason why developers don't do better is because they don't have the time to develop more complex algorithms. There is plenty of headroom for developers if they decided that they wanted to implement more AI. That is what they could use the extra CPU cores for. AI, in its present form, does not require parallel processing. Physics, however, does, and developers are therefore unable to do much better on a CPU.

Not to be rude, but almost no one here, including both the 14 year old OP and myself, know much of anything on this matter. I'm here to point out that a current gpu can not replace the cpu for physics. A ppu is not involved in my argument.

By the OP's logic a gpu can already do physics and can already do physics better than the cpu. Thus it makes no logical sense as to why there isn't a single game on the market that uses the gpu for physics. Clearly, something is missing from the logical equation.

The something would be called engineering. CPUs are general purpose number crunchers for general purposes while GPUs are for a very specific purpose. The difference here is that cpus are made to account for branching. Lots and lots of branching. This is something physics requires a lot of with dozens of if statements run per object on those 30,000 boxes. Luckily the cpu is designed for such things and can handle this quite well.

GPUs on the otherhand don't really consider branching. Graphics doesn't need it. You setup some initial matrix transformations, turn on some shaders, and then churn through thousands of polygons and vertices without a single conditional statement.

Thus the statement "If a CPU can do physics, then it can do graphics." is false and entire argument falls apart.

Good day.

First off, my age has nothing to do with my intelligence. You sound a bit like my uncle. If I give him an argument that is undeniably true, he will say "well I have a Masters in Geology and you don't, so your argument is invalid". Sorry, it just doesn't work like that. If you got my age from my sig, I suggest you read the line below that one. (EDIT - Whoa, sorry if that confused or insulted some people. I forgot that I changed my sig a few months ago :p)

Also, the statment that a GPU can do physics is supported by NVIDIA and ATI. If BOTH of the world's largest graphics companies are saying its possible, it probably is. But you're right, I wrote my argument without providing sources to verify my premises (in other words, I didn't prove my assumptions).

And if the GPU really can't do physics...more power to the PPU.

PPU's don't need much branching. the program (CPU run) tell the PPU that X object(s) just interacted with Y object(s) in a Z fashion. Then the PPU goes to work figuring out how that interaction will affect its environment, and how subsequent interactions will further affect their environments.

This is correct. Physics calculations are just as straighforward as graphics calculations. Its just that one finds the location of a pixel, and the other find the location of an object.

Uhhh... I don't know how to respond other than no you're wrong? The most expensive part of physics is determining what objects x and interacting with objects y. I mean, when you have 30,000 blocks thats a rather large number of checks to make. Obviously there are activation algorithms and space partioning to keep you from having to perform checks on the order of n^2, but that is still the most expensive part of the process. Once you've determined vertex5 of box37 is penetrating box7894 by a depth of .37 in relation to plane0 actually resolving that collision isn't computationally expensive. It's actually determining this interaction that is complex, and requires all those if checks.

In its simplest form, the calculation is force X is applied to object Y at point Z causing it to follow vector F. And if vector F intersects another object, object Y will apply another force to that object, and so on. Having "30,000 blocks" is precisely the reason why prallalization is necessary. The PPU has to be able to track all of the objects at the same time, or at least as close to that as possible. You need pipelines to do that. Trying to do it without pipelines would be like having a GPU that can only calculate one pixel at a time.

Your grade for logic 101:
F

I think you should take logic 101 again. You can argue that the premises are wrong, but the logic cannot be disputed. Here's why:

If I am flying, then I am above the ground.
I am not above the ground.

Given those premises, is it still possible that I am flying? No, because premise one says that, if I was flying, premise two would be incorrect. Therefore, the only logical conclusion is that I am not flying.

The first sentence, stating that the ability to "do" graphics is dependent on the ability to "do" physics, is at best speculation based on a poor understanding of CPU, GPU and PPU architecture. The second sentence is false (*CPUs are Turing complete*). The conclusion is verifiably false (run HL2 for example. Also Turing complete).

For the record, I do see the OP's intent, which I think reasonable, but his proof is pretty fallacious. I also think it's much more productive and interesting to talk about architectural reasons why a CPU can or cannot perform a task.

Okay, let me clear something up. When I say "A CPU cannot do graphics", I mean that it cannot do physics at a reasonable speed in today's games (and therefore it cannot do graphics better than today's games). When I say "A CPU cannot do physics", I mean that it cannot do physics better than todays games. When I rewrite the argument, I will clarify this.

The second premise cannot be argued with. Find a game with graphics better than today's that runs without a GPU and I will retract my statment.

The first premise is based on another premise that says a GPU can do physics. Unless NVIDIA and ATI are both wrong, this premise is right.

If the premises are right, the conclusion has to be right. :p
 
GreenMonkey said:
If p, then q
~q (negation of statement q)
therefore ~p

Which is a valid argument called modus tollens
This only works when the "if" is an "if and only if". To take Wikipedia's example:
If there is fire here, then there is oxygen here.
There is no oxygen here.
Therefore, there is no fire here.
This assumes that fires happen iff there is oxygen. The proof is still valid, but if you make up a statement, the consequences are still invalid. For example:
If this thread were useful, the text would be in green.
The text in this thread is not in green.
Therefore, this thread is not useful.
Some useful threads don't have text in green, so the argument is invalid.

I don't see the point of dedicated processors for one thing. CPUs aren't limited to 2 cores, nor are they limited to general-purpose cores. I think what will happen in the future is a few GP cores and then a larger number of FPU and IPU cores.

 
HOCP4ME said:
PPU's don't need much branching. the program (CPU run) tell the PPU that X object(s) just interacted with Y object(s) in a Z fashion. Then the PPU goes to work figuring out how that interaction will affect its environment, and how subsequent interactions will further affect their environments

This is correct. Physics calculations are just as straighforward as graphics calculations. Its just that one finds the location of a pixel, and the other find the location of an object.

No I was not correct. Physics are massively branch dependant. While loops and If-else statements abound in a physics algorithm.

Which is why a CPU cannot handle much physics. They are for the most part not optimized for branching. Yes they do have branch logic, but it set up in a "just in case" manner. A CPU doesn't know whether the code is going to branch or not unti it does so. A PPU however KNOWS the code is going to branch and is therefore set up to process things in a manner that speeds up branching code.
 
The OP has some serious logic problems and jumps to some major conclusions on some things. A CPU can render 3d graphics and a CPU can compute physics. Then again, younger gamers were probably 5 years old when CPU's were all that was around for 3d graphics so i don't slight him the inaccuracies in comparing a CPU to a GPU. The only question is, is the CPU beefy enough to compute physics AND 3d graphics rendering AND all other game logic at once. No, it's not.

Why? This is why -

Video cards are better at 3d graphics rendering for one simple reason - they are WAY the hell more complex than your average CPU. Your average a64 has 70-80 million transistors or so. Your 7900gt has over 270 million transistors. It's also got a really fast interface with it's on board memory vs. a motherboard interface to CPU. Granted, video card CPU's run at a fraction of the clock speed that your main CPU does, but this is an offset of that many transistors in such a small place; it's simply a different approach - massive parallel computation at slower speeds overall wins out when you're working with graphics, and it also wins out when working with physics because both situations need massive amounts of computations done in parallel. Now, currently, CPU's are not designed for 3d graphics processing because not everyone needs to spend an extra 400$ on that capability when they buy a PC. John doe doesn't need that shit to check his hotmail account twice a week.

Likewise, people don't need to spend 300$ on a PPU when they buy a PC unless it's worth it to them.

CPU's can do physics calculations and CPU's can render 3d graphics - it's just not cost effective to shove all that onto a CPU die and not feasible to embed memory with such a high speed interface to the CPU. Video cards are needed as a separate card for other reasons such as a pair of outputs to the monitor...but PPU's could easily be absorbed by the CPU itself if it became cost effective...until people are willing to pay for that complexity when they buy their CPU, there'll be add-in PPU cards, simply because until that point it won't be cost effective for companies to put so much complexity on-cpu.
 
headless said:
Video cards are better at 3d graphics rendering for one simple reason - they are WAY the hell more complex than your average CPU.
Bzzt, wrong. The GPU is much simpler, but it has many pipelines. The CPU has fewer transistors, but they're arranged in many different ways. The GPU has N pipelines, which are essentially the same, and glue logic to make them all work together. Not until recently could GPUs do something as simple as branch. They had enough pipelines, though, that it wasn't necessary - just run all the possible outcomes, and throw away the ones you don't need.

ryan_975: s/CPU/GPU/g; And physics aren't straightforward - if you tell the PPU that X interacts with Y, now you have to (unless you do some optimizations) check X and Y against every other object that exists.

Lazn_Work: Compare that diagram to a cell processor. Looks awfully similar, no?

 
unhappy_mage said:
Lazn_Work: Compare that diagram to a cell processor. Looks awfully similar, no?


Without a doubt, they are very similar, with the PPU being more focued and having more simpler vector units.. So for specific tasks the PPU will be faster than a Cell, and for general tasks the Cell will be faster.. However with that said, the Cell is way way more task focused than a normal CPU with the same thing said comparing it to a normal CPU.
 
GreenMonkey said:
Maybe we don't care about 30,000 flying objects in games. Maybe some of us would be happy with 1,000 objects. I know I would. So what if a PPU is 30x better at it. I'd rather they utilize a spare CPU core - that's free.
"640K ought to be enough for anybody."
...
"640 flying objects ought to be enough for anyone"

Personally I think kids today are completely spoiled. Back in my day we had three flying objects: Two paddles and a Pong ball, and we were thankful for that!

 
HOCP4ME said:
This is correct. Physics calculations are just as straighforward as graphics calculations. Its just that one finds the location of a pixel, and the other find the location of an object.

Jesus H. Christ in a handbasket stop already. Graphics calculations do not have conditionals. Ok, well technically the shader 3.0 model allows for this, but you have to be careful as it can be extremely slow for the obvious reasons. PPUs are better than CPUs for physics, much better. Thats fine. But the hardware architecture of a GPU is completely different than that of a ppu or cpu and it is not suited for physics calculations. A current gen gpu dedicated 100% to physics calculations would not run faster than a cpu. Not only that, but it would not run faster than a cpu that is also handling other aspects of the game.

I understand you're in high school now which means you're in the big league of algebra and geometry, but you clearly speak of things you know nothing about and I'm begging you to stop it.
 
I vote we hire someone who actually does the programming to straighten all this out. The argument here is by a bunch of hardware enthusiasts. Its basically pointless without the people who are actually making the games and know the real bottlnecks. Im afraid I have no faith in the claims here regarding what the bottlenecks in current games are.

Nevertheless, lets dumb the system down like all us hardware people do.
So lets say the PPU can do 50 times more vector calculations per second than a CPU. Thats great and all, but how easily and efficiently can it be integrated into todays gaming architecture? So lets say that a game sends 1000 objects have their physics calculated by the physics card. How does the game know where everything is? The physics card has to alert the cpu as to where all the objects are so the CPU can tell it what to do next, and this has to happen, as well as tell the video card what to display. Therefore it is a two way street, with an intense amount of bandwidth needed, and its possible that the CPU overhead for all that communication could be equal to what woule be taken up if the CPU were to calculate 50 times less objects.

Now we give it 3 years and all of a sudden were at less than 7 times slower than PPU's. (quad-core this november, at least 8 cores in the next 3 years, along with an increase in performance per core).

Also, since were in the realm of logic, lets look at the jobs of the proccesors in the computer.

CPU-General purpose central computer.

GPU-Graphics interface acceleration

Audio-Audio interface acceleration

Now, notice that the two main processors besides the CPU are dedicated to the interface between the user and the computer. If we start adding internal processors to do internal work, where does it end? To those who say that AI has more respective possiblity on current CPU's than physics and doesnt require more processing power is simply uninformed. I am doing research under a professor on AI, and I promise you computational power is a HUGE bottleneck. Another possible add on card could be a chemical add in card, to make sure that all the chemical reactions going on in a scene are appropriate. The point is that the CPU is accelerating at an exponential rate, and I think moving internal computations that the CPU is currently responsible for to specialized cards is a step in the wrong direction. Making the GPU into a general purpose processor capable of physics is stepping even farther in that wrong direction.

The biggest challenges are in software. Someone mentioned that they hate getting stuck in objects in CS source. The idea that throwing a PPU in the mix is somehow going to solve that is ludacris. We need improved debugging and programming, not more complications thrown into the PC programming world.

/longest post ever
 
stelleg151 said:
Nevertheless, lets dumb the system down like all us hardware people do.
If you were to ask me, I would say that on average hardware engineers (EE majors that does IC design etc.) are more intelligent than CS majors. In fact, I think that EE is -on average- more difficult than CS. But it doesn't really matter...
stelleg151 said:
Now we give it 3 years and all of a sudden were at less than 7 times slower than PPU's. (quad-core this november, at least 8 cores in the next 3 years, along with an increase in performance per core).
Aside from the obvious that PPU performance is likely to increase, you have a valid point. Yes, there may (will?) be a point when reintegration makes sense. Look at sound cards. I currently do not have the need to a non-integrated solution. In fact, my last soundcard purchase was an Aureal based board probably in 2000 or 2001. In the early/ mid 90's integrated audio wasn't really all that hot. Neither was integrated video. Look at the power of some of the integrated GPUs nowadays (yes I am somewhat contradicting ym previous post): you can actually play games on them...
stelleg151 said:
Also, since were in the realm of logic, lets look at the jobs of the proccesors in the computer.

CPU-General purpose central computer.

GPU-Graphics interface acceleration

Audio-Audio interface acceleration

Now, notice that the two main processors besides the CPU are dedicated to the interface between the user and the computer. If we start adding internal processors to do internal work, where does it end?
Excellent question. If someone knows the answer to that with high certainty, I have some money that I need help investing ;)
If you look at it, for most tasks, where high performance in a single area is important, there are dedicated processors: Graphics cards, the "x-fi" abomination, TCP offloading network cards for servers and gamers with too much loose change and RAID cards for people that need to read lots of files quickly. All these solutions are designed to keep what I would call "tedious" tasks from the CPU so that it can do its thing. I have long been someone who thinks that there will be a general trend towards more application specific ICs in a comptuer. Whether there end up integrated on a CPU die, as U_M pointed out, on a dedicated bus, such as the initiative that AMD appears to be pursuing or on a standard expansion slot card, doesn't really matter.

stelleg151 said:
To those who say that AI has more respective possiblity on current CPU's than physics and doesnt require more processing power is simply uninformed. I am doing research under a professor on AI, and I promise you computational power is a HUGE bottleneck.
That is true. My little semester long machine learning class made that rather clear. However, just because computational power is a bottleneck does not mean that there is an "easy ASIC" solution for this. Are all computations similar? Are there optimized hardware solutions for these repeating computations? Can they be parallelized or will we need a single high-speed solution? Are AI algorithms' calculations homogeneous, i.e. portable from my neural-net implementation to some different, instance classification algorithm? I don't know the answers, but these questions may be limiting the the advancement of AI-ASICs.


stelleg151 said:
Another possible add on card could be a chemical add in card, to make sure that all the chemical reactions going on in a scene are appropriate.
In the extreme, the PPU should take care of that. When we get to the point of simulating all atoms' interactions in the scene, we will only need a PPU, nothing more ;)

=stelleg151 said:
The biggest challenges are in software. Someone mentioned that they hate getting stuck in objects in CS source. The idea that throwing a PPU in the mix is somehow going to solve that is ludacris. We need improved debugging and programming, not more complications thrown into the PC programming world.
That was actually me :) If the collision detection algorithm (which is partially what he PPU does, if I understand it corretly) was better, I would not get stuck, since I would not "sink into" a couch. Yes, software is behind the hardware, but the nice idea is that Ageia is not just throwing out a PPU and saying: "so lads, go write some assembler", but linking a usable "physics engine" with the whole thing, which may make that work a lot easier... then again who knows and we have gotten WAY off topic.

stelleg151 said:
/longest post ever
/even longer post ;)
 
HOCP4ME said:
The second premise cannot be argued with. Find a game with graphics better than today's that runs without a GPU and I will retract my statment.
CPUs can do graphics. Just because you meant to say something different doesn't change that. You can change the argument to make it less incorrect, but as it stands now, what you have said is not true.

Also, I still disagree with the statement (your meaning, not what you have wrote...) "If a CPU can do physics, then it can do graphics.". This would imply that a PPU can "do" graphics, which I find unlikely. As I said earlier, it is at best speculation.
 
This assumes that fires happen iff there is oxygen. The proof is still valid, but if you make up a statement, the consequences are still invalid. For example:
If this thread were useful, the text would be in green.
The text in this thread is not in green.
Therefore, this thread is not useful.
Some useful threads don't have text in green, so the argument is invalid.

I don't see the point of dedicated processors for one thing. CPUs aren't limited to 2 cores, nor are they limited to general-purpose cores. I think what will happen in the future is a few GP cores and then a larger number of FPU and IPU cores.

That's because you have the premises wrong. The premise "If this thread were useful, the text would be in green" is incorrect. A useful thread does not have to have its text in green. What you should have written is "If a thread's text is in green, then a thread is useful", in which case your argument would be invalid as you would be denying the antecedent.

Think about Wikipedia's example. If the premise "If there is fire, then there is oxygen" was true, would it really be possible for there to be fire but no oxygen? No, it wouldn't. You can argue the premises, but not the logic.

You need the IFF (or was it IIF?) statment if you want to deny the antecedent. If you deny the consequent (modus tollens, which is what I was doing in my OP), you just need an If...Then...statement.

No I was not correct. Physics are massively branch dependant. While loops and If-else statements abound in a physics algorithm.

Which is why a CPU cannot handle much physics. They are for the most part not optimized for branching. Yes they do have branch logic, but it set up in a "just in case" manner. A CPU doesn't know whether the code is going to branch or not unti it does so. A PPU however KNOWS the code is going to branch and is therefore set up to process things in a manner that speeds up branching code.

Well, although you used questionable arguing techniques, you have just uncovered a flaw in the logic I was using. I assumed that since your conclusion was the same as mine, your argument was correct. That's affirming the consequent, and it is and invalid form of argument. You are right and I am wrong in this case.

But I assure you, none of this flawed logic was in my original argument.

The OP has some serious logic problems and jumps to some major conclusions on some things. A CPU can render 3d graphics and a CPU can compute physics. Then again, younger gamers were probably 5 years old when CPU's were all that was around for 3d graphics so i don't slight him the inaccuracies in comparing a CPU to a GPU. The only question is, is the CPU beefy enough to compute physics AND 3d graphics rendering AND all other game logic at once. No, it's not.

I know that a CPU can render graphics and a CPU can compute physics. I remember the games that used CPU graphics. I have played games that use CPU physics. What I am saying is that a CPU cannot do physics or graphics in future games - at least, they can't if the physics is going to get much better.

Jesus H. Christ in a handbasket stop already. Graphics calculations do not have conditionals. Ok, well technically the shader 3.0 model allows for this, but you have to be careful as it can be extremely slow for the obvious reasons. PPUs are better than CPUs for physics, much better. Thats fine. But the hardware architecture of a GPU is completely different than that of a ppu or cpu and it is not suited for physics calculations. A current gen gpu dedicated 100% to physics calculations would not run faster than a cpu. Not only that, but it would not run faster than a cpu that is also handling other aspects of the game.

I understand you're in high school now which means you're in the big league of algebra and geometry, but you clearly speak of things you know nothing about and I'm begging you to stop it.

Okay. I admit it, I know nothing about branching. Please ignore all of my previous comments on branching. I was trying to apply a logic method that doesn't work. You are right and I am wrong in this respect.

I vote we hire someone who actually does the programming to straighten all this out. The argument here is by a bunch of hardware enthusiasts. Its basically pointless without the people who are actually making the games and know the real bottlnecks. Im afraid I have no faith in the claims here regarding what the bottlenecks in current games are.

Thanks for your opinion on the matter. Your know more than I do, so if anything that I say below is wrong, please explain to me what is wrong with it and I will retract it.

Nevertheless, lets dumb the system down like all us hardware people do.
So lets say the PPU can do 50 times more vector calculations per second than a CPU. Thats great and all, but how easily and efficiently can it be integrated into todays gaming architecture? So lets say that a game sends 1000 objects have their physics calculated by the physics card. How does the game know where everything is? The physics card has to alert the cpu as to where all the objects are so the CPU can tell it what to do next, and this has to happen, as well as tell the video card what to display. Therefore it is a two way street, with an intense amount of bandwidth needed, and its possible that the CPU overhead for all that communication could be equal to what woule be taken up if the CPU were to calculate 50 times less objects.

Yes, I completely agree with this. But it actually seems to suppot my agrument. Let's see, we have extra CPU cycles. We can either use them for communication with a PPU and get 30,000 objects, or we can use them directly for physics and get 2,000 objects. A PPU still sounds like the best option by far.

Now we give it 3 years and all of a sudden were at less than 7 times slower than PPU's. (quad-core this november, at least 8 cores in the next 3 years, along with an increase in performance per core).

Assuming that PPUs will never improve beyond 30,000 objects, you are correct. Within five years, CPUs will probably be able to get close to a present-day PPU in terms of # of objects. But in five years, think about how much the PPU will have improved. Even if it goes on an upgrade cycle simillar to that of the sound card, it will have more than the original 30,000 objects.

Also, since were in the realm of logic, lets look at the jobs of the proccesors in the computer.

CPU-General purpose central computer.

GPU-Graphics interface acceleration

Audio-Audio interface acceleration

Now, notice that the two main processors besides the CPU are dedicated to the interface between the user and the computer. If we start adding internal processors to do internal work, where does it end?

That's why CPUs will still need to get faster and are still going to be important. If we add more and more dedicated processors, the CPU will have more and more things to coordinate and control. As you said earlier in your post, however, doing it this way is still faster than directly asking the CPU to do everything. And if add-in cards do become more popular, better interfaces will surely be developed to support them.

To those who say that AI has more respective possiblity on current CPU's than physics and doesnt require more processing power is simply uninformed. I am doing research under a professor on AI, and I promise you computational power is a HUGE bottleneck. Another possible add on card could be a chemical add in card, to make sure that all the chemical reactions going on in a scene are appropriate. The point is that the CPU is accelerating at an exponential rate, and I think moving internal computations that the CPU is currently responsible for to specialized cards is a step in the wrong direction. Making the GPU into a general purpose processor capable of physics is stepping even farther in that wrong direction.

On the subejcts of AI, I understand how an AIPU could make the AI larger. Every live object in the game could potentially have its own AI script running in real time. But what the AIPU won't do is make AI smarter. You need better algorithms for that. Even if you have millions of AIs running at once, they are all going to make the same dumb decisions.

I think that AI is a better use for extra CPU cores than physics. On the list of factors affecting game experience, AI is probably, to most people, below physics (I'm talking about amount of AI, not intelligence of AI. Intelligence of AI is probably the highest factor on the list).

And finally, to be honest, at this point I'm not really a supporter or a denouncer of the AIPU. It's way too early to tell what this thing is capable of. But if I tried to argue in favor of the AIPU as well as the PPU, everyone here would call me a lunatic and consider everything I say, no matter how logical, a complete fallacy. So I think I'll stick with the PPU right now.

If you were to ask me, I would say that on average hardware engineers (EE majors that does IC design etc.) are more intelligent than CS majors. In fact, I think that EE is -on average- more difficult than CS. But it doesn't really matter...

EE and CS are two different fields and you can't really compare them. I personally will not be majoring in either of them (I will be majoring in physics, however ironic that is). But saying what you said is like saying that a geology major is smarter than a biology major. There are some things a biologist knows that a geologist doesn't, and vice versa. There are also some things that a person in both fields would know. But you can't really say that one knows more than the other.

Aside from the obvious that PPU performance is likely to increase, you have a valid point.

Aside from the fact that you are simply ignoring something that completely changes the outcome of the argument, you are correct.

Yes, there may (will?) be a point when reintegration makes sense. Look at sound cards. I currently do not have the need to a non-integrated solution. In fact, my last soundcard purchase was an Aureal based board probably in 2000 or 2001. In the early/ mid 90's integrated audio wasn't really all that hot. Neither was integrated video. Look at the power of some of the integrated GPUs nowadays (yes I am somewhat contradicting ym previous post): you can actually play games on them...

Integrated works. It will never work as well as dedicated processors, but it works. What doesn't work is asking the CPU itselft to do those things. You can play games with integrated graphics, but can you play games with nothing but a CPU (I am referring to today's games)?

Excellent question. If someone knows the answer to that with high certainty, I have some money that I need help investing
If you look at it, for most tasks, where high performance in a single area is important, there are dedicated processors: Graphics cards, the "x-fi" abomination, TCP offloading network cards for servers and gamers with too much loose change and RAID cards for people that need to read lots of files quickly. All these solutions are designed to keep what I would call "tedious" tasks from the CPU so that it can do its thing. I have long been someone who thinks that there will be a general trend towards more application specific ICs in a comptuer. Whether there end up integrated on a CPU die, as U_M pointed out, on a dedicated bus, such as the initiative that AMD appears to be pursuing or on a standard expansion slot card, doesn't really matter.

I agree with everything wirtten here. A single chip simply cannot do everything today's games ask it to do. We need more dedicated processors. And whether those are all integrated onto one die, onto one mobo, or onto one expansion card doesn't really matter. Any of these solutions would be fine with me. I'm not going to be like Terra and say that GPU physics suck while PPU physics dominate. I don't own a PPU (yet), so I'm unbiased. ANY physics solution that is noticeable better than what we have now is good.

That is true. My little semester long machine learning class made that rather clear. However, just because computational power is a bottleneck does not mean that there is an "easy ASIC" solution for this. Are all computations similar? Are there optimized hardware solutions for these repeating computations? Can they be parallelized or will we need a single high-speed solution? Are AI algorithms' calculations homogeneous, i.e. portable from my neural-net implementation to some different, instance classification algorithm? I don't know the answers, but these questions may be limiting the the advancement of AI-ASICs.

Like I said before, more processing means more AI, not better AI. Better AI needs better software algorithms. Whether or not those algorithms will need more processing power is unclear at this point, because no one has come up with a reasonable alternative to what we use today (okay, there is genetic programming, but that requires several months of runtime on a room-sized supercomputer to figure out the optimal configuration of one nonliving object.)

In the extreme, the PPU should take care of that. When we get to the point of simulating all atoms' interactions in the scene, we will only need a PPU, nothing more

I understand you are being sarcastic here. But when we get to the point of atomic level simulation, the chip that does it would have more than enough processing power to do everything else too, even it if is horribly inefficient at other jobs.

That was actually me If the collision detection algorithm (which is partially what he PPU does, if I understand it corretly) was better, I would not get stuck, since I would not "sink into" a couch. Yes, software is behind the hardware, but the nice idea is that Ageia is not just throwing out a PPU and saying: "so lads, go write some assembler", but linking a usable "physics engine" with the whole thing, which may make that work a lot easier... then again who knows and we have gotten WAY off topic.

You're right, that is way off topic.

Oh, and BTW everyone, please notice how I always respond to EVERY post, even if that requires me to admit that part of my argument was incorrect. I am not like Terra, who simply ignored any post that he didn't have a prompt rebuttal for.

/longest post of them all
 
I just noticed a huge mistake in one of my earlier posts:

If you got my age from my sig, I suggest you read the line below that one.

I'm sorry if that confused or offended anyone. I forgot that I changed my sig a few months ago. It used to mention a state award that I recently receieved in the subject of computer science. No, I am not saying that you are so dumb that you should be in the US government or anything like that :p .
 
HOCP4ME said:
That's because you have the premises wrong. The premise "If this thread were useful, the text would be in green" is incorrect. A useful thread does not have to have its text in green. What you should have written is "If a thread's text is in green, then a thread is useful", in which case your argument would be invalid as you would be denying the antecedent.

Think about Wikipedia's example. If the premise "If there is fire, then there is oxygen" was true, would it really be possible for there to be fire but no oxygen? No, it wouldn't. You can argue the premises, but not the logic.

You need the IFF (or was it IIF?) statment if you want to deny the antecedent. If you deny the consequent (modus tollens, which is what I was doing in my OP), you just need an If...Then...statement.
iff is different from iif. In any case, what I was saying was, your statement:
HOCP4ME said:
We know that a CPU cannot do graphics in real time.
is completely misinformed. You haven't been looking hard enough. Heck, the demoscene guys even write raytracers. Not to disparage them - they do some amazing stuff in 64k - but to show how posible it is. These guys whip out new demos in 48 hours or so. Realtime raytracing is very, very possible.

 
iff is different from iif. In any case, what I was saying was, your statement:

That's why I said I wasn't sure which one it was. I now know that it is IFF. Thanks for telling me.

is completely misinformed. You haven't been looking hard enough. Heck, the demoscene guys even write raytracers. Not to disparage them - they do some amazing stuff in 64k - but to show how posible it is. These guys whip out new demos in 48 hours or so. Realtime raytracing is very, very possible.

I am talking about the shader graphics used in today's and, for a while anyway, tomorrow's games. I am not talking raytracing. I am not talking about pong. I am talking about shader graphics that today's GPU's are responsible for. I thought I could shorten that to "CPU's cannot do graphics" because everyone would know what I meant. Apparently, I was incorrect, so I will write out the unabridged premise:'

A CPU with processing power equal to that of today's CPUs and,assuming there is no technological breakthrough that causes a quantum leap in computing power, the power of CPUs for the next 4-8 years, even when dual- or quad-core, is unable to render shader graphics of the quality and resolution of those used in today's grames at any reasonable framerate, turn-based and/or 2D games excluded.

^That is what I meant by "CPUs cannot do graphics". And you can test it, too.

Give me an example of realtime shader graphics of the amount and quality used in an average FPS game and I will retract everything I've said above.

You do raise a good point, however. Raytracing may eventually reduce the need for a GPU. If CPUs ever became powerful enough to do all of a game's graphics with raytracing, there would be no need for a GPU at all. Either that, or the GPU would still be required, but it would be reengineered for maximum raytracing power. None of that has anything to do with physics, however.

BTW, just to let everyone know, other opinions and arguments are always welcome. I will try to address each and every one, even if it requires me to admit that I am wrong. I know some of my posts may come across as rude, but that's just how I type. Please continue to point out any fallacies in my arguments. Unlike Terra, I am willing to change my mind in light of new facts.
 
That statement I disagree with a lot less. I think your attempts to predict where the industry will be in 8 years are pretty wild though.

It's not that I didn't understand what you meant, but that I couldn't possibly agree with a statement that was completely false. You should try and say what you mean. I assure you again that I am not being pedantic.

You also needn't concern yourself with being compared to Terra. This is at worst a mildly interesting discussion.
 
you are aware that raytracing graphics are generally more realistic than shader graphics. Also raytracing can do some things that shader graphics cannot, such as multiple refrelections.
 
HOCP4ME said:
I am talking about the shader graphics used in today's and, for a while anyway, tomorrow's games. I am not talking raytracing. I am not talking about pong. I am talking about shader graphics that today's GPU's are responsible for.

Give me an example of realtime shader graphics of the amount and quality used in an average FPS game and I will retract everything I've said above.
Apparently you didn't try the demo I linked - the quality is pretty dang good, even if the resolution is really low. The framerates are tolerable, the scene is pretty amazing, the curved surfaces are really curved, that kind of thing. And raytracing is pretty dang parallelizable - POV-Ray (a non-realtime raytracer with much, much higher quality!) gets like 99% improvement from one CPU to two. Thus, I think in the days of quad/octal/many-core CPUs, doing realtime raytracing at "modern" resolutions will be entirely practical.

Adding specific-purpose *PUs to a computer seems counterproductive when you could put in more generalized units. For example, the APU and PPU and GPU could all be implemented as floating-point units, with an integer-based unit or two to control the whole mess. Then if you've got a more strategy-based game (Half-Life 3?) you can dedicate more resources to the AI; with a more action-based game like the one the PPU makers are showing off you can allocate for physics; and Myst Eleven can have uber leet graphics. Thus, the application devs decide what is most important for good gameplay, rather than (indirectly) you by what hardware you buy. With a common high-speed bus (like HyperTransport) on your system, you could plug in an upgrade module that makes every game faster, rather than just ones that use the [ACGP]PU.

 
unhappy_mage said:
Adding specific-purpose *PUs to a computer seems counterproductive when you could put in more generalized units. For example, the APU and PPU and GPU could all be implemented as floating-point units, with an integer-based unit or two to control the whole mess.
Indeed, but that doesn't mean that a PPU is a bad solution in the meantime, just like graphics cards are not a bad solution until your idea becomes reality.
 
One problem I dont like about PPU's that nobody has mentioned, and dooms them in my eyes, is that apparantly they introduce another latency loop. That is why you typically LOSE frames with a PPU, even if it's just a few after heavy optimization by Ageia, over not using one at all (even if you might get better physics with it on, you still get a slightly SLOWER framerate).

Because the CPU has to send data to the PPU (over a slow external bus, at least compared to the internal speeds of chips) and then wait to get it back. There's just no way around this additional game instruction loop that slows you down.

That is why I prefer physics on a CPU. You dont have that latency because it's internal. I'd rather have less physics than latency.

As well I harken to Carmack's complaint: It isn't clear that large amounts of physics make a game better, in fact, they make a game easy to "break" (tons of boulders that can realistically roll anywhere sounds great..until you get randomly accidentally stuck behind them). Carmack has been correct so far in predicting a lot of the problems a PPU would have, such as making games run slower.

Physics are "politically correct", like AI, but they are vastly overblown. The physics in half life 2 certainly aren't very impressive in practice, despite claims to the contrary. They were "meh" after 5 minutes. They're ok. They didn't make the game.

This thread makes me wish for some of the guys on B3d though. Damn, that is the smartest computer forum on the web (Ars Technica is the one that PRETENDS to be smart, B3D is the one that actually is). There are plenty of guys there who program this stuff in various ways.
 
headless said:
The OP has some serious logic problems and jumps to some major conclusions on some things. A CPU can render 3d graphics and a CPU can compute physics. Then again, younger gamers were probably 5 years old when CPU's were all that was around for 3d graphics so i don't slight him the inaccuracies in comparing a CPU to a GPU. The only question is, is the CPU beefy enough to compute physics AND 3d graphics rendering AND all other game logic at once. No, it's not.

Why? This is why -

Video cards are better at 3d graphics rendering for one simple reason - they are WAY the hell more complex than your average CPU. Your average a64 has 70-80 million transistors or so. Your 7900gt has over 270 million transistors. It's also got a really fast interface with it's on board memory vs. a motherboard interface to CPU. Granted, video card CPU's run at a fraction of the clock speed that your main CPU does, but this is an offset of that many transistors in such a small place; it's simply a different approach - massive parallel computation at slower speeds overall wins out when you're working with graphics, and it also wins out when working with physics because both situations need massive amounts of computations done in parallel. Now, currently, CPU's are not designed for 3d graphics processing because not everyone needs to spend an extra 400$ on that capability when they buy a PC. John doe doesn't need that shit to check his hotmail account twice a week.

Likewise, people don't need to spend 300$ on a PPU when they buy a PC unless it's worth it to them.

CPU's can do physics calculations and CPU's can render 3d graphics - it's just not cost effective to shove all that onto a CPU die and not feasible to embed memory with such a high speed interface to the CPU. Video cards are needed as a separate card for other reasons such as a pair of outputs to the monitor...but PPU's could easily be absorbed by the CPU itself if it became cost effective...until people are willing to pay for that complexity when they buy their CPU, there'll be add-in PPU cards, simply because until that point it won't be cost effective for companies to put so much complexity on-cpu.


EXACTLY what i was thinking. Before the world of 3D accelerators, all gfx computations were done on the cpu. But the OP completely ignored this fact since it is detremental to his/her argument. Also the demo scene is awash with amazing looking gfx and physics demos which use ONLY the cpu. These demos sometimes also use most of the effects we see on gfx cards, such as texture filtering, bump/normal mapping, realistic water, Anti-aliasing etc. There are also numerous demos which use raytracing engines to provide hyper realistic reflections/refractions/caustics and true spherical geometry (i.e real curves and spheres NOT made from polygons). Again entirely done on the CPU. But the single biggest killer of the OPs point is a little game from 2000, called OUTCAST which was rendered ENTIRELY ON THE CPU. This game had a voxel generated landscape, with high polygon characters (for the time), and effects such as triliniear filtering, bump mapping, anti-aliasing and depth of field.

Also if the CPU cannot do physics calculations then how the hell did the Havoc/Novodex API's run? Exactly. They are software physics engines calculated with the CPU. PhysX is based on the novodex engine.

While its true that the CPU cannot match the PPU for the shear number of physics calculations per second. Saying a CPU cannot do it at all is just plain retarded.

There is nothing wrong with people asking for physics calculations to be done on the extra core of a cpu because hardly any games out there actually take advantage of the extra processing power of dual core setups. So the extra core is sitting there idle when it COULD be put to use doing extra physics calculations. Nothing wrong with wanting that. Not to mention that all dual core cpu's are 64bit. So they will be even faster on a 64bit OS with a properly written software physics API, closing the gap with the PPU again.
 
HOCP4ME said:
That's because you have the premises wrong. The premise "If this thread were useful, the text would be in green" is incorrect. A useful thread does not have

/longest post of them all

ANNOYING AS HELL
 
I apologize if my earlier post implied that EE's are less intelligent than CS folk. I dont think either is smarter at all. I was just saying that generally we hardware enthusiasts are relatively ignorant about the programming that makes all the hardware go. Just as people who focus much more on software are relatively ignorant to how that software is being implemented at a hardware level. Thus arguing for one architecture over another without considering things on both a hardware and software level is flawed.
 
Back
Top