RFC eliminating zeroing of heap/workspace
joel.sherrill at oarcorp.com
Thu Apr 5 22:02:21 UTC 2007
Thomas Doerfler wrote:
> 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:
i am reluctant as well or I wouldn't have asked but it is a LOT of
by default are consumed.
> 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
Agreed and if this is the case, then the BSP certainly has the option of
turning on the cpu_table.do_zero flag.
> 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 :-)
It already is. :) I just changed the default in bspstart.c from TRUE to
>> On Apr 5, 2007, at 3:58 PM, Joel Sherrill wrote:
>>> 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.
>>> rtems-users mailing list
>>> rtems-users at rtems.com
More information about the users