Matlab freeze when fprintf to file
Show older comments
Hi
I have a large amount of data, many years. It is given in daily files.
For reasons irrelevant for the question I have to combine these files to yearly data files ~ 3Gb.
The daily files are of .cdf format and contain more variables than needed and also lack some that has to be derived.
The following shows an example that makes my computer freeze for around 5 min. But that data datafile is complete with seconds.
fid = fopen('test.m', 'w');
data = randi(5, 40000, 10);
for i=1:2 %5
fprintf(fid, '%d %d %d %d %d %d %d %d %d %d\n', data);
end
fprintf(fid, '%d %d %d %d %d %d %d %d %d %d\n', zeros(1, 10)); %Newly added line
fclose(fid)
Does anyone know why it freezes for so long when the files is written so fast?
Using Matlab R2018a on a remote desktop with Ubuntu OS
4 Comments
Guillaume
on 3 Aug 2018
How do you know that the data is written fast if matlab is frozen?
Michael Madelaire
on 3 Aug 2018
@Michael Madelaire: this sounds similar to when many files are opened but not closed. When there are too many open file then MATLAB can become slow or unresponsive. Run fclose('all') and check your code carefully that it really closes all files properly.
How many files do you have open at once?
Michael Madelaire
on 3 Aug 2018
Accepted Answer
More Answers (0)
Categories
Find more on Data Import and Analysis in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!