2017-05-23 2 views
4

Was ist der Unterschied zwischen einem Oberflächen- und Texturobjekt in CUDA? Wann sollte ich das eine oder andere benutzen?CUDA Oberflächen gegen Texturen

Soweit ich das aus der Entwicklerdokumentation ersehen kann, sind sie genau gleich. Beide scheinen CUDA-Arrays zu sein, die einen speziellen Texturspeicher verwenden. Der einzige Unterschied scheint die API-Methoden zu sein, die auf den Speicher zugreifen.

Antwort

6

Textures sind schreibgeschützt, surfaces sind beschreibbar und lesbar. Die Oberflächen-API wurde später eingeführt, um diesem Unterschied Rechnung zu tragen.

Verwenden Sie Texturen für Daten, die Ihre Kernel nur lesen, Oberflächen, wenn sie auch darauf schreiben.