Nur ganz harten CUDA-Fans zu empfehlen
April 19, 2014
Ich hatte schon viele Artikel der Reihe „CUDA, Supercomputing for the Masses“ von Rob Farber auf der Dr. Dobb’s Webseite gelesen und war recht angetan. Das war damals 2009 eine der wenigen Möglichkeiten, etwas anspruchsvolleres über CUDA zu lesen.
Der Titel “CUDA Application Design and Development” des Buches erweckte in mir die Vorstellung, dass dieses Buch allgemeine Richtlinien und Prinzipen für die Erstellung von CUDA-Applikationen zum Thema hätte.
Leider ist das Buch aber eher nur eine Ansammlung von Artikeln mit Themen, die den Autoren anscheinend interessiert haben, die aber in einem Lehrbuch über CUDA nichts verloren haben. Machine Learning mag ja ein ganz interessantes Thema sein, aber dann sollte man das Buch auch „Machine Learning with CUDA“ nennen. Der Autor wird sich hier selbst nicht gerecht.
Hier meine Kritikpunkte im einzelnen.
- Kap. 2 ist viel zu sehr mit der Theorie des Machine Learning’s beschäftigt. Funktoren kann man auch bei einfacheren Algorithmen verwenden.
- Makros sollte man nicht in C++ verwenden (S.47)
- Ein #include mitten im Code ist auch übel (S.47)
- Kap. 8 über die Ausführung von CUDA-Code auf x86-Prozessoren bezieht sich auf ein kommerzielles Produkt der Firma PGI. Das ist eigentlich ein Kapitel Werbung und nicht als solche gekennzeichnet.
- Die 4,5 Seiten Beispielcode enthalten sehr viel Mathematik, aber wenig CUDA (S. 57ff).
- In Kapitel 9 wird sehr viel OpenGL-Code abgedruckt. Das interessiert in einem CUDA-Buch nicht.
- Das Framework GPU Ocelot beschreibt der Autor als „popular, actively maintained“ (S.187). Das ist stark übertrieben, es gab pro Jahr einen Vortrag zu diesem Thema und auch nur jährlich ein Release.
- SWAN und MCUDA waren mal Forschungsprojekte und sind laut ihrer Webseiten seit 2010 nicht mehr aktiv.
Es gibt dennoch ein paar interessante Teile im Buch. Allerdings muss man sich für diese das Buch nicht extra kaufen, denn sie werden in neueren Büchern besser erklärt. Wenn man aber begeisterter CUDA-Fan ist, kann man das Buch schon lesen und evtl. auch ein paar Anregungen erhalten.
- Rob Farber
- CUDA Application Design and Development
- Morgan Kaufmann
- 2011
Siehe auch die Renzension bei Amazon.