2017-12-04 3 views
0

Auf einem CUDA-Stream können wir einreihen:Ist es möglich, Aktionen aus einem CUDA-Stream irgendwie zu entfernen?

  • Einführungen (Kernel, Rückrufe)
  • Ereignis-Operationen (warten auf, Trigger)
  • Speicheroperationen (Kopieren, Set, befestigen)

Aber es gibt keine API-Aufrufe für von alle diese Operationen aus der Warteschlange. Gibt es Möglichkeiten, denselben Effekt zu erzielen - für einige oder alle dieser Arten von Operationen?

Hinweis: Vorschläge zur Zerstörung des Streams nicht ausgeschlossen.

Antwort

0

Für Starts können wir unseren Kernel und/oder Rückrufe schreiben:

  • Nehmen Sie die Adresse eines (Host oder Geräteseite) „abgebrochen“ Flag als Parameter
  • Abfrage, die Flagge der Wert vor etwas anderes tun
  • Wenn die Flagge oben ist, nichts tun und nur zurückkehren.

In diesem Fall kann man sie durch Setzen ihrer Flagge abbrechen. Ein bisschen verschwenderisch, aber nicht schrecklich.

Ich bin mir aber über alles andere nicht sicher.

Verwandte Themen