Artikel-ID: 000097576 Inhaltstyp: Kompatibilität Letzte Überprüfung: 16.05.2024

Warum stimmt das oneAPI FPGA Hardware-Ergebnis nicht mit dem Emulationsergebnis für die Fließkommadivision überein?

Umgebung

    Intel® Quartus® Prime Pro Edition
BUILT IN - ARTICLE INTRO SECOND COMPONENT
Beschreibung

Wenn es in Ihrem oneAPI-Design eine Fließkomma-Divisionsoperation gibt, können Sie inkonsistente Ergebnisse zwischen oneAPI FPGA Hardware und dem Emulator finden, da die beiden Kompilierungsmodi unterschiedliche Rundungsmodi von Gleitkommaoperationen haben.

Nachfolgend finden Sie einen Beispielcode und ein Ergebnis:

Code: float res = 1.0f/1272;

Ausgabeergebnis: Das Emulatorergebnis ist 0,000786163, aber das Hardwareergebnis ist 0,000786164

Lösung

Um dieses Problem zu umgehen, sollten Sie die Optionen "-fp-model=precise -no-fma" und "-Xsrounding=ieee" in Ihrem Kompilierungsbefehl verwenden.

Beispiel für einen Befehl:

icpx -fsycl -fintelfpga -Xshardware -Xsrounding=ieee -fp-model= precise -no-fma <source_file>.cpp

Diese Informationen sollen in einer zukünftigen Version des FPGA Optimization Guide für oneAPI Toolkits Benutzerhandbuch hinzugefügt werden.

Zugehörige Produkte

Dieser Artikel bezieht sich auf 1 Produkte

Intel® Stratix®

1

Der Inhalt dieser Seite ist eine Kombination aus menschlicher und computerbasierter Übersetzung des originalen, englischsprachigen Inhalts. Dieser Inhalt wird zum besseren Verständnis und nur zur allgemeinen Information bereitgestellt und sollte nicht als vollständig oder fehlerfrei betrachtet werden. Sollte es Widersprüche zwischen der englischsprachigen Version dieser Seite und der Übersetzung geben, gilt die englische Version. Englische Version dieser Seite anzeigen.