I am writing some CUDA kernel, but i want to know what the real number of thread which can work in parallel, as i found in G80 there’s about 12 MultiProcessors , every Multiprocessor has a group of SIMD’s , on evrey point of time the multiprocessor process half warp which means 16 thread (from that i understand the the Multiprocessor has 16 SIMD) , if that correct the Total number of threads (REAL) will be 12 X 16 = 192 in the ideal status. Is that right ?
You have some of your numbers confused. Each multiprocessor has only 8 stream processors (the SIMD units), and the number of multiprocessors available on the G80 depends on the card. The 8800 GTX has 16 multiprocessors (128 stream processors), and the 8800 GTS has 12 multiprocessors (96 stream processors).
The number of active threads can actually much higher than 96 or 128. Good performance often requires thousands of active threads. The hardware can rapidly switch between threads with no overhead. Running more threads than stream processors allows the latency of memory loads in some threads to be hidden by running calculations in other threds.