Was mussten die Hersteller ändern/hinzufügen, damit ihre Grafikprozessoren für OpenCL (oder CUDA) geeignet sind? Ich weiß, dass es Compute Units und Processing Elements (OpenCL) gibt. Aber GPUs waren früher in der Lage, parallel zu arbeiten, nur ohne den Komfort, so leicht programmiert zu werden. Was sind die wichtigsten Unterschiede in der Architektur?Was sind die Hauptunterschiede von GPUs, die von OpenCL/CUDA unterstützt werden?
Antwort
Die Art und Weise Sie die Frage impliziert, dass GPU-Anbieter der Gestaltung ihrer GPUs gestartet GPGPU-Standards zu unterstützen, wenn Tatsächlich wurden GPGPU-APIs wie OpenCL oder CUDA entwickelt, um vorhandene Fähigkeiten, die bereits in der Hardware vorhanden sind, verfügbar zu machen. Die einzige große Ausnahme ist Intel, die zum ersten Mal in ihren Ivy-Bridge-Grafiken OpenCL-Unterstützung haben wird.
Zwei große Hardwareänderungen, die GPGPU ermöglichten, waren die Hinzufügung von Fließkommaunterstützung und flexibleren Pipelines. Der Grund, warum Intel-GPUs OpenCL immer noch nicht unterstützen, ist das Design ihrer Pipeline, die nicht-grafische Workloads nicht einfach aufnehmen kann.
ziemlich keine, OpenCL/CUDA ist nur ein Compiler Schicht sie in die gleichen Shader-Einheiten wie GLSL kompiliert unten
OK, die Frage hätte es klären sollen. Es war im Grunde: Was waren Änderungen (wenn überhaupt), um es zu ermöglichen? Du hast darauf geantwortet, also danke. – rdoubleui