Restriction when indexing large arrays

Hi there, on 64bit platforms: why does matlab only allow 48bit integers for indexing arrays / creating (sparse)matrices, while on 32bit platforms 31bit indices are allowed?
Quote from "doc sparse": [...] S = sparse(i,j,s,m,n,nzmax) [...] Note: If any value in i or j is larger than 2^31-1 for 32-bit platforms, or 2^48-1 on 64-bit platforms, then the sparse matrix cannot be constructed. Quote end
Any hint is appreciated!

 採用された回答

Andreas Goser
Andreas Goser 2012 年 1 月 19 日

0 投票

I'd say this question is a side answer from this solution:
"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."

1 件のコメント

Lars Ludwig
Lars Ludwig 2012 年 1 月 19 日
thank you for the link - this helps!

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

ヘルプ センター および File ExchangeMatrix Indexing についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by