Update of /cvsroot/monetdb/MonetDB5/src/modules/mal
In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv5196
Modified Files:
recycle.mx
Log Message:
added volume dump
Index: recycle.mx
===================================================================
RCS file: /cvsroot/monetdb/MonetDB5/src/modules/mal/recycle.mx,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -d -r1.11 -r1.12
--- recycle.mx 10 Mar 2008 11:36:30 -0000 1.11
+++ recycle.mx 11 Mar 2008 06:03:46 -0000 1.12
@@ -42,7 +42,9 @@
comment "Set recycler retainment policy:
1- nothing to be done
2- requires a minmal cut off time argument
-3- requires a minimal cut off result size";
+ a negative start triggers adaptive learning
+3- size cost model
+4- volumetric cost model (time x size) ";
pattern setReusePolicy(p:int...):void
address RECYCLEsetReuse
@@ -144,16 +146,21 @@
int i;
(void) ret;
- stream_printf(GDKout,"Recycler catalog \n");
+ stream_printf(GDKout,"#Recycler catalog\n");
+ stream_printf(GDKout,"#retain= %d time =%d sze= %d alpha= %4.3f\n",
+ retainPolicy, recycleTime, recycleVolume, recycleAlpha);
+ stream_printf(GDKout,"#reuse= %d\n", reusePolicy);
+ stream_printf(GDKout,"#rcache= %d\n", recycleCacheLimit);
/* and dump the statistics */
- if (recycleBlk) {
- for(i=0; i< recycleBlk->stop; i++){
- stream_printf(GDKout,"#%4d count=%3d ticks=%4d %s\n", i,
- recycleBlk->profiler[i].counter,
- recycleBlk->profiler[i].ticks,
-
instruction2str(recycleBlk,getInstrPtr(recycleBlk,i),TRUE));
- }
+ if (recycleBlk)
+ for(i=0; i< recycleBlk->stop; i++){
+ stream_printf(GDKout,"#%4d lru= %d cnt= %3d ticks=%4d vol= %4d
%s\n", i,
+ recycleBlk->profiler[i].clk,
+ recycleBlk->profiler[i].counter,
+ recycleBlk->profiler[i].ticks,
+
recycleBlk->profiler[i].ibytes+recycleBlk->profiler[i].obytes,
+
instruction2str(recycleBlk,getInstrPtr(recycleBlk,i),TRUE));
}
return MAL_SUCCEED;
}
@@ -163,10 +170,20 @@
{
(void) mb;
retainPolicy = * (int*) getArgReference(stk, p,1);
- if( retainPolicy == 2 && p->argc >= 2)
- retainTime = * (int*) getArgReference(stk, p,2);
- if( retainPolicy == 3 && p->argc >= 2)
- retainSize = * (size_t*) getArgReference(stk, p,2);
+ if( p->argc >= 2)
+ switch(retainPolicy){
+ case RETAIN_VOL:
+ if( p->argc >= 3)
+ recycleVolume = * (int*) getArgReference(stk, p,3);
+ case RETAIN_TIME:
+ case RETAIN_ADAPT:
+ recycleTime = * (int*) getArgReference(stk, p,2);
+ break;
+ case RETAIN_SIZE:
+ recycleVolume = * (int*) getArgReference(stk, p,2);
+ }
+ if(p->argc >3)
+ recycleAlpha = 1.0/ *(int*) getArgReference(stk, p,4);
(void)retainPolicy;
return MAL_SUCCEED;
}
-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Monetdb-checkins mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/monetdb-checkins