[m-rev.] for review: increase stack sizes

Zoltan Somogyi zs at cs.mu.OZ.AU
Tue Sep 30 18:28:54 AEST 2003


Term size profiling adds more variables to procedures, and thus increases
stack frame sizes. When term size profiling and debugging are both enabled,
the compiler cannot bootstrap itself without bumping into limits in the size
of both of the stacks. This indicates that compiler even without term size
profiling, the compiler uses most of the space in the stacks, and is close
to the limit.

The additional costs are minimal, both in space and in gc scan time,
compared to the cost of an unexpected program abort with a SIGSEGV.

Zoltan.

runtime/mercury_wrapper.c:
	Double the default stack sizes.

cvs diff: Diffing .
Index: mercury_wrapper.c
===================================================================
RCS file: /home/mercury/mercury1/repository/mercury/runtime/mercury_wrapper.c,v
retrieving revision 1.122
diff -u -b -r1.122 mercury_wrapper.c
--- mercury_wrapper.c	14 Sep 2003 22:24:37 -0000	1.122
+++ mercury_wrapper.c	30 Sep 2003 08:22:46 -0000
@@ -62,8 +62,8 @@
 #else
   size_t	MR_heap_size =			4096;
 #endif
-size_t		MR_detstack_size =		4096;
-size_t		MR_nondstack_size =	 	 128;
+size_t		MR_detstack_size =		8192;
+size_t		MR_nondstack_size =	 	 256;
 size_t		MR_solutions_heap_size =	1024;
 size_t		MR_global_heap_size =		1024;
 size_t		MR_trail_size =			 128;
cvs diff: Diffing GETOPT
cvs diff: Diffing machdeps
--------------------------------------------------------------------------
mercury-reviews mailing list
post:  mercury-reviews at cs.mu.oz.au
administrative address: owner-mercury-reviews at cs.mu.oz.au
unsubscribe: Address: mercury-reviews-request at cs.mu.oz.au Message: unsubscribe
subscribe:   Address: mercury-reviews-request at cs.mu.oz.au Message: subscribe
--------------------------------------------------------------------------



More information about the reviews mailing list