PDA

View Full Version : Physic with OpenGL



DarkShadow44
10-03-2009, 12:45 PM
HI,

is there a possibility to use the PPU (Physic Processing Unit) of Nvidia or ATI to calculate Physic WITHOUT having to use their SDK ?

I want to calculate things with that chip, is that possible ?

I want it for helping the GPU and CPU...

Could I also use one CPU for the main programm and another for physic/network/... ?


I don't want to to so complicated thinks as in the examples ^^

Rosario Leonardi
10-03-2009, 02:01 PM
HI,

is there a possibility to use the PPU (Physic Processing Unit) of Nvidia or ATI to calculate Physic WITHOUT having to use their SDK ?
Only Ageia build PPU, nVidia after acquiring Ageia stopped the production.
And no, you can't use any hardware device without the driver and the SDK that use the driver.

I think you should go in openCL forum.
http://www.khronos.org/message_boards/viewforum.php?f=27

DarkShadow44
10-03-2009, 02:57 PM
Why ?
Aren't these functions defines which I can use ?
So OpenGL is just a API that uses the same hardware as the official SDK of nVidia, or not ?
The functions of DS or PSP where also gotten by #define, or not ?

2) Isn't OpenCL another programming language ?

3) I thought ATI also uses a extra chip for doing physics...

Alfonse Reinheart
10-03-2009, 04:15 PM
So OpenGL is just a API that uses the same hardware as the official SDK of nVidia, or not ?

No. Unless you're using NVIDIA extensions, OpenGL is just a cross-platform rendering system. NVIDIA's SDK (as far as it uses OpenGL) is built on top of OpenGL, not underneath it.


The functions of DS or PSP where also gotten by #define, or not ?

I don't think either of those uses OpenGL. The PSP might use OpenGL ES, but I'm not sure of that.


2) Isn't OpenCL another programming language ?

Yes. OpenGL is designed for rendering images. OpenCL is designed for general-purpose computation. Physics is more inline with general-purpose computation than rendering images.

yooyo
10-03-2009, 04:49 PM
3) I thought ATI also uses a extra chip for doing physics...


ATI doesnt have any physcs support. There is no any magic PPU chip on gfx board. NVidia Physx is just implementation of Ageia Physx API on GPU.

OpenGL is rendering API. It is best to use for that. Anyway, you can use it for number crunching too but it is much easier to crunch numbers using CUDA or OpenCL.

Rosario Leonardi
10-04-2009, 03:55 AM
@DarkShadow: I think you are making a bit of confusion. OpenGL is only for drawing, but since GPU power became more powerfull of CPU people start using some trick to make some computation on it. The simpler example is particle animation. They use some texture to store position end velocity and use a shader to update these value.
Now that GPU are totally programmable you can use more complicate tricks to store information in buffer to computer some basic physics with openGL but actually it's a lot better to use specific language for them, like openCL.

DarkShadow44
10-05-2009, 02:00 PM
But how can I programme the GPU ?
I downloaddew OpenCL but OpenCL.dll is missing...

dletozeun
10-05-2009, 02:05 PM
But how can I programme the GPU ?
I downloaddew OpenCL but OpenCL.dll is missing...

By installing the runtime library?
Don't know... ask on OpenCL forums... really. :)

yooyo
10-05-2009, 03:02 PM
You need OpenCL driver. Depending on uderlaying hardware, download proper driver version from NVidia or AMD/ATI website.

DarkShadow44
10-08-2009, 02:49 PM
So PhysX does run on the GPU ?
Because I don't see any difference between software and harware rendering...

Isn't software CPU and hardware GPU ?

I thought PhysX is using an EXTRA chip on the graphic card ?

And how can I programm on the GPU without OpenCL ? (CUDA ?)

Jan
10-08-2009, 05:15 PM
"So PhysX does run on the GPU ?"

Sometimes, but currently only on nVidia and even then not always.

"Isn't software CPU and hardware GPU ?"

Basically yes. Though "hardware" is more like "running on anything BUT a CPU."


"I thought PhysX is using an EXTRA chip on the graphic card ?"

No it doesn't.



"And how can I programm on the GPU without OpenCL ? (CUDA ?)"

Become an nVidia/ATI engineer maybe. In any other case, you just don't.


Jan.

Alfonse Reinheart
10-08-2009, 05:39 PM
And how can I programm on the GPU without OpenCL ? (CUDA ?)

Is there something wrong with OpenCL?

dletozeun
10-09-2009, 04:13 AM
So PhysX does run on the GPU ?


true on nvidia hardware.



Because I don't see any difference between software and harware rendering...
Isn't software CPU and hardware GPU ?


Yes. What kind of difference are talking about? About performances, quality?



I thought PhysX is using an EXTRA chip on the graphic card ?


No, AGEIA has built a dedicated chip for this but it never worked (economically speaking) because it was too expensive.



And how can I programm on the GPU without OpenCL ? (CUDA ?)


I don't think you can. You can use ATI Close To Metal, but it is ATI specific. With OpenCL you program any compatible harwdware from any manufacturer, so why using something else?

DarkShadow44
10-09-2009, 07:19 AM
I installed my drivers again, but OpenCL still doesn't work...

Can't you upload "OpenCL.dll" somewhere ?




Both. I used the sample of Nvidia, but it is the same if I run it with "hardware" and "software" .

Could I use shaders to simulate physics ?

dletozeun
10-09-2009, 09:44 AM
For your OpenCL problem, please go on this forum:
http://www.khronos.org/message_boards/viewforum.php?f=28

DarkShadow44
10-09-2009, 09:53 AM
Another questions: How can it be that my PC now supports a new extension ?
I didn't install new drivers, only a SDK..

And can I use shaders to simulate physics ?

dletozeun
10-09-2009, 10:02 AM
Another questions: How can it be that my PC now supports a new extension ?
I didn't install new drivers, only a SDK..


What extension? Which SDK? OpenGL does not have any SDK.
A driver update may bring up the support of an opengl extension if the hardware is capable. For example, the Mesa3d driver, 7.5 release has brought the support of fbo which was not the case in previous ones.



And can I use shaders to simulate physics ?


If you think that it is possible to implement a physical simulation algorithm in glsl or Cg, nothing prevents you from doing it. It is just that these languages are more designed for 3d rendering.