Instruments' LabVIEW 2010, the latest version of its graphical programming
environment for design, test, measurement and control applications, has put the
focus on execution speed. The new release uses off-the-shelf compiler
technologies that run code an average of 20 percent faster, along with a
comprehensive marketplace for evaluating and purchasing add-on toolkits to
easily integrate custom functionality into the platform.
"For existing customers, the message with LabVIEW 2010 is that code now runs faster," says Rick Kuhlman, the LabVIEW 2010 product manager for National Instruments.
Key to the productivity delivered by LabVIEW is the compiler which abstracts tasks such as memory allocation and thread management. With the new release, the compiler data flow intermediate representation has been further optimized. Low-Level Virtual Machine (LLVM), an open source compiler infrastructure, has also been added to the software's compiler flow to accelerate code execution.
Kuhlman says that of the ways LabVIEW makes code run faster is by introducing an intermediate representation and internal techniques for creating transformations to the code. When a user hits the "run" button in LabVIEW, it transforms the graphical code into machine code. But now the compiler can more fully analyze the graphical code and extract and infer optimizations.
One example is a common compiler function called "dead code elimination" where a parameter is wired in LabVIEW to a constant parameter that doesn't change. Inside that function, there is code to handle parameter changes which LabVIEW can tell will not be needed.
"LLVM is an open source, low-level machine code generator widely used in industry by companies such as Adobe, Apple and Google," says Kuhlman. "LabVIEW 2010 uses LLVM for its knowledge of the hardware and how to best utilize new chips and their optimized instruction sets. LLVM is especially well-suited for LabVIEW, because LabVIEW executes on many platforms including Intel, PowerPC and ARM processors."
For field-programmable gate array (FPGA) users, LabVIEW 2010 delivers a new IP Integration Node that makes it possible to integrate any third-party FPGA IP into LabVIEW applications and is compatible with the Xilinx CORE Generator. National Instruments also implemented more than a dozen new features suggested by lead users through the LabVIEW Idea Exchange, an online feedback forum that marks a significant new level of collaboration between NI R&D and customers.
"With LabVIEW 2010, there are also many community features," says Kuhlman. "We have been focusing on being able to take product development ideas from our very active community of users, and actually implement the ideas in LabVIEW."
In 2009, National Instruments started promoting the Idea Exchange as an online forum to gather ideas from customers. Customers submitted 1,300 ideas, and 27,000 people voted on those ideas.
"It's been an active forum and, during that time, some ideas came to the top and were actually put into LabVIEW as product features," says Kuhlman. "We interviewed some of the idea makers that submitted these ideas, and they were surprised and honored that some of their exact features were implemented in LabVIEW."
Click here to learn more about LabVIEW 2010 or download evaluation software.