computer freezes during heavy array calculation

2 views (last 30 days)
Tried limiting max array size to 80% RAM, did not help. Windows 10 64bit, page file managed by windows. R2016B

Accepted Answer

Adam
Adam on 17 Nov 2016
Edited: Adam on 17 Nov 2016
'This limit applies to the size of each array, not the total size of all MATLAB arrays.'
That setting is only really of use related to creation of a single array. If you are doing any kind of calculation on your data you will usually end up with some number of intermediate results and one or more end results, which may be of the same size as the initial array or similar size.
When I have had issues of working with large data I have had to work out how many intermediate results I create and what size they are and make a rough calculation of the amount of memory that is used, then add an extra factor to allow for me miscalculating or just generally allowing breathing space and then I use this to determine the largest size of input data I can deal with at any one time.
I'm not aware of an easy panacea method for just always ensuring that any algorithm you run will behave itself with memory allocation for all its intermediate results. It needs to be carefully tuned for individual algorithms from my experience. Obviously for some algorithms the calculation is easy, for others it is a little more complicated, especially if you use the parallel pool with data being transferred to all the workers too.

More Answers (0)

Categories

Find more on Shifting and Sorting Matrices in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!