2017-03-17 6 views
1

Ich denke über Möglichkeiten für Parallelität durch die Kombination von OpenCL und AVX auf Intel-i7-Plattformen, aber ich denke nicht, dass dies eine Möglichkeit ist. Obwohl ich weiß, dass die CPU und die iGPU die gleiche Speicherbandbreite teilen, bin ich nicht sicher, ob sie andere Hardware teilen?Welche Hardware führt OpenCL auf Intel Core Prozessoren aus?

Öffnet openCL auf der iGPU ("Intel Graphics Processor") oder den AVX-Einheiten ("CPU cores")?

enter image description here

+1

Wenn Sie nach GPU-Geräten fragen, wird iGPU zurückgegeben. Wenn Sie CPU-Typen abfragen, wird CPU zurückgegeben, Sie können beide gleichzeitig verwenden. Mein C3060 funktioniert gut genug. 12 Ausführungseinheiten von igpu> 1 Kern der CPU für das Streaming (und viel besser für Computing). Intel-Compiler ist gut genug, um SSE für diese CPU zu produzieren. Aber für i7 ist AVX sehr wahrscheinlich. –

Antwort

0

OpenCL können auf CPUs und GPUs ausgeführt werden. Wenn Sie das Zielgerät als Intel-CPU festlegen und das openCL mit dem Intel-Compiler kompiliert wird, ist es sehr wahrscheinlich, dass der kompilierte Code die SSE/AVX-Einheiten ausnutzen kann. Und Sie können auch Ihren eigenen vektorisierten Code im openCL-Kernel schreiben, um die AVX-Einheiten auszunutzen.

Verwandte Themen