Bei der Ausführung von OpenCL-Hostanwendungen™ auf einem angeschlossenen Entwicklungskit, während IOMMU (z. B. intel_iommu) in einem Linux-Kernel aktiviert ist, kann ein Kernel-Panik auftreten und zum Hängen des Hosts führen.
Dies kann auch geschehen, wenn "aocl diagnose" und "aocl program" bestanden werden. Der Fehler tritt auf, weil die OpenCL™ Mainboard-Supportpakete (BSPs) für die Entwicklungskits SR-IOV nicht unterstützen.
Um dieses Problem zu umgehen, deaktivieren Sie die IOMMU-Funktionalität:
Zum Beispiel auf CentOS7.4, mit grub2, UEFI und intel_iommu:
1. Bearbeiten Sie /etc/default/grub und löschen Sie die folgende Zeile.
intel_iommu=ein in GRUB_CMDLINE_LINUX
2. Aktualisieren der GRUB-Konfigurationsdatei
grub2-config -o /boot/efi/EFI/centos/grub.cfg
3. Neustart
4. Überprüfen Sie /proc/cmdline
Stellen Sie sicher , dass intel_iommu=on nicht in der Kernel-Befehlszeile angezeigt wird.
Diese Problemumgehung gilt nicht für die Intel FPGA Programmable Acceleration Card (PAC), da das OpenCL™ BSP SR-IOV unterstützt. Wenn IOMMU beim Einsatz von PAC deaktiviert ist, lesen Sie die Anleitungen zur Aktivierung des Intel IOMMU-Treibers im Intel® Acceleration Stack Quick Start Guide.