LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

SSE2 optimization removal to allow execution on ARM equipped PC's

Hello LabVIEW community. 

 

So, for years our application has been running nicely on PC as we wanted it to.. However, with the introduction of ARM processors, we now have the problem that our software will not run, citing SSE2 not being available. 

There is nothing in our code that requires SSE2, but we last updated LV with the 2017 version - here there is no option to remove requirement for compiling to SSE2 instruction set. 

With all I can find - we have two options:

1) State that we don't support ARM processor driven PC's

2) Upgrade LabVIEW to a more recent version where the ability to exclude SSE2 optimization seems to be back in. 

Option 2 is not very attractive, since we do very limited development, and the 2017 has everything we need - so to move to a substantial annual plan and not even be possible to buy a perpetual newer version is financially not very "sexy" for us.. 

 

Does the community know if there is an easy hack to remove SSE2 optimization on a LV2017 build either thru updating a config file or something else under the hood? 

 

Thank you in advance. 

 

0 Kudos
Message 1 of 4
(314 Views)

By "introduction of ARM processors", do you mean computers using Apple M1 and later processors? LabVIEW (non-RT) used to only work on x86 processors. They use completely different machine code from ARM processors, so you cannot just run x86 binaries on ARM and vice versa. Apple introduced a translation layer called rosetta2 that allows you to to this and I think some people on the forum managed to get LabVIEW running. NI introduced native support for Apple Silicon with LabVIEW 2023 Q3 and then dropped macOS support for future LabVIEW releases. Maybe you can talk NI into selling you a license for 2023 Q3.

 

LabVIEW 2017 and later requires SSE2 instructions, though there seems to be a private property that may be settable? https://labviewwiki.org/wiki/VI_class/Execution.SSE_Runtime_Optimization_property

Message 2 of 4
(255 Views)

Thanks for getting back to me cordm with quality proposal. 

 

Allow me clarify.. I'm talking windows 10/11 PC's with ARM processers - not the apple silicon. 

My understanding is that windows 10 and 11 runs native "emulation" similar to what rosetta offered on apple Silicons. However, it seems that when launching executables that I build on my LV2017 - the check prefaces loading anything.. 

I'm going to try out the "supersecretprivatestuff" in the ini file and see if I can unlock the SSE2 option and catch it.. Will get back in the coming days and either ask for alternative ideas or confirm this as a solution.. This comunity is awesome!

 

0 Kudos
Message 3 of 4
(217 Views)

Sorry, I did not consider Windows on ARM. There is a thread Labview on Win 10 ARM 64 on Raspberry PI , where the option to disable SSE2 apparently does not work on LV2017. It seems you would need to downgrade to LV2016 or use ARM hardware that supports SSE2.

Upgrading LabVIEW will not help, the option to disable SSE2 never returned.

Message 4 of 4
(204 Views)