NegativeArraySizeException ... IndexOutOfBoundsException ...

  • Thread starter Albretch Mueller
  • Start date
L

Lew

Arne Vajhøj wrote :



I am curious. Just what WOULD need such a large index? Every sand grain
on earth? Every star in every galaxy in the universe?

Where will you store the array? Either you have a crapload of RAM
(one bit per atom storage density?) or the largest-capacity storage
device ever invented (one bit per atom storage density?).

What's the average retrieval latency? Even at one bit per atom
storage density, it must take even a light beam noticeable time to
reach the further reaches of the storage device; anything slower like
a semiconductor must take a really long time.

A silicon crystal lattice has a lattice spacing of just over half a
nanometer, or 5.4 x 10^-10 m. A three-dimensional storage medium for
a 9 x 10^18-element array would hold juar over 2 x 10^6 elements to
the side. An average access would be halfway in each dimension, or
10^6 elements, which in a silicon lattice is about 5.4 x 10-4 m, times
three for a total traversal distance of about 1.6 x 10^-3 m. Each
way. For a round trip slightly over 3 x 10^-3 m. A light beam
travels that in 0.1 microseconds (10^-7 s). That's about 200 clock
cycles of latency on a modern processor, far more on the future
processors of 2074.

Either we'll find a sparse representation for such arrays, we'll
invent much denser storage media and better ways to access them, we'll
find some way to keep the processor busy during that latency, or we'll
use super-luminal access speeds, perhaps through quantum
superposition.
 
L

Lew

Lew said:
Where will you store the array?  Either you have a crapload of RAM
(one bit per atom storage density?) or the largest-capacity storage
device ever invented (one bit per atom storage density?).

What's the average retrieval latency?  Even at one bit per atom
storage density, it must take even a light beam noticeable time to
reach the further reaches of the storage device; anything slower like
a semiconductor must take a really long time.

A silicon crystal lattice has a lattice spacing of just over half a
nanometer, or 5.4 x 10^-10 m.  A three-dimensional storage medium for
a 9 x 10^18-element array would hold juar over 2 x 10^6 elements to
the side.  An average access would be halfway in each dimension, or
10^6 elements, which in a silicon lattice is about 5.4 x 10-4 m, times
three for a total traversal distance of about 1.6 x 10^-3 m.  Each
way.  For a round trip slightly over 3 x 10^-3 m.  A light beam
travels that in 0.1 microseconds (10^-7 s).

Drat! Mixed up my CGS and MKS. That's 10^-5 s, or 10 microseconds.

That's about 20,000
 
J

Joshua Cranmer

That's about 200 clock
cycles of latency on a modern processor, far more on the future
processors of 2074.

I am not an electrical engineer, but I doubt general processor clock
speeds are ever going to go significantly further than the 3.5-ish GHz
that we have now, due primarily to significant power dissipation issues
as well as the fact that the chip will be too damn big. To my knowledge,
we are hitting the physical limits of making an individual core much
more powerful.

So I find it far mare likely that the processors of 2074 will be 3.5
megacore processors with each core having the performance of, say, a
Pentium IV.
Either we'll find a sparse representation for such arrays, we'll
invent much denser storage media and better ways to access them, we'll
find some way to keep the processor busy during that latency, or we'll
use super-luminal access speeds, perhaps through quantum
superposition.

It's been years since I last looked at quantum computers, but the
progress on them has been slow. The most powerful one I can find
evidence of right now was 8 qubits, which used a design that I recall
maxing out around 40 qubits. I also recall many of the available designs
have theoretical capacities below 100 qubits which makes them inadequate
for useful purposes.

I also recall quantum superposition doesn't allow you to transfer
information at superliminal speeds. Then again, my knowledge of quantum
mechanics is extremely poor, so I could be wrong.
 
A

Arne Vajhøj

Arne Vajhøj wrote :

I am curious. Just what WOULD need such a large index? Every sand grain
on earth? Every star in every galaxy in the universe?

I don't know.

What I do know is that several times during the last 50 years
somebody has said that you will never need more than X memory.
And they have been wrong every time.

I think it is most logical to assume that trend will continue
and that we indeed will find something to use such huge
address spaces for.

Arne
 
A

Arne Vajhøj

I am not an electrical engineer, but I doubt general processor clock
speeds are ever going to go significantly further than the 3.5-ish GHz
that we have now, due primarily to significant power dissipation issues
as well as the fact that the chip will be too damn big. To my knowledge,
we are hitting the physical limits of making an individual core much
more powerful.

So I find it far mare likely that the processors of 2074 will be 3.5
megacore processors with each core having the performance of, say, a
Pentium IV.

That seems to be the direction for the next decade and possible beyond.

And it will have some implications for memory as well.

Arne
 
A

Arne Vajhøj

Where will you store the array? Either you have a crapload of RAM
(one bit per atom storage density?) or the largest-capacity storage
device ever invented (one bit per atom storage density?).

What's the average retrieval latency? Even at one bit per atom
storage density, it must take even a light beam noticeable time to
reach the further reaches of the storage device; anything slower like
a semiconductor must take a really long time.

A silicon crystal lattice has a lattice spacing of just over half a
nanometer, or 5.4 x 10^-10 m. A three-dimensional storage medium for
a 9 x 10^18-element array would hold juar over 2 x 10^6 elements to
the side. An average access would be halfway in each dimension, or
10^6 elements, which in a silicon lattice is about 5.4 x 10-4 m, times
three for a total traversal distance of about 1.6 x 10^-3 m. Each
way. For a round trip slightly over 3 x 10^-3 m. A light beam
travels that in 0.1 microseconds (10^-7 s). That's about 200 clock
cycles of latency on a modern processor, far more on the future
processors of 2074.

With correction:
>Drat! Mixed up my CGS and MKS. That's 10-5 s, or 10 microseconds.

Neither looks correct to me.

s = 3 x 10^-3 m
v = 3 x 10^8 m/s
=>
t = s/v = 1 x 10^-11 s

Arne
 
R

RedGrittyBrick

Arne said:
I don't know.

What I do know is that several times during the last 50 years
somebody has said that you will never need more than X memory.
And they have been wrong every time.

I think it is most logical to assume that trend will continue
and that we indeed will find something to use such huge
address spaces for.

And if we don't, Microsoft's Office team will ;-)
 
A

Arne Vajhøj

And if we don't, Microsoft's Office team will ;-)

It seems to be a rather universal rule, that if the HW guys
can produce some new HW that are N times faster/bigger then
us SW guys will find a way to make our apps require the same
N times more resources.

Arne
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
474,432
Messages
2,571,682
Members
48,796
Latest member
Greg L.

Latest Threads

Top