Ich habe diese beiden Seiten gelesen: Understanding Streaming Multiprocessors (SM) and Streaming Processors (SP), How Concurrent blocks can run a single GPU streaming multiprocessor? Aber ich bin immer noch verwirrt über die Hardware-Struktur.Wie können verschiedene Blöcke in einem SM laufen (Streaming Multiprozessor)
- Ist SM eine SIMT-Struktur (single instruction multi thread)?
Angenommen, es gibt 8 SPs in einem bestimmten SM. Wenn verschiedene Blöcke in einem gleichen SM ausgeführt werden können, haben diese SPs unterschiedliche Anweisungen. Also mein Verständnis ist: SM wird verschiedene SP verschiedene Anweisungen geben.
- Werden die Threads in einem Warp gleichzeitig ausgeführt?
Angenommen, es gibt 8 SPs in einem bestimmten SM. Ein Warp ist im SM. Da mehrere Warps im SM laufen können, nehme ich an, dass 4 SPs diesen Warp ausführen. Es gibt 32 Threads in diesem Warp, aber nur 4 SPs können sie ausführen. Also wird es tatsächlich 8 Zyklen dauern, um diesen Warp zu starten? Ich hörte auch jemand sagte, dass alle Threads in einem Warp seriell laufen. Ich weiß nicht, was die Wahrheit ist ...
ähnliche Frage [hier] (http://stackoverflow.com/questions/12212003/how-concurrent-blocks-can-run-a-single-gpu-streaming-multiprocessor) und [hier] (http: // stackoverflow.com/questions/20771358/how-do-a-sm-in-cuda-run-multiple-blocks- simultan) –
vielen Dank –