LabVIEW Idea Exchange

cancel
Showing results for 
Search instead for 
Did you mean: 
0 Kudos
polyglot

fused multiply-add(FMA) for LabVIEW ?

Status: New

I here IEEE 754-2008 requires fused multiply–add(FMA) operator....

2 Comments
wiebe@CARYA
Knight of NI

IEEE 754-2008 specifies the fused multiply–add(FMA) operator.

 

The operation will be (are) supported by hardware in CPU instruction sets from AMD and Intel.

 

AFAIK this doesn't make it required.

 

I doubt there will be any gain for LabVIEW.

fefepeto_kb
Member

I think that the FMA with many other instructions in the modern CPU instructions sets could have an impact, however small it is, on customer applications, especially the large scale ones. On the other hand I found these two threads, that link out to many others that provide a little peak inside why it was not a priority for NI back then: LabVIEW compiler and modern CPUs - NI Community

LLVM and LabVIEW - LabVIEW General - LAVA

 

LLVM is perfectly capable of supporting the new instruction sets. And I think it shall be the compilers job to identify the cases when the FMA for example makes sense and use the instruction to optimize the run time performance. On the other hand backwards compatibility is a big issue in software engineering, and can be a big gating factor to such changes. I hope some day LabVIEW will get support for the updated instruction sets, but I estimate the impact for my use-cases to be negligible.