MATLAB Answers

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 ?

20 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)

Community Treasure Hunt

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

Start Hunting!