摘要 |
<p>Eine Ausführungsform der vorliegenden Erfindung führt eine Technik zum Optimieren einer Parallel-Thread-Ausführung in einer temporären Einzel-Anweisung-Mehr-Thread-(SIMT)-Architektur aus. Wenn die Threads in einer parallelen Thread-Gruppe temporär auf einer gemeinsamen Verarbeitungs-Pipeline anstatt räumlich auf parallelen Verarbeitungs-Pipeline ausführen, können Ausführungs-Zyklen vermindert werden, wenn einige Threads in der parallelen Thread-Gruppe aufgrund von Divergenz inaktiv sind. Ähnlich kann eine Anweisung zur Ausführung mittels nur eines Threads in der parallelen Thread-Gruppe ausgeliefert werden, wenn die Threads in der parallelen Thread-Gruppe eine skalare Anweisung ausführen. Reduzieren der Anzahl von Threads, welche eine Anweisung ausführen, entfernt unnötige oder redundante Operationen zur Ausführung mittels der Verarbeitungs-Pipelines. Information über skalare Operanden und Operationen und Divergenz der Threads wird in der Anweisungs-Auslieferungs-Logik benutzt, um unnötige oder redundante Aktivität in den Verarbeitungs-Pipelines zu eliminieren.</p> |