Changeset: 9f5b7a4ac76a for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=9f5b7a4ac76a
Modified Files:
        monetdb5/mal/mal_dataflow.c
        monetdb5/optimizer/opt_pipes.c
Branch: default
Log Message:

Dataflow optimizer is accepted
The optimizers in the default pipe sofar do not cause any harm to
the new code generation. They may, however, be further improved
when the MAL signatures needed have become stable.


diffs (70 lines):

diff --git a/monetdb5/mal/mal_dataflow.c b/monetdb5/mal/mal_dataflow.c
--- a/monetdb5/mal/mal_dataflow.c
+++ b/monetdb5/mal/mal_dataflow.c
@@ -920,6 +920,27 @@ runDFLOWworker(void *t)
        THRdel(thr);
 }
 
+/* 
+ * Create a set of DFLOW interpreters.
+ * One worker will be adaptively be available for each client.
+ * The remainder are taken from the GDKnr_threads argument and
+ * typically is equal to the number of cores
+ * The global workers are assembled in a local table for possible
+ * debugging.
+static THR *workers;
+static int workercnt;
+void
+DFLOWinitialize()
+{
+       int i;
+       MT_lock_set(&mal_contextLock, "DFLOWinitialize");
+       workers = (THR*) GDKzalloc( sizeof(THR) * GDKnr_threads);
+       for ( i= 0; i < GDKnr_threads; i++)
+       MT_create_thread(&flow->worker[i].tid, runDFLOWworker,
+                                        flow->worker + i, MT_THR_JOINABLE);
+       MT_lock_unset(&mal_contextLock, "DFLOWinitialize");
+}
+ */
 /*
  * The dataflow administration is based on administration of
  * how many variables are still missing before it can be executed.
diff --git a/monetdb5/optimizer/opt_pipes.c b/monetdb5/optimizer/opt_pipes.c
--- a/monetdb5/optimizer/opt_pipes.c
+++ b/monetdb5/optimizer/opt_pipes.c
@@ -64,22 +64,22 @@ struct PIPELINES {
        {"default_pipe",
         "optimizer.inline();"
         "optimizer.remap();"
-     "optimizer.evaluate();"
-     "optimizer.costModel();"
-     "optimizer.coercions();"
-     "optimizer.emptySet();"
-     "optimizer.aliases();"
+        "optimizer.evaluate();"
+        "optimizer.costModel();"
+        "optimizer.coercions();"
+        "optimizer.emptySet();"
+        "optimizer.aliases();"
 //     "optimizer.mitosis();"
 //     "optimizer.mergetable();"
-     "optimizer.deadcode();"
-     "optimizer.commonTerms();"
-     "optimizer.groups();"
-     "optimizer.joinPath();"
+        "optimizer.deadcode();"
+        "optimizer.commonTerms();"
+        "optimizer.groups();"
+        "optimizer.joinPath();"
 //     "optimizer.reorder();"
-     "optimizer.deadcode();"
-     "optimizer.reduce();"
-//     "optimizer.dataflow();"
-     "optimizer.history();"
+        "optimizer.deadcode();"
+        "optimizer.reduce();"
+        "optimizer.dataflow();"
+        "optimizer.history();"
         "optimizer.multiplex();"
         "optimizer.garbageCollector();",
         "stable", NULL, NULL, 1},
_______________________________________________
checkin-list mailing list
[email protected]
http://mail.monetdb.org/mailman/listinfo/checkin-list

Reply via email to