Changeset: d30146b4d610 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=d30146b4d610
Modified Files:
        gdk/gdk_utils.mx
Branch: Dec2011
Log Message:

GDKinit: limit GDK_mmap_minsize & GDK_mem_bigsize to 1/6 or RAM

Assuming an operator with 2 arguments and 1 results, each with
8-byte (e.g., oid, lng, dbl) head & tail, i.e., (2+1)*2 = 6
active BUN heaps at a time,
we limit GDK_mmap_minsize & GDK_mem_bigsize to not exceed
1/6 of the physical memory (i.e., GDK_mem_maxsize_max).


diffs (23 lines):

diff --git a/gdk/gdk_utils.mx b/gdk/gdk_utils.mx
--- a/gdk/gdk_utils.mx
+++ b/gdk/gdk_utils.mx
@@ -1678,7 +1678,8 @@ GDKinit(opt *set, int setlen)
 #ifdef NATIVE_WIN32
        GDK_mmap_minsize = GDK_mem_maxsize_max;
 #else
-       GDK_mmap_minsize = GDK_mem_bigsize = MIN( 1<<30 , GDK_mem_maxsize_max );
+       GDK_mmap_minsize = GDK_mem_bigsize = MIN( 1<<30 , GDK_mem_maxsize_max/6 
);
+       /*   per op:  2 args + 1 res, each with head & tail  =>  (2+1)*2 = 6  ^ 
*/
 #endif
        GDKmemchk(TRUE, TRUE);
        GDKremovedir(DELDIR);
@@ -1754,7 +1755,8 @@ GDKinit(opt *set, int setlen)
 #else
        /* WARNING: This unconditionally overwrites above settings, */
        /* incl. setting via MonetDB env. var. "gdk_mmap_minsize" ! */
-       GDK_mmap_minsize = GDK_mem_bigsize = MIN( 1<<30 , GDK_mem_maxsize_max );
+       GDK_mmap_minsize = GDK_mem_bigsize = MIN( 1<<30 , 
(GDK_mem_maxsize_max/6) );
+       /*    per op:  2 args + 1 res, each with head & tail  =>  (2+1)*2 = 6  
^ */
 #endif
 
 #ifdef HAVE_POSIX_FADVISE
_______________________________________________
Checkin-list mailing list
[email protected]
http://mail.monetdb.org/mailman/listinfo/checkin-list

Reply via email to