comp.lang.ada
 help / color / mirror / Atom feed
From: "Dr. Adrian Wrigley" <amtw@linuxchip.demon.co.uk.uk.uk>
Subject: Re: pointer questions
Date: Fri, 28 Oct 2005 11:57:13 GMT
Date: 2005-10-28T11:57:13+00:00	[thread overview]
Message-ID: <pan.2005.10.28.11.59.53.86658@linuxchip.demon.co.uk.uk.uk> (raw)
In-Reply-To: djr9p4$d33$3@nwrdmz02.dmz.ncs.ea.ibs-infra.bt.com

On Thu, 27 Oct 2005 19:28:36 +0000, Martin Dowie wrote:

 
> More error related than predictability I hope! Or is there some 
> dangerous non-determinism associated with access types I haven't come 
> across yet?! :-)

I did meet a case of non-determinism exposed through access types...

My stock trading software originally used very large arrays
of pricing data (around 1GB of data).  This worked fine for many
months.  One day, I decided to add a level of redirection, using
a large array of access values.  After that, the program would
fail mysteriously every few months.  But why?

It slowly became apparent that the memory was getting
single-bit errors.  I remember from the early days of DRAM that
alpha particles in packaging could cause soft errors, and
researched the current reliability of DRAM.  It seems that
packaging radiation is now negligable, but cosmic ray strikes
are still an issue (depending on altitude).  Calculating the
rate of soft errors expected, I found that with a gigabyte
of non-ECC memory, soft errors might occur about every week.
I immediately switched to ECC and the problem vanished.

Anyone with a well specced PC should be aware that memory bits
will be flipping spontaneously every few days, unless ECC is used.
This means that large linked data structures are highly susceptible
to failure.  Of course non-linked data also gets errors, but
these will often disappear, and are slightly less sensitive.
It becomes a question of how errors show up.  With copious
use of access types, failures are often catastophic.  Without,
they tend to be more insideous.  Make your choice! Or get ECC!
-- 
Adrian


Quote:
"IBM has performed the most comprehensive characterization of soft error
rates in DRAM subsystems, collecting data on roughly 800 memory devices
over a 10-year period. These studies were performed at various altitudes,
including below sea level in underground caves, since the cosmic ray flux
increases with altitude. Using this data, a senior engineer for IBM
Microelectronics predicted that 256 Mbytes of memory would average one
soft error per month due to cosmic rays (EE Times, 6/22/98)."



  parent reply	other threads:[~2005-10-28 11:57 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-10-26 23:01 pointer questions Szymon Guz
2005-10-26 23:51 ` Gene
2005-10-26 23:58 ` tmoran
2005-10-27  1:12 ` Stephen Leake
2005-10-27  2:30 ` Steve
2005-10-27  5:56 ` Jeffrey R. Carter
2005-10-27 10:19   ` Szymon Guz
2005-10-27 14:14     ` Robert A Duff
2005-11-07  4:21       ` Dave Thompson
2005-10-27 14:11   ` Robert A Duff
2005-10-27 15:13     ` Marc A. Criley
2005-10-27 18:53       ` Jeffrey R. Carter
2005-10-27 17:29     ` Martin Dowie
2005-10-27 18:28       ` Marc A. Criley
2005-10-27 19:28         ` Martin Dowie
2005-10-28  0:12           ` Robert A Duff
2005-10-28 11:57           ` Dr. Adrian Wrigley [this message]
2005-10-28 21:26             ` Jeffrey R. Carter
2005-10-30 22:26               ` Robert A Duff
2005-10-31  6:21                 ` Jeffrey R. Carter
2005-11-02  0:52                   ` Dr. Adrian Wrigley
2005-11-02  3:46                     ` Jeffrey R. Carter
2005-11-02 11:16                       ` Dr. Adrian Wrigley
2005-11-02 13:39                     ` Robert A Duff
2005-11-02 15:34                     ` Bob Spooner
2005-11-02 18:59                     ` Björn Persson
2005-10-27 18:43     ` Jeffrey R. Carter
2005-10-28  0:42       ` Robert A Duff
2005-10-28  5:58         ` Martin Dowie
2005-10-28 21:24         ` Jeffrey R. Carter
2005-10-28 11:53     ` David
2005-10-29 12:25       ` Simon Wright
2005-10-27 17:19 ` Martin Krischik
2005-11-07  4:21   ` Dave Thompson
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox