Brian,<br>
Yes indeed, s/limited/unlimited/. I was thinking perhaps by "unlimited"
they meant allocating the stack from virtual memory, but anyway a
source of possible trouble.<br>
Thanks<br>
Peter<br><br><div><span class="gmail_quote">On 8/19/08, <b class="gmail_sendername">Brian Dobbins</b> <<a href="mailto:bdobbins@gmail.com">bdobbins@gmail.com</a>> wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div dir="ltr"><br><div class="gmail_quote"><span class="q">On Tue, Aug 19, 2008 at 8:04 PM, Peter St. John <span dir="ltr"><<a href="mailto:peter.st.john@gmail.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">peter.st.john@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
What I meant was: surely the stacksize is not really limited, even it it is configured without limits?</blockquote></span><div><br>  If you meant to say <i>un</i>limited
there, then yes, it's not really unlimited.  Someone with more
kernel knowledge will certainly correct me if I'm wrong here, but I
believe the stack is allocated 'upward' from the end of where your
data/program reside in memory, whereas variables on the heap are (or
tend to be, in fragmented memories) allocated 'downward' from the
maximum available free memory.  So, at some point, those two will
meet if you have limited ram, and your stack size most certainly won't
be 'unlimited' at that point.<br>
<br> ... Bear in mind, my only experience with this is from the
old 2.4 series kernels, where you had to modify how heap allocations
were done in order to get above 2GB on 32-bit machines.  Given
that that's ancient history, things may have changed.  ;)<br>
<br>  (And, in more detail - if you set a limit, you get just that
much... if you set 'unlimited', you get up until stack + heap
allocations (+ data segments, OS stuff, etc.) run you out of
memory.  Also, while heap allocations can be swapped out to
virtual memory, I'm not too sure stack can be, as it tends to be
faster, and used a bit differently.  Anyone know?)<br>
<br>  Cheers,<br>  - Brian<br><br><br>Brian Dobbins<br>Yale Engineering HPC<br></div></div><br></div>
</blockquote></div><br>