From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.
We appreciate your patience as we improve our online experience.
From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.
We appreciate your patience as we improve our online experience.
12-06-2019 06:04 AM - edited 12-06-2019 06:05 AM
Dear LabVIEW community,
I have a question regarding the utilisation of the Cores of a processor, next gen PC's will be having 16 or even higher core numbers..
How does LV use those cores or does it not?
What are the programming strategies to take maximum advantages of the cores?
I look forward eagerly to responses!!
Thank you.
Solved! Go to Solution.
12-06-2019 06:11 AM
LV is already good at utilizing multiple cores and several of the built in functions are multithreaded. But in order to improve it you'll need to keep it in mind and parallellize for loops and use several event and queue based processes.
Is it some specific problem/issue you're thinking about?
/Y
12-06-2019 07:31 AM - edited 12-06-2019 07:34 AM
I heard from an unqualified source that LV probably uses only one core.. If not I am interested to know how to make sure to optimise the core usage when programming. Or how to improve core usage and performance.
Specifically: how to program to make most use of the cores and improve performance..
12-06-2019 07:40 AM
Hi rajiv,
@rajiv85 wrote:
I heard from an unqualified source that LV probably uses only one core..
You should question your "unqualified source"…
LabVIEW is multi-core-aware since ages. (I still have a "Multi-core" promotion t-shirt of the LV8 era.)
LabVIEW has some features like parallized FOR loops where you explicitely can influence the usage of multiple cores. There are functions to read the number of available cores. Several structures allow pinning to a certain core (timed while loop).
Other structures will also influence CPU core usage, like sequences…
12-06-2019 07:42 AM
@GerdW, thank you very much for these. Can I further please ask if you can recommend me some books or pages where I can read more about this?
12-06-2019 07:45 AM
12-06-2019 08:11 AM
It should be simple enough to make a stupid program that uses all cores to show it. Something like Create a noise signal of some length and let a couple of FFTs and filters work in parallell in a While loop.
/Y
12-06-2019 09:10 AM
Just google labview multiple core and be done with it.
12-06-2019 09:16 AM
Though, to be correct, the Compiler that builds an .exe is single threaded, as most all compilers are. Maybe your buddy heard some rumour about that and thought the resulting .exe is single threaded? Anyhow, LV is good at threading. 🙂
http://www.ni.com/tutorial/9393/en/
/Y
12-06-2019 09:44 AM
@Yamaeda wrote:
Though, to be correct, the Compiler that builds an .exe is single threaded, as most all compilers are. Maybe your buddy heard some rumour about that and thought the resulting .exe is single threaded? Anyhow, LV is good at threading. 🙂
http://www.ni.com/tutorial/9393/en/
/Y
Especially when humans don't try to influence the dataflow. 😉