RFC eliminating zeroing of heap/workspace
Thomas Doerfler
Thomas.Doerfler at embedded-brains.de
Thu Apr 5 21:57:36 UTC 2007
Hi Eric,
Eric Norum schrieb:
> Nothing in the C standard nor in the RTEMS documentation promises
> anything about the contents of dynamically allocated memory (other
> than calloc, and that routine clears the memory itself before handing
> back the pointer). I'd say don't bother with the clearing. A 30x
> speedup sounds worthwhile to me.
I am a bit more reluctant on this. Eric, basically you are right, nobody
specified that chunks of the heap are cleared (that's what calloc
provides), but I see two benefits:
1.) some systems NEED the memory to be cleared after power up, simply to
initialize it in sync with its ECC error correction code
2.) The behaviour of systems is a bit more repeatable when the memory is
set to a known state after boot
These are not really striking arguments, so I am a bit torn between
zeroing memory or not. And no, I don't think this is worth another
general RTEMS configuration option :-)
wkr,
Thomas.
>
>
> On Apr 5, 2007, at 3:58 PM, Joel Sherrill wrote:
>
>
>>Hi,
>>
>>I have done some investigation on a simulator
>>and determined that much of the time required
>>to bring the minimum test from reset to the
>>first task is consumed by zero'ing the
>>C Program Heap and RTEMS Workspace.
>>
>>My testing is on a simulated system which
>>has 4MB of RAM and zeroes all but maybe
>>64K of it since that is the code and data.
>>It takes 97% of the boot time to clear this
>>much RAM.
>>
>>What's the general sentiment about clearing:
>>
>>+ the C program heap
>>+ the RTEMS workspace
>>
>>Just wanting opinions and thoughts.
>>
>>--joel
>>_______________________________________________
>>rtems-users mailing list
>>rtems-users at rtems.com
>>http://rtems.rtems.org/mailman/listinfo/rtems-users
>
>
--
--------------------------------------------
Embedded Brains GmbH
Thomas Doerfler Obere Lagerstr. 30
D-82178 Puchheim Germany
email: Thomas.Doerfler at embedded-brains.de
Phone: +49-89-18908079-2
Fax: +49-89-18908079-9
More information about the users
mailing list