Версии MAT-файла

Обзор Версий MAT-файла

MAT-файлы являются бинарными файлами MATLAB® та рабочая область хранилища переменные. Начиная с Версии MAT-файла 4, существует несколько последующих версий MAT-файлов, которые поддерживают увеличивающийся набор функций. MATLAB выпускает R2006b и позже всю поддержку все версии MAT-файла.

По умолчанию все сохраняют операции, создают MAT-файлы Версии 7. Единственное исключение к этому - когда вы создаете новые MAT-файлы с помощью функции matfile. В этом случае версия MAT-файла по умолчанию 7.3.

Чтобы идентифицировать или изменить версию MAT-файла по умолчанию, получите доступ к Настройкам MAT-файлов.

  • На вкладке «Главная страница (Home)» в разделе «Конфигурация (Environment)» нажмите «Настройки (Preferences)».

  • Выберите MATLAB> General> MAT-Files.

Настройки применяются и к функции save и к пунктам меню Save.

Максимальный размер MAT-файла наложен только вашей нативной файловой системой.

Эта таблица приводит и сравнивает все версии MAT-файла.

'MATFileVersion' Поддерживаемые релизы MATLABПоддерживавшие функцииСжатиеМаксимальный размер каждой переменнойЗначение аргумента version в функции saveОпция настройки
Версия 7.3R2006b (Версия 7.3) или позже

Сохранение и загрузка частей переменных и всех функций Версии 7

Да≥ 2 Гбайт на 64-битных компьютерах'-v7.3'MATLAB Version 7.3 или позже
(сохраните-v7.3),
Версия 7R14 (Версия 7.0) или позже

Кодировка символов Unicode®, которая включает совместный доступ к файлам между системами, которые используют различные схемы кодировки символов по умолчанию и все функции Версии 6.

Да2^31 байты на переменную '-v7'MATLAB Version 7 или позже
(сохраните-v7),
Версия 6R8 (Версия 5) или позже

N-мерные массивы, массивы ячеек, массивы структур, имена переменных дольше, чем 19 символов и все функции Версии 4.

Нет2^31 байты на переменную '-v6'MATLAB Version 5 или позже
(сохраните-v6),
Версия 4Все

Двумерный double, символ и разреженные массивы

Нет100 000 000 элементов на массив, и 2^31 байты на переменную'-v4'нет данных

Примечание

Версия 7.3 MAT-файлы используют базирующийся формат HDF5, который требует, чтобы некоторое служебное устройство хранения данных описало содержимое файла. Для массивов ячеек, массивов структур или других контейнеров, которые могут сохранить типы гетерогенных данных, MAT-файлы Версии 7.3 иногда больше, чем MAT-файлы Версии 7.

Сохранение в Версию MAT-файла Не по умолчанию

Сохраните в версию MAT-файла кроме версии по умолчанию когда это необходимо к:

  • Предоставьте доступ к файлу с помощью более ранних версий MATLAB.

  • Используйте в своих интересах функции MAT-файла Версии 7.3.

  • Уменьшайте время, требуемое загрузить и сохранить некоторые файлы, храня несжатые данные.

  • Уменьшайте размер некоторых файлов, храня сжатые данные.

Чтобы сохранить в версию MAT-файла кроме версии по умолчанию, задайте version как последний вход к функции save. Например, чтобы создать MAT-файл Версии 6 под названием myfile.mat, введите:

save('myfile.mat','-v6')

Сжатие данных

Начиная с Версии 7, MATLAB сжимает данные при записи в MAT-файлы, чтобы сохранить пространство памяти. Сжатие данных и распаковка замедляются, все сохраняют операции и некоторые операции загрузки. В большинстве случаев сокращение размера файла стоит дополнительного проведенного времени.

В некоторых случаях загрузка сжатых данных на самом деле может быть быстрее, чем загрузка несжатых данных. Например, считайте блок данных в числовом массиве сохраненным и в сжатый файл на 10 Мбайт и в несжатый файл на 100 Мбайт. Загрузка первых 10 Мбайт занимает то же количество времени для каждого файла. Загрузка остающихся 90 Мбайт из несжатого файла берет в девять раз более долго, чем загрузка первых 10 Мбайт. Завершение загрузки сжатого файла требует только, чтобы относительно короткое время распаковало данные.

Преимущества сжатия данных незначительны в следующих случаях:

  • Объем данных в каждом элементе является небольшим относительно сложности его контейнера. Например, простые числовые массивы занимают меньше времени, чтобы сжать и распаковать, чем ячейка или массивы структур, одного размера. Сжатие массивов, которые приводят к несжатому размеру файла предложений на меньше чем 3 Мбайта ограниченное преимущество, если вы не передаете данные по сети.

  • Данные случайны без повторных шаблонов или сопоставимых значений.

Ускорьтесь сохраняют и загружают операции для MAT-файлов версии 7.3

Версия 7.3 MAT-файлы используют формат на основе HDF5, который хранит данные в сжатых фрагментах. Время, требуемое загружать часть переменной из MAT-файла Версии 7.3, зависит от того, как те данные хранятся через один или несколько фрагментов. Каждый фрагмент, который содержит любой фрагмент данных, которые вы хотите загрузить, должен быть полностью несжатым, чтобы получить доступ к данным. Переразделение на блоки ваших данных может улучшать производительность операции загрузки. Чтобы повторно разделить данные на блоки, используйте инструменты командной строки HDF5, которые являются частью распределения HDF5.

Смотрите также

|

Похожие темы