Frage

Es hat eine deutliche Verschiebung hin zu datenparallele Programmierung über Systeme wie OpenCL und CUDA in den letzten Jahren, und doch veröffentlichten Bücher sogar innerhalb der letzten sechs Monate noch nie mit dem Thema Daten paralleler Programmierung erwähnen.

Es ist für jedes Problem nicht geeignet, aber es scheint, dass es eine große Lücke ist hier, dass nicht adressiert wird.

War es hilfreich?

Lösung

Zunächst einmal werde ich darauf hinweisen, dass die gleichzeitige Programmierung nicht unbedingt gleichbedeutend mit dem parallelen Programmierung ist. Die gleichzeitige Programmierung ist über Anwendungen von lose gekoppelten Aufgaben zu konstruieren. Zum Beispiel könnte ein Dialogfenster hat Wechselwirkungen mit jeder Kontrolle als separate Aufgabe implementiert. Parallelprogrammierung, auf der anderen Seite, ist explizit über die Lösung einiger Rechenaufgabe in mehr als einem einzigen Stück Ausführung Hardware verbreitet, im Wesentlichen immer aus Leistungsgründen von einer Art (Anmerkung: noch zu wenig RAM ist ein Performance-Grund, wenn die Alternative Swapping.

Also, ich habe im Gegenzug zu fragen: Welche Bücher sind Sie beziehen? Sind sie über parallele Programmierung (ich ein paar von ihnen haben, gibt es eine Menge interessante Theorie ist es), oder über die parallele Programmierung?

Wenn sie wirklich über die parallele Programmierung sind, werde ich einige Bemerkungen machen:

  • CUDA ist ein schnell bewegendes Ziel, und hat seit seiner Veröffentlichung gewesen. Ein Buch heute darüber geschrieben würde durch die Zeit Halb veraltet es sich in Print.
  • Standard des OpenCL wurde knapp vor einem Jahr veröffentlicht. Stabile Implementierungen kam in den letzten 8 Monate oder so. Es ist einfach nicht genug Zeit gewesen, noch geschrieben, ein Buch zu bekommen, geschweige denn überarbeitet und veröffentlicht.
  • OpenMP ist in zumindest einigen der parallelen Programmierung Lehrbücher abgedeckt, die ich benutzt habe. Bis zur Version 2 (v3 gerade veröffentlicht wurde), war es im Wesentlichen alle über Daten parallele Programmierung.

Andere Tipps

Ich glaube, die mit Parallel-Computing akademisch arbeiten heute in der Regel aus dem Cluster-Computing-Bereich kommen. OpenCL und CUDA Verwendung Grafikprozessoren, die mehr oder weniger unbeabsichtigt in Allzweckprozessoren entwickelt haben, zusammen mit der Entwicklung von fortgeschrittenen Grafik-Rendering-Algorithmen.

die Grafik Menschen jedoch und die High Performance Computing Menschen haben seit einiger Zeit, um sie „zu entdecken“, und eine Menge oder Forschung wird tut in GPUs für allgemeine Rechen verwendet wird.

„immer“ ist ein bisschen stark; gibt es Ressourcen gibt ( Beispiel ), die Datenparallelität Themen umfassen.

Das klassische Buch "The Connection Machine" von Hillis war alle Datenparallelität. Es ist einer meiner Favoriten

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top