MATLAB: MATLAB function “save” and “-V7.3”

-v7.3save -v7.3 compression

Running R2010a, 64bit(win64). I have a large structure. Up to this point save has worked fine. Efficient, fast, great… I have recently added new data to this structure. not so cool… Now I am getting the message:
Warning: Variable 'iceChart' cannot be saved to a MAT-file whose version is older than 7.3. To save this variable, use the -v7.3 switch. Skipping…
Unfortunately “-v7.3” appears to have some form of compression algorithm embedded, saving and loading these “-v7.3” mat files istaking significant time. Apparently there was a “-nocompression” flag that worked in previous versions of save. But this is no longer supported??? My options are at present seem to be just regenerating the entire data set during each procession session OR I can hack this by having multiple mat files using the old ‘–v6’ flag… I don't particularly like either of these options…
Appreciate any advice on this matter…
Regards Carl

Best Answer

Your observation is correct:
  • With the -v7.3 flag you can store variables > 2GB with compression
  • Without the -v7.3 flag (e.g. if the default version is set to -v7 or lower) you have no (or less) compression, but cannot store large arrays.
It is surprising, that the compression cannot be disabled manually, because it can be very time-consuming. But this was not the case when the v7.3 format has been developped, because the hard disks have been slower and more expensive. Therefore a compression has been a good idea.
Can you use HDF5 files?