Jump to content

Any idea on how to break the 2-Gig barier in RT?


Recommended Posts

I am looking for ideas that can help with an application that will eventually be

1) deployed to RT targets (preferably 7.1)

2) Will produce multiple large data files that will exceed 2Gig each.

If this was Windows only I could use HDF5 or the Large File functions from OpenG (THank you Rolf!)

BUT

HDF5 is not supported in RT (any version).

The only idea I have so far is to "divide and conquer" (write multiple files instead of just one file).

All ideas or suggestions will be greatly appreciated!

Ben

Link to comment

Of the top of my head, you could use reflective memory - write your data to a rm device, and have your host (Windows) read from it and save it. You would have to write some sort of handshaking so unsaved data isn't overwritten, but that wouldn't be difficult. NI has rm VIs that are very basic, but sure do the trick (we used rm on a porject that had 4 RT controllers + 1 Windows controller).

Link to comment
Of the top of my head, you could use reflective memory - write your data to a rm device, and have your host (Windows) read from it and save it. You would have to write some sort of handshaking so unsaved data isn't overwritten, but that wouldn't be difficult. NI has rm VIs that are very basic, but sure do the trick (we used rm on a porject that had 4 RT controllers + 1 Windows controller).

Thank you Chris

You are a genius! :thumbup:

This application is already using reflective memory (SCRAMNet) so I could dedicate part of the memory for internode file transfers and dedicate another Windows machine as "wicked fast" file server.

Very cool.

Thank you.

Link to comment
  • 2 weeks later...
I am looking for ideas that can help with an application that will eventually be

1) deployed to RT targets (preferably 7.1)

2) Will produce multiple large data files that will exceed 2Gig each.

If this was Windows only I could use HDF5 or the Large File functions from OpenG (THank you Rolf!)

BUT

HDF5 is not supported in RT (any version).

The only idea I have so far is to "divide and conquer" (write multiple files instead of just one file).

All ideas or suggestions will be greatly appreciated!

Ben

The file IO APIs the Large File package uses are standard Windows 32bit APIs. The only reason this might not work is that the underlying RT OS and its WinAPI implementation does not support files bigger than 2GB at all. If that's the case there is absolutely nothing you could do in the application itself and maybe that is why HDF5 is not supported.

Rolf Kalbermatter

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.