Tags: binary, buses, communication, file, filesquot, individualnbsplog, labview, loops, multiple, own, parallel, programming, quottdm, streaming, system, tasks, various, versus, write

Labview 8.20 - "TDM streaming versus Binary Files"

On Programmer » LabVIEW

2,398 words with 2 Comments; publish: Sat, 10 May 2008 02:02:00 GMT; (20054.69, « »)


I have multiple loops/parallel tasks with various communicati

on buses in an RT system which need to write data to its own individual 

;log file which is using an Binary format. What kind of benefits will I get

in terms of performance by

using the TDM Streaming? The only benefit I foresee is the consolidati

on of data into an XML type structure and store data into an universal file

versus 4 individual ones.:smileysurprised:

Are TDMS being handled differently in RT for disk IO management? becaus

e each write will take upto 8-9 ms.The goal is to reduce disk IO and improve


Any advice?

Ashm01Message Edited by ashm01 on 10-30-2006 11:46 PM

All Comments

Leave a comment...

    • Hey Bill,

      Is your application in RT? I would appreciate if you have some benchmarks on

      this. I am about to convert the binaries to TDMS and was wondering if anyon

      e had any favorable performance gains.



      #1; Sat, 10 May 2008 02:04:00 GMT
    • Hi Ashm01,

      The TDMS API was developed to facilitate streaming data to disk at high rate

      s, while maintaing the same descriptive information you would find in a TDM

      file. You might find the following information interesting from an article o

      n Developer Zone (<a href="/app/links/?link=

      http://zone.ni.com/devzone/cda/tut/p/id/3539" target="_blank">Introduction t

      o LabVIEW TDM Streaming VIs</a> ):

      Unlike the TDM files, which have a strictly required XML-based header file,

      TDMS files have a binary index file with the extension *.TDMS_Index. The TDM

      S_Index file provides consolidated information on all the attributes and poi

      nters in the bulk data file

      , and speeds up access to the data...

      I believe you'll find that the TDMS VIs are on par with the regular binary f

      ile I/O from a performance standpoint -- plus you get all the benefits that

      TDM offers. If you are trying to optimize File I/O on LabVIEW Real-Time in g

      eneral, try writing to a fi

      le in chunk sizes that are a multiple of 512 bytes and maintaining a 51

      2-byte-multiple offset with respect to the beginning of the file. Since

      512 bytes is the size of a sector on a hard disk (the basic unit that is re

      ad or written from a disk),

      you should see some dramatic improvments.

      Hope this helps!

      #2; Sat, 10 May 2008 02:05:00 GMT