LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Matlab and ActiveX performance

I am playing around with using Labview as an ActiveX server with Matlab.  The anticipated application is to run instrument control in Labview
and then use ActiveX to transfer data over to Matlab for more processing.

The data transfer speed is surprisingly slow.  Over a 100 Mbit network, two PCs can move a large double-precision 2D array at 6 Mbyte/sec.  When both Labview and Matlab are on the same PC (1.4 GHz P4) , the transfer rate is only ~10 Mbyte/sec. 

The Matlab code looks something like this:
    LV = actxserver('Labview.Application') ;
    vi = invoke(LV,'GetVIReference','c:\test.vi') ;
    vi.Run ;
    % now transfer the data from Labview to Matlab
    array = vi.GetControlValue('Output Array') ;
   
I am using tic/toc to time that last line of Matlab code.  Am I doing something wrong or inefficient here, or is this just the way ActiveX is?
Message 1 of 1
(2,692 Views)