The MacView

Virtual Instrumentation from a Mac perspective

Wednesday, July 19, 2006

Finishing Up Next LabVIEW Version

It's been too long since I last posted. Getting LabVIEW ready to release is a big job.

This release has been challenging for me since our Mac resources are being used to fix and validate LabVIEW on two different processors for the Mac. The good thing is that it has been a pretty smooth transition to MacIntel systems. Some parts of the code date back to the mid 80's, so we had to track down all the assumptions about what Endian we were using. We just fixed another issue along these lines in the last week (minor UI issue). We probably have a few more that we haven't caught, but there doesn't appear to be any huge issues.

Running LabVIEW native on an Intel iMac is nice. They are very fast machines. It is noticeably faster than LabVIEW running on my Dual 1.8 G5 machine. I am really looking forward to working with this version of LabVIEW on an Intel machine on a regular basis.

This next version of LabVIEW has also had some performance tweaking, so compared to 8.0, this next version "feels" faster. Launching LabVIEW is noticeably faster. One of the beta testers noticed that when you close the Getting Started window that LabVIEW quit, which is not standard behavior on a Mac. We changed that so that now it just closes the window. This makes "second launch" (clicking on the dock icon) much faster, since we are not launching LabVIEW.

There is another Mac issues that most long time LabVIEW developers will run into. We changed Command-H to the standard Hide Application instead of Show Context Help. That means that most people who are in the habit of pressing Command-H for Context Help will suddenly have their LabVIEW disappear. The new keystroke is Command-Shift-H. Unfortunately this key sequence does not work for older versions of LabVIEW, so if you switch back and forth (two different machines) changing your habit will not be as easy. If you have a full size keyboard (not a laptop keyboard) you can use the Help key (by Home, End, Page Up and Page Down) to toggle the Context Help window. That does work in all versions of LabVIEW.

We do not have Universal VIs, so a VI will either be Mac-PowerPC or Mac-Intel, and will need to be recompiled when moved to the other platform. Since LabVIEW does the compiling behind the scenes, most people will not notice the difference for small hierarchies of VIs. The side affect is that when you launch for the first time on a MacIntel machine, you will be prompted to Mass Compile LabVIEW (convert the VIs in LabVIEW to Mac-Intel VIs). This is similar to the 8.0.1 Mass Compile, for those who remember that, but will be MUCH faster (we sped up the method of Mass Compiling, and you are on a very fast machine).

For those who get LabVIEW Pro (or get the Application Builder add on to LabVIEW) there is a way to build Universal Binary applications and frameworks with LabVIEW. Since VIs are cannot be Universal, we pull some tricks in the build Application/Framework to have the capability there. I have submitted a Knowledge Base article that describes the process of creating a Universal LabVIEW Application/Framework.

There are also some new features that I helped make sure they were on the Mac. I think all of them will be featured in the NI-Week keynote. Some of them go right along with some of the topics my blog.

I'm very pleased with the stability and speed of LabVIEW on Intel Macs. I hope you are as pleased as well. If you are coming to NI-Week next month, hunt me down and lets chat. I love talking to LabVIEW and/or Mac users.

The views expressed on this website/weblog are mine alone and do not necessarily reflect the views of my employer.