LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

LabVIEW optimization using higher-end sound and video cards?

I am working on an application to run on a Dell PC that acquires audio data via the "Line-In" port of the PC's integrated sound card (SoundMAX Integrated Digital Audio), does some filtering/spectral analysis on the signals, then displays the results in several different waveform charts and graphs. I am trying to optimize this application to run several times faster than it currently is.

The code runs in a Timed Loop. The sample rate for the Line In port is fixed at 44.1 kHz (digital audio). The code runs okay if I acquire 2048 samples at a time (and thus the period of the Timed Loop is 2048/44.1 kHz = 46 ms). However, I would like the loop to update at about 12 ms (performing my analysis and display updates on 512 samples). But if I specify this small of an acquisition buffer and set the Timed Loop period to be this short, the loop cannot keep up with the code inside, the loop runs erratically, (sometimes at 12 ms, sometimes longer), the audio acquisition misses samples, and the graph updates are not steady.

I notice that there is significant overhead in updating all of the graphic displays - as I "turn off" the various waveform graphs and charts, the application will approach the speeds I am after (I have already turned off "smooth updates" and changed the update modes to "scope chart", which helps a little bit). But I would ideally like to be able to display all of these charts and graphs.

Is anyone familiar with a higher-end graphics card, and perhaps a new sound card, which can improve the speed of a LabVIEW application such as this? Any other suggestions? - Thanks!
0 Kudos
Message 1 of 2
(2,093 Views)
I don't know about higher end graphics cards improving your speeds, but the first thing is to make sure that in the displays you are only trying to display the maximum data points that you can actually display, i.e. at a resolution of 1280 X 800 there is no point in trying to display 2048 data points on a graph, and it will really slow things down. Also don't have any controls/indicator overlapping any other on your front panel. There have been a number of discussions in the past about decimating data.

Hope this helps

P.M.
Putnam
Certified LabVIEW Developer

Senior Test Engineer North Shore Technology, Inc.
Currently using LV 2012-LabVIEW 2018, RT8.5


LabVIEW Champion



Message 2 of 2
(2,089 Views)