LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

64 bit vs 32 bit Labview on an AMD Opteron 6380

When running my code on an AMD Opteron 6380 processor, Labview 2014 64bit runs 4 times slower than when running with Labview 2014 32bit.  However the same code running on and INTEL Core i7 ran twice as fast with Labview 64bit vs 32bit.  Does anyone know why?  Note that the code is math intensive running a parallel loop that does not cummunicate with the outside world, i.e. no file access, property nodes, etc.Thank you.

0 Kudos
Message 1 of 4
(2,901 Views)

I haven't had much luck with AMD in the past. Do you know if the 6380 has full cores or is the floating point unit shared between two cores (as with many AMDs)?

 

How is the parallel FOR loop setup? What kind of "math"? How much work is there per iteration?

0 Kudos
Message 2 of 4
(2,876 Views)

Yes the 6380 FPU is shared between two cores.  I just ran a diagnostic I made up that generates an array of 1 million random numbers, takes the average of those, and then excutes that repeatedly in a parallel loop.  The 6380 showed a 20% to 30% improvement in speed between LV64 & LV32 bit depending on how many cores I told it to use.  So that seems to make more sense.  The other code that I was running that ran 4 times slower has a complicated clusters within a cluster structure including a large look up table array that is being passed around amoung several vi's.  If it is moving that large amount of data around in memory, instead of just the pointer, that might explain it.  But why then would the AMD run slower with 64 bit (by a factor of 4) when compared with the Core i7 which ran twice as fast, which kind of makes sense to me if it is moving that data around with twice the bandwidth?

0 Kudos
Message 3 of 4
(2,861 Views)

There is also an issue if the data contains NaN. See this disucssion. Slows down under 32bit.

0 Kudos
Message 4 of 4
(2,835 Views)