Jump to content
  • Advertisement
Sign in to follow this  
aws357

[PhysX] Testing gpu dispatcher, can't make sense of the error message...

This topic is 986 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

So, after tinkering for a while on PhysX, I have a script that build "noodles" of capsules and I am quite happy with it. 

 

However, I would like to try using the GPUs (I have 1 Geforce and 3 tesla cards) to do the simulation instead of the CPU.

 

Here is what I have...

//sceneDesc.cpuDispatcher = PxDefaultCpuDispatcherCreate(1);		//Creates default CPU dispatcher for the scene

	
//testing GPU dispatcher
PxProfileZoneManager* profileZoneManager = &PxProfileZoneManager::createProfileZoneManager(gFoundation);
PxCudaContextManagerDesc cudaContextManagerDesc;
PxCudaContextManager* cudaContextManager = PxCreateCudaContextManager(*gFoundation,cudaContextManagerDesc,profileZoneManager);

sceneDesc.gpuDispatcher = cudaContextManager->getGpuDispatcher();
	
//testing GPU dispatcher

As you can see, while using the cpuDispatcher is easy, using the gpuDispatcher requires quite a number of lines of codes.

 

However when the script is launched I get 1 error lines...

 
..\..\PhysX\src\NpPhysics.cpp (229) : invalid parameter : Physics::createScene: desc.isValid() is false!

... along with many warnings...

'phystest3.exe' : Chargé 'C:\Windows\SysWOW64\<multiple name>.dll', Cannot find or open the PDB file

But these warning don't stop the script from working properly when using the CPU.

 

Before anyone asks, I updated Cuda to the latest available on nVidia site, and updated my graphic drivers because I had an error message from the script itself telling me the Cuda version and graphic drivers on my machine were a bit old.

 

Searching google for this specific error return few useful links. I am at my wit's end as to what to do now.

Edited by aws357

Share this post


Link to post
Share on other sites
Advertisement

Don't know what script you are referring to, but afaik you will also need a CPU dispatcher as not all PhysX simulation will run on the GPU. Also, having a GPU dispatcher is not sufficient to allow GPU simulation as you have to pick and choose what you need to simulate on the GPU as PhysX have to idea about your current use case. I would check the documentation as it explains how to do exactly what you are trying to achieve, probably should take a look at the samples if possible.

Share this post


Link to post
Share on other sites

The script in question is just a thing I am doing with PhysX...

 

This thread on devtalk made the assumption that a GPU dispatcher was enough to do rigid body dynamics on GPU... 

 

So that's an interesting point you are making here. 

 

I've looked up the samples in Physx 3.3.0 SDK and only found the gpudispatch in PhysXSample.cpp but it does not provide more explanation than the thread I linked to.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!