I'm starting a project in which I'll be sampling at close to the maximum sampling rate of the NI-DAQ that I'm using (250 kS/s). Actually in reality my "to disk" data rate is lower but from initial reading it seems like I'll need to sample every channel at a high rate and downsample after the fact. I'd like to plot some of the data as well as save it to disk. I was wondering if anyone had any advice on things they learned in trying to get decent performance saving and loading when using a DAQ. I haven't done too much testing yet so it may be easy but I was hoping to get early advice before getting too settled into any particular approach.
I'm currently thinking of using matfile for data saving and animatedline for scrolling data. I haven't yet decided what, if anything, I am going to do about being able to review data as it is being collected.
Traditionally I've done this sort of work in Labview where it is common to dump data to a queue which then periodically saves the data to disk (in my case using their TDMS format). Labview also does a pretty good job (I think) of engaging multiple cores for processing, plotting, saving etc..