Multithread-Problem

hi,

if i run my application as one thread per SM it work fine.

BUT

if i run my application as multithread per SM it get no result.

the code is too complex to post here. :-/
there should be a problem in the multithreading-process, but i don’t understand why it work fine if only one thread work on it’s own SM. in my case (an Geforce 560 TI) there are 8 SM’s, so there only work 8 threads at the same time.

please help.

thanks.

I think the best would be if you could reduce your code to a minimum sized program reproducing the error, so that someone could compile and run it and help you.

Hi,

what does “if i run my application as multithread per SM it get no result.” exactly mean?

Using compute capability >2.0 (?) you should be able to use ‘printf()’ to have a look what’s going in your kernel.

As JFSebastian mentioned, try to boil down the problem to its essential parts and post it.

yes, compute capability 2.1

“what does “if i run my application as multithread per SM it get no result.” exactly mean?”

each thread is able to be true or false in outcome. if a thread is true, the outcome filled in a list (array). otherwise the “false-outcome” won’t filled out in the list.

So all your threads give a “false”? Did you make sure that your thread assignment (e.g. int id = threadIdx.x+blockDim.x*blockIdx.x;) is correct?