MATLAB: Differences between .mat versions

The official documentation states the following:

enter image description here. But I have noticed that there are other important differences besides those stated in the table above.

For example, saving a cell array with about 6,000 elements that occupies 176 MB of memory in MATLAB gives me the following results depending on whether I use -v7 or -v7.3:

  • With -v7: File size = 15 MB, and save & load is fast.
  • With -v7.3: File size = 400 MB, and save & load is very slow (probably in part because of the large file size).

Has anybody else noticed these differences?

Update 1: As the replies point out, -v7.3 relies on HDF5 and according to Mathworks, "this format has a significant storage overhead", although it's not clear if this overhead is really due to the format itself, or to the MATLAB implementation and handling of HDF5 instead.

Update 2: @Andrew Janke points us to this very helpful PDF (which apparently is not available in HTML format on the web). For more details, see the comments in the answer provided by @Amro.

This all takes me to the next question: Are there any alternatives that combine the best of both worlds (e.g. the efficiency of -v7 and the ability to deal with very large files of -v7.3)?

23
задан Amro 26 April 2013 в 01:18
поделиться