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