У меня есть большая матрица A, которая составляет 1 ГБ двойных значений, когда я изменяю ее на разные размеры, это невероятно быстро.
A=rand(128,1024,1024);
tic;B=reshape(A,1024,128,1024);toc
Elapsed time is 0.000011 seconds.
Как это может быть так быстро? Другое наблюдение, MATLAB использует меньше памяти, чем нужно, после запуска этого кода и хранения двух матриц по 1 ГБ каждый: Memory used by MATLAB: 1878 MB (1.969e+09 bytes)