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
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.