Why is the maximum number of elements in an array or matrix in 64-Bit MATLAB limited to 2^48-1 and not 2^63-1 ?

5 views (last 30 days)
The largest valid index into an array for the 32-bit MATLAB is 2^31-1.
Similarly, I expect the largest valid index for the 64-bit MATLAB is 2^63-1.
I want to know what is the significant of the number 2^48-1 in limiting the array/matrix elements.

Accepted Answer

MathWorks Support Team
MathWorks Support Team on 14 Jun 2021
Edited: MathWorks Support Team on 14 Jun 2021
The current 64-bit processors from AMD and Intel do not actually support 64-bit addressing. They only have 40 physical address pins and can support 48-bits virtual addressing. (For more information, please see https://en.wikipedia.org/wiki/X86-64#Architectural_features.)
Please note that the theoretical limit of 2^48-1 elements cannot currently be reached due to other limitations such as available system memory (This would require about ~300TB for 8-bit data) and the process space limit of the operating system, which on 64-bit Windows is just 8TB (or 2^43). For more information please refer 

More Answers (0)

Categories

Find more on Numerical Integration and Differential Equations in Help Center and File Exchange

Products

Community Treasure Hunt

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

Start Hunting!