Changeset: e682c74ab017 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=e682c74ab017
Modified Files:
gdk/gdk_utils.c
monetdb5/mal/mal.c
monetdb5/mal/mal.h
monetdb5/optimizer/opt_mitosis.c
tools/mserver/mserver5.c
Branch: Nov2019
Log Message:
Use MT_npages for reporting only, use GDK_mem_maxsize to determine memory usage.
diffs (98 lines):
diff --git a/gdk/gdk_utils.c b/gdk/gdk_utils.c
--- a/gdk/gdk_utils.c
+++ b/gdk/gdk_utils.c
@@ -712,7 +712,6 @@ GDKinit(opt *set, int setlen)
if (strcmp("gdk_mem_maxsize", n[i].name) == 0) {
GDK_mem_maxsize = (size_t) strtoll(n[i].value, NULL,
10);
GDK_mem_maxsize = MAX(1 << 26, GDK_mem_maxsize);
- _MT_npages = (size_t) (GDK_mem_maxsize / (0.815 *
MT_pagesize()));
} else if (strcmp("gdk_vm_maxsize", n[i].name) == 0) {
GDK_vm_maxsize = (size_t) strtoll(n[i].value, NULL, 10);
GDK_vm_maxsize = MAX(1 << 30, GDK_vm_maxsize);
diff --git a/monetdb5/mal/mal.c b/monetdb5/mal/mal.c
--- a/monetdb5/mal/mal.c
+++ b/monetdb5/mal/mal.c
@@ -61,7 +61,6 @@ int mal_init(void){
return -1;
}
#endif
- monet_memory = MT_npages() * MT_pagesize();
initNamespace();
initParser();
#ifndef HAVE_EMBEDDED
@@ -126,7 +125,6 @@ void mserver_reset(void)
#endif
memset((char*)monet_cwd, 0, sizeof(monet_cwd));
- monet_memory = 0;
memset((char*)monet_characteristics,0, sizeof(monet_characteristics));
mal_namespace_reset();
/* No need to clean up the namespace, it will simply be extended
diff --git a/monetdb5/mal/mal.h b/monetdb5/mal/mal.h
--- a/monetdb5/mal/mal.h
+++ b/monetdb5/mal/mal.h
@@ -43,7 +43,7 @@
* leaving a small portion for other programs.
*/
#define GB (((lng)1024)*1024*1024)
-#define MEMORY_THRESHOLD (0.2 * monet_memory > 8 * GB? monet_memory - 8 *
GB: 0.8 * monet_memory)
+#define MEMORY_THRESHOLD (0.2 * GDK_mem_maxsize > 8 * GB? GDK_mem_maxsize -
8 * GB: 0.8 * GDK_mem_maxsize)
mal_export char monet_cwd[FILENAME_MAX];
mal_export size_t monet_memory;
diff --git a/monetdb5/optimizer/opt_mitosis.c b/monetdb5/optimizer/opt_mitosis.c
--- a/monetdb5/optimizer/opt_mitosis.c
+++ b/monetdb5/optimizer/opt_mitosis.c
@@ -134,10 +134,10 @@ OPTmitosisImplementation(Client cntxt, M
* Take into account the number of client connections,
* because all user together are responsible for resource contentions
*/
- m = monet_memory / argsize;
+ m = GDK_mem_maxsize / argsize;
/* if data exceeds memory size,
- * i.e., (rowcnt*argsize > monet_memory),
- * i.e., (rowcnt > monet_memory/argsize = m) */
+ * i.e., (rowcnt*argsize > GDK_mem_maxsize),
+ * i.e., (rowcnt > GDK_mem_maxsize/argsize = m) */
assert(threads > 0);
assert(activeClients > 0);
if (rowcnt > m && m / threads / activeClients > 0) {
diff --git a/tools/mserver/mserver5.c b/tools/mserver/mserver5.c
--- a/tools/mserver/mserver5.c
+++ b/tools/mserver/mserver5.c
@@ -125,13 +125,6 @@ monet_hello(void)
char *qc = " kMGTPE";
int qi = 0;
- monet_memory = MT_npages() * MT_pagesize();
- sz_mem_h = (dbl) monet_memory;
- while (sz_mem_h >= 1000.0 && qi < 6) {
- sz_mem_h /= 1024.0;
- qi++;
- }
-
printf("# MonetDB 5 server v%s", GDKversion());
{
#ifdef MONETDB_RELEASE
@@ -156,7 +149,20 @@ monet_hello(void)
""
#endif
);
- printf("# Found %.3f %ciB available main-memory.\n",
+ sz_mem_h = (dbl) (MT_npages() * MT_pagesize());
+ while (sz_mem_h >= 1000.0 && qi < 6) {
+ sz_mem_h /= 1024.0;
+ qi++;
+ }
+ printf("# Found %.3f %ciB available main-memory",
+ sz_mem_h, qc[qi]);
+ sz_mem_h = (dbl) GDK_mem_maxsize;
+ qi = 0;
+ while (sz_mem_h >= 1000.0 && qi < 6) {
+ sz_mem_h /= 1024.0;
+ qi++;
+ }
+ printf(" of which we use %.3f %ciB\n",
sz_mem_h, qc[qi]);
#ifdef MONET_GLOBAL_DEBUG
printf("# Database path:%s\n", GDKgetenv("gdk_dbpath"));
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list