Changeset: 34eb3d576d9f for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=34eb3d576d9f
Modified Files:
        gdk/gdk_utils.c
Branch: default
Log Message:

BBPtrim triggered relative to resource usage.

Using a small fixed sized highwatermark on a 256G RAM machine
turns out to call BBPtrim too often/unnecessary
The new decision is aligned with MAL-Admission, where we start
worrying after 80% of the memory is claimed by rss.
At that stage we try to reduce the minimum needed to get back on safe grounds.


diffs (23 lines):

diff --git a/gdk/gdk_utils.c b/gdk/gdk_utils.c
--- a/gdk/gdk_utils.c
+++ b/gdk/gdk_utils.c
@@ -919,8 +919,17 @@ GDKvmtrim(void *limit)
                MEMDEBUG THRprintf(GDKstdout, "alloc = " SZFMT " %+zd rss = " 
SZFMT " %+zd\n", cursize, memdiff, rss, rssdiff);
                prevmem = cursize;
                prevrss = rss;
-               if (memdiff >= 0 && rssdiff < -32 * (ssize_t) MT_pagesize()) {
-                       BBPtrim(rss);
+               (void) rssdiff;
+               (void) memdiff;
+               //OLD:if (memdiff >= 0 && rssdiff < -32 * (ssize_t) 
MT_pagesize()) {
+               // Using a small fixed sized highwatermark on a 256G RAM machine
+               // turns out to call BBPtrim too often/unnecessary
+               // The new decision is aligned with MAL-Admission, where we 
start
+               // worrying after 80% of the memory is claimed
+               // At that stage we try to reduce the minimum needed to get 
back on safe grounds.
+        if (rss > 0.8 * (ssize_t) MT_npages() * MT_pagesize()) {
+            BBPtrim( rss - 0.8 * (ssize_t) MT_npages() * MT_pagesize()); 
+                       //BBPtrim(rss);
                        highload = 1;
                } else {
                        highload = 0;
_______________________________________________
checkin-list mailing list
[email protected]
http://mail.monetdb.org/mailman/listinfo/checkin-list

Reply via email to