matfile and half inefficient storage

10 ビュー (過去 30 日間)
Mika
Mika 2021 年 7 月 24 日
コメント済み: S Priyadharshini 2021 年 8 月 30 日
Dear MATLAB users,
I have encountered the following inefficient storage problem:
delete('myfile.mat')
handle = matfile('myfile.mat')
handle.X = half(X); % X is big
handle.Y = half(Y); % Y is big
handle.a = a;
handle.b = b;
%%% the size of myfile.mat is 2.4Gb %%%
data = load('myfile');
save('mynewfile1.mat', '-v7.3', '-struct', 'data')
%%% the size of mynewfile1.mat is 1.2Gb %%%
data = load('myfile');
save('mynewfile2.mat', '-struct', 'data')
%%% the size of mynewfile2.mat is 1.2Gb %%%
What could be causing this doubling of storage and how can I avoid it without loading and resaving the file.
Update: the problem does not seem to be caused by the -v7.3 flag. I updated the code above to show this.
Thank you for your help.
  30 件のコメント
cui,xingxing
cui,xingxing 2021 年 8 月 24 日
編集済み: cui,xingxing 2021 年 8 月 24 日
S Priyadharshini
S Priyadharshini 2021 年 8 月 30 日
Myfile and mynewfile2.mat

サインインしてコメントする。

回答 (0 件)

製品


リリース

R2020b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by