Aufgrund eines Problems in Version 19.1 und 19.2 des Intel® FPGA SDK für OpenCL™ kann der Kunde beim Ausführen von OpenCL-Designs™ feststellen, dass die Kernel-Ausführung und die Speicherdatenübertragung nicht gleichzeitig ausgeführt werden können, selbst wenn keine Abhängigkeit im Host-Code besteht. Nachfolgend finden Sie ein Beispiel, dass es keine Ereignis-Abhängigkeit zwischen clEnqueueWriteBuffer und clEnqueueNDRangeKernel gibt, und zur Innovation dieses Befehls wird eine andere Befehlswarteschlange verwendet. Im Profilbericht wird jedoch die Kernel-Ausführung und die Datenübertragung in der Reihenfolge und nicht in Parallelität angezeigt.
Dies lag an einem Fehler in Version 19.1 und 19.2 des Intel® FPGA SDK für OpenCL™, der das verzögerte Starten der Kernel verursachte, wenn ein gleichzeitiger DDR-Zugriff vom Host und vom Kernel besteht. Die Kernel-Starts wurden verzögert, selbst wenn der Kernel und der Host auf einen anderen Teil des DDR-Speichers zugreift.
Diese falsche Abhängigkeit vom Starten des Kernels wurde in Version 19.3 des Intel® FPGA SDK für OpenCL™ behoben.