Stack size recommendations - 12.6
Spencer Hinsdale (4/2/14 8:37AM)
Tony Ringsmuth (4/2/14 10:21AM)
Spencer Hinsdale (4/2/14 8:37 AM)
On Apr 2, 2014, at 7:45 AM, Paul Lovejoy <paul.e.lovejoy@...
wrote:
color><param>00000,0000,DDEE/param>
Thanks in advance for any thoughts or advice on the question.
/color>
Paul,
A few thoughts:
I think 4D uses more than 2GB if the OS is 64-bit (e.g. check Finder
in Activity Monitor) and there is more than 8GB RAM installed. ?There
are tech notes on this topic for different versions.
I think you can directly set the stack size of "twin" process with Set
Database Parameter(53;768*1024) // sets 3/4 of default 1MB
I think Selection To Array docs recommend On Err Call for just such a
situation.
hth,
spencer
Tony Ringsmuth (4/2/14 10:21 AM)
Paul,
On 4/2/14 9:45 AM, "Paul Lovejoy" <paul.e.lovejoy@... wrote:
color><param>00000,0000,DDEE/param>HHi,
We have a database which allows users to start a number of processes.
There
are often 100+ users logged on, usually with around 600 total
processes on the
server. The database runs on OS X and is thus limited to 2 gb of RAM.
We've recently had a few situations where a Selection to array causes
a memory
allocation error (-108) on the server. So we are considering different
options
for optimizing the memory usage on the server. Here are some ideas:
1. Reduce % of memory available for cache. Downside: reduced
performance.
2. Reduce number of processes running on the server, by limited the
number of
processes a user can have open (we already have a mechanism in place
which we
can simply activate).
3. Reduce the stack size of processes
Hence my question: how can we determine stack size requirements for
processes?
I recall that with v11 it was recommended to have larger stack sizes,
around 1
mb as I recall. Is this reasonable? What happens if we reduce that to,
say,
512k?
/color>
I don't know that I can give a definitive recommendation on stack
size: ?I
deploy mainly on PC not mac, and I think recommended stack size is
higher on
Mac. ?I typically do around 128kb to 192kb in v12 32-bit, and double
that
for 64 bit.
However, if your selection is large, consider breaking it into multiple
reads with SELECTION RANGE TO ARRAY rather than SELECTION TO ARRAY.
--
Tony Ringsmuth
Business Brothers Inc.
763-420-8686
Reply to this message
Summary created 4/2/14 at 2:45PM by Intellex Corporation
Comments welcome at: feedback@intellexcorp.com