Changeset: 5c50936bec5c for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=5c50936bec5c
Modified Files:
monetdb5/mal/mal_interpreter.mx
monetdb5/optimizer/opt_evaluate.mx
Branch: default
Log Message:
Dont generate profiler tracing in optimizer
The optimizer calls the interpreter for constant expressions.
These should not be profiled.
diffs (34 lines):
diff --git a/monetdb5/mal/mal_interpreter.mx b/monetdb5/mal/mal_interpreter.mx
--- a/monetdb5/mal/mal_interpreter.mx
+++ b/monetdb5/mal/mal_interpreter.mx
@@ -2559,7 +2559,7 @@ void releaseBAT(MalBlkPtr mb, MalStkPtr
mb->profiler[ppc].ticks = 0;
mb->profiler[ppc].clock = stk->clock;
/* emit the instruction upon start as well */
- if (@2)
+ if (@2 && malProfileMode)
profilerEvent(cntxt->idx, mb, stk,
stkpc);
#ifdef HAVE_TIMES
times(&stk->timer);
diff --git a/monetdb5/optimizer/opt_evaluate.mx
b/monetdb5/optimizer/opt_evaluate.mx
--- a/monetdb5/optimizer/opt_evaluate.mx
+++ b/monetdb5/optimizer/opt_evaluate.mx
@@ -156,6 +156,7 @@ OPTevaluateImplementation(Client cntxt,
InstrPtr p;
int i, k, limit, *alias, barrier;
MalStkPtr env = NULL;
+ int profiler;
str msg;
int debugstate = cntxt->itrace, actions = 0;
Lifespan span;
@@ -194,7 +195,10 @@ OPTevaluateImplementation(Client cntxt,
actions++;
barrier = p->barrier;
p->barrier = 0;
+ profiler = malProfileMode; /* we don't trace it */
+ malProfileMode = 0;
msg = reenterMAL(cntxt, mb, i, i + 1, env, 0, 0);
+ malProfileMode= profiler;
p->barrier = barrier;
OPTDEBUGevaluate {
mnstr_printf(cntxt->fdout, "#retc var %s\n",
getVarName(mb, getArg(p, 0)));
_______________________________________________
Checkin-list mailing list
[email protected]
http://mail.monetdb.org/mailman/listinfo/checkin-list