Changeset: 15e9dc81ea4b for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=15e9dc81ea4b
Modified Files:
monetdb5/mal/Tests/blkjoin.mal
monetdb5/mal/Tests/bloom.mal
monetdb5/mal/Tests/dataflow00.mal
monetdb5/mal/Tests/dataflow01.mal
monetdb5/mal/Tests/flowchk.mal
monetdb5/mal/Tests/prejoin.mal
monetdb5/mal/Tests/recycle01.mal
monetdb5/mal/Tests/recycle02.mal
monetdb5/mal/Tests/recycle03.mal
monetdb5/mal/Tests/recycle04.mal
monetdb5/mal/Tests/recycle05.mal
monetdb5/mal/Tests/recycle06.mal
monetdb5/mal/Tests/recycle07.mal
monetdb5/mal/Tests/recycle08.mal
monetdb5/mal/Tests/recycle09.mal
monetdb5/mal/Tests/recycle10.mal
monetdb5/mal/Tests/recycle11.mal
monetdb5/mal/Tests/recycle12.mal
monetdb5/mal/Tests/recycle13.mal
monetdb5/mal/Tests/saveload.mal
monetdb5/mal/Tests/tst007.mal
monetdb5/mal/Tests/tst017.mal
monetdb5/mal/Tests/tst018.mal
monetdb5/mal/Tests/tst025.mal
monetdb5/mal/Tests/tst026.mal
monetdb5/mal/Tests/tst027.mal
monetdb5/mal/Tests/tst028.mal
monetdb5/mal/Tests/tst029.mal
monetdb5/mal/Tests/tst031.mal
monetdb5/mal/Tests/tst032.mal
monetdb5/mal/Tests/tst033.mal
monetdb5/mal/Tests/tst034.mal
monetdb5/mal/Tests/tst035.mal
monetdb5/mal/Tests/tst038.mal
monetdb5/mal/Tests/tst039.mal
monetdb5/mal/Tests/tst042.mal
monetdb5/mal/Tests/tst046.mal
monetdb5/mal/Tests/tst047.mal
monetdb5/mal/Tests/tst048.mal
monetdb5/mal/Tests/tst049.mal
monetdb5/mal/Tests/tst050.mal
monetdb5/mal/Tests/tst052.mal
monetdb5/mal/Tests/tst077.mal
monetdb5/mal/Tests/tst090.mal
monetdb5/mal/Tests/tst1000.mal
monetdb5/mal/Tests/tst1002.mal
monetdb5/mal/Tests/tst1004.mal
monetdb5/mal/Tests/tst1005.mal
monetdb5/mal/Tests/tst1012.mal
monetdb5/mal/Tests/tst1014.mal
monetdb5/mal/Tests/tst1020.mal
monetdb5/mal/Tests/tst1021.mal
monetdb5/mal/Tests/tst1022.mal
monetdb5/mal/Tests/tst103.mal
monetdb5/mal/Tests/tst104.mal
monetdb5/mal/Tests/tst105.mal
monetdb5/mal/Tests/tst105a.mal
monetdb5/mal/Tests/tst106.mal
monetdb5/mal/Tests/tst1200.mal
monetdb5/mal/Tests/tst1201.mal
monetdb5/mal/Tests/tst1202.mal
monetdb5/mal/Tests/tst1203.mal
monetdb5/mal/Tests/tst1204.mal
monetdb5/mal/Tests/tst1205.mal
monetdb5/mal/Tests/tst1206.mal
monetdb5/mal/Tests/tst1225.mal
monetdb5/mal/Tests/tst130.mal
monetdb5/mal/Tests/tst150.mal
monetdb5/mal/Tests/tst1500.mal
monetdb5/mal/Tests/tst1501.mal
monetdb5/mal/Tests/tst1502.mal
monetdb5/mal/Tests/tst1503.mal
monetdb5/mal/Tests/tst1504.mal
monetdb5/mal/Tests/tst1505.mal
monetdb5/mal/Tests/tst1602.mal
monetdb5/mal/Tests/tst1604.mal
monetdb5/mal/Tests/tst200.mal
monetdb5/mal/Tests/tst201.mal
monetdb5/mal/Tests/tst202.mal
monetdb5/mal/Tests/tst210.mal
monetdb5/mal/Tests/tst220.mal
monetdb5/mal/Tests/tst225.mal
monetdb5/mal/Tests/tst230.mal
monetdb5/mal/Tests/tst231.mal
monetdb5/mal/Tests/tst232.mal
monetdb5/mal/Tests/tst233.mal
monetdb5/mal/Tests/tst234.mal
monetdb5/mal/Tests/tst235.mal
monetdb5/mal/Tests/tst236.mal
monetdb5/mal/Tests/tst237.mal
monetdb5/mal/Tests/tst240.mal
monetdb5/mal/Tests/tst250.mal
monetdb5/mal/Tests/tst251.mal
monetdb5/mal/Tests/tst2510.mal
monetdb5/mal/Tests/tst252.mal
monetdb5/mal/Tests/tst253.mal
monetdb5/mal/Tests/tst255.mal
monetdb5/mal/Tests/tst256.mal
monetdb5/mal/Tests/tst2560.mal
monetdb5/mal/Tests/tst260.mal
monetdb5/mal/Tests/tst265.mal
monetdb5/mal/Tests/tst267.mal
monetdb5/mal/Tests/tst270.mal
monetdb5/mal/Tests/tst271.mal
monetdb5/mal/Tests/tst272.mal
monetdb5/mal/Tests/tst273.mal
monetdb5/mal/Tests/tst274.mal
monetdb5/mal/Tests/tst277.mal
monetdb5/mal/Tests/tst280.mal
monetdb5/mal/Tests/tst285.mal
monetdb5/mal/Tests/tst292.mal
monetdb5/mal/Tests/tst3000.mal
monetdb5/mal/Tests/tst3030.mal
monetdb5/mal/Tests/tst307.mal
monetdb5/mal/Tests/tst350.mal
monetdb5/mal/Tests/tst380.mal
monetdb5/mal/Tests/tst400cHuge.mal
monetdb5/mal/Tests/tst400d.mal
monetdb5/mal/Tests/tst450.mal
monetdb5/mal/Tests/tst4700.mal
monetdb5/mal/Tests/tst605.mal
monetdb5/mal/Tests/tst606.mal
monetdb5/mal/Tests/tst610.mal
monetdb5/mal/Tests/tst611.mal
monetdb5/mal/Tests/tst612.mal
monetdb5/mal/Tests/tst654.mal
monetdb5/mal/Tests/tst655.mal
monetdb5/mal/Tests/tst680.mal
monetdb5/mal/Tests/tst750.mal
monetdb5/mal/Tests/tst755.mal
monetdb5/mal/Tests/tst760.mal
monetdb5/mal/Tests/tst770.mal
monetdb5/mal/Tests/tst781.mal
monetdb5/mal/Tests/tst800.mal
monetdb5/mal/Tests/tst801.mal
monetdb5/mal/Tests/tst802.mal
monetdb5/mal/Tests/tst803.mal
monetdb5/mal/Tests/tst805.mal
monetdb5/mal/Tests/tst820.mal
monetdb5/mal/Tests/tst830.mal
monetdb5/mal/Tests/tst850.mal
monetdb5/mal/Tests/tst866.mal
monetdb5/mal/Tests/tst867.mal
monetdb5/mal/Tests/tst870.mal
monetdb5/mal/Tests/tst890.mal
monetdb5/mal/Tests/tst900.mal
monetdb5/mal/Tests/tst901.mal
monetdb5/mal/Tests/tst901a.mal
monetdb5/mal/Tests/tst901b.mal
monetdb5/mal/Tests/tst902.mal
monetdb5/mal/Tests/tst903.mal
monetdb5/mal/Tests/tst904.mal
monetdb5/mal/Tests/tst905.mal
monetdb5/mal/Tests/tst906.mal
monetdb5/mal/Tests/tst907.mal
monetdb5/mal/Tests/tst908.mal
monetdb5/mal/Tests/tst909.mal
monetdb5/mal/Tests/tst911.mal
monetdb5/mal/Tests/tst912.mal
monetdb5/mal/Tests/tst913.mal
monetdb5/mal/Tests/tst950.mal
monetdb5/mal/Tests/tst960.mal
monetdb5/mal/Tests/venks.mal
Branch: headless
Log Message:
Moving the first test set
The bats are replaced by columns in the test suite.
It is not bound to work yet. Merely a prep for the
upcoming parser adjustments.
diffs (truncated from 207238 to 300 lines):
diff --git a/monetdb5/mal/Tests/blkjoin.mal b/monetdb5/mal/Tests/blkjoin.mal
--- a/monetdb5/mal/Tests/blkjoin.mal
+++ b/monetdb5/mal/Tests/blkjoin.mal
@@ -14,47 +14,25 @@
t0:= alarm.usec();
lbase:= microbenchmark.random(0:oid, M, nil:int);
rbase:= microbenchmark.random(0:oid, N, nil:int);
-##lbase:= bat.new(:oid,:int);
-##barrier (go,i):= language.newRange(0:int);
-## k:= mmath.rand();
-## o:= calc.oid(i);
-## bat.insert(lbase,o,k);
-## redo (go,i):= language.nextElement(1:int,M);
-##exit (go,i);
-##rbase:= bat.new(:oid,:int);
-##barrier (go,i):= language.newRange(0:int);
-## k:= mmath.rand();
-## o:= calc.oid(i);
-## bat.insert(rbase,o,k);
-## redo (go,i):= language.nextElement(1:int,N);
-##exit (go,i);
t1:= alarm.usec();
d0:= t1-t0;
io.printf("#loop %d\n",d0);
t0:= alarm.usec();
-bat.save(lbase);
-bat.save(rbase);
-
-#cnt:= aggr.count(lbase);
-#io.printf("#left: %d\n",cnt);
-#cnt:= aggr.count(rbase);
-#io.printf("#right: %d\n",cnt);
-
-#mdb.setTrace(true);
+column.save(lbase);
+column.save(rbase);
#get fresh copies for both experiments
t0:= alarm.usec();
lb2:= algebra.copy(lbase);
rb2:= algebra.copy(rbase);
-rr2:= bat.reverse(rb2);
t1:= alarm.usec();
d0:= t1-t0;
io.printf("#copy %d\n",d0);
-bat.save(lb2);
-bat.save(rb2);
+column.save(lb2);
+column.save(rb2);
# the heart of the matter
t0:= alarm.usec();
-w := algebra.join(lb2,rr2);
+(w,w2) := algebra.join(lb2,rb2);
t1:= alarm.usec();
d0:= t1-t0;
d1:= d0;
@@ -70,15 +48,14 @@
t0:= alarm.usec();
lb2:= algebra.copy(lbase);
rb2:= algebra.copy(rbase);
-rr2:= bat.reverse(rb2);
t1:= alarm.usec();
d0:= t1-t0;
io.printf("#copy %d\n",d0);
-bat.save(lb2);
-bat.save(rb2);
+column.save(lb2);
+column.save(rb2);
# the heart of the matter
t0:= alarm.usec();
-w := algebra.partjoin(lb2,rr2);
+(w,w2) := algebra.partjoin(lb2,rb2);
t1:= alarm.usec();
d0:= t1-t0;
d1:= d0;
@@ -94,84 +71,17 @@
t0:= alarm.usec();
lb2:= algebra.copy(lbase);
rb2:= algebra.copy(rbase);
-rr2:= bat.reverse(rb2);
t1:= alarm.usec();
d0:= t1-t0;
io.printf("#copy %d\n",d0);
-bat.save(lb2);
-bat.save(rb2);
+column.save(lb2);
+column.save(rb2);
# the heart of the matter
t0:= alarm.usec();
-w := algebra.partjoin(lb2,rr2);
+(w,w2) := algebra.partjoin(lb2,rb2);
t1:= alarm.usec();
d0:= t1-t0;
d1:= d0;
io.printf("#partjoin %d\n",d0);
cnt:= aggr.count(w);
io.print(cnt);
-w := nil;
-rr2:= nil;
-rb2:= nil;
-lb2:= nil;
-
-#
-##get fresh copies for both experiments
-#t0:= alarm.usec();
-#lb2:= algebra.copy(lbase);
-#rb2:= algebra.copy(rbase);
-#t1:= alarm.usec();
-#d0:= t1-t0;
-#io.printf("#copy %d\n",d0);
-#rr2:= bat.reverse(rb2);
-#bat.save(lb2);
-#bat.save(rb2);
-## the heart of the matter
-#t0:= alarm.usec();
-#w := algebra.blkjoin(lb2,rr2);
-#t1:= alarm.usec();
-#d0:= t1-t0;
-#d1:= d0;
-#io.printf("#blkjoin %d\n",d0);
-#cnt:= aggr.count(w);
-#io.print(cnt);
-#w := nil;
-#rr2:= nil;
-#rb2:= nil;
-#lb2:= nil;
-#
-##get fresh copies for both experiments
-#t0:= alarm.usec();
-#lb2:= algebra.copy(lbase);
-#rb2:= algebra.copy(rbase);
-#t1:= alarm.usec();
-#d0:= t1-t0;
-#io.printf("#copy %d\n",d0);
-#bat.save(lb2);
-#bat.save(rb2);
-## what if you sort first
-#t0:= alarm.usec();
-#s1 := algebra.sortTail(lb2);
-#t1:= alarm.usec();
-#d0:= t1-t0;
-#d1:= d0;
-#io.printf("#sort %d\n",d0);
-#lb2 := nil;
-#bat.save(s1);
-#t0:= alarm.usec();
-#s2 := algebra.sortTail(rb2);
-#t1:= alarm.usec();
-#d0:= t1-t0;
-#d1:= d1+d0;
-#io.printf("#sort %d\n",d0);
-#rb2 := nil;
-#ss2:= bat.reverse(s2);
-#bat.save(s2);
-#t0:= alarm.usec();
-#w := algebra.join(s1,ss2);
-#t1:= alarm.usec();
-#d0:= t1-t0;
-#d1:= d1+d0;
-#io.printf("#join %d\n",d0);
-#io.printf("#sortmerge join %d\n",d1);
-#cnt:= aggr.count(w);
-#io.print(cnt);
diff --git a/monetdb5/mal/Tests/bloom.mal b/monetdb5/mal/Tests/bloom.mal
--- a/monetdb5/mal/Tests/bloom.mal
+++ b/monetdb5/mal/Tests/bloom.mal
@@ -7,25 +7,24 @@
S:= 1000:int;
t0:= alarm.usec();
-lbase:= bat.new(:oid,:int);
+lbase:= column.new(:int);
barrier (go,i):= language.newRange(0:int);
k:= mmath.rand();
o:= calc.oid(i);
- bat.insert(lbase,o,k);
+ column.append(lbase,o,k);
redo (go,i):= language.nextElement(1:int,M);
exit (go,i);
-rbase:= bat.new(:oid,:int);
+rbase:= column.new(:int);
barrier (go,i):= language.newRange(0:int);
k:= mmath.rand();
- o:= calc.oid(i);
- bat.insert(rbase,o,k);
+ column.append(rbase,k);
redo (go,i):= language.nextElement(1:int,N);
exit (go,i);
# share a sample
s1 := algebra.sample(lbase,S);
s2 := algebra.sample(rbase,S);
-bat.append(lbase,s2);
-bat.append(rbase,s1);
+column.append(lbase,s2);
+column.append(rbase,s1);
t1:= alarm.usec();
d0:= t1-t0;
io.printf("#loop %d\n",d0);
@@ -42,14 +41,12 @@
d0:= t1-t0;
io.printf("#copy %d\n",d0);
t0:= alarm.usec();
-cc:= bat.reverse(rb1);
-j:= algebra.join(lb1,cc);
+(j,j2):= algebra.join(lb1,rb1);
t1:= alarm.usec();
d0:= t1-t0;
io.printf("#join %d\n",d0);
t0:= alarm.usec();
-cc:= bat.reverse(rb1);
-j:= algebra.join(lb1,cc);
+(j,j2):= algebra.join(lb1,rb1);
t1:= alarm.usec();
d0:= t1-t0;
cnt:= aggr.count(j);
@@ -63,8 +60,7 @@
d1:= d0;
io.printf("#prejoin %d\n",d0);
t0:= alarm.usec();
-cy:= bat.reverse(y);
-h:= algebra.join(w,cy);
+(h,h2):= algebra.join(w,y);
t1:= alarm.usec();
d0:= t1-t0;
io.printf("#join %d\n",d0);
@@ -82,8 +78,7 @@
d1:= d0;
io.printf("#prejoin %d\n",d0);
t0:= alarm.usec();
-cy:= bat.reverse(y);
-h:= algebra.join(w,cy);
+(h,h2):= algebra.join(w,y);
t1:= alarm.usec();
d0:= t1-t0;
io.printf("#join %d\n",d0);
diff --git a/monetdb5/mal/Tests/dataflow00.mal
b/monetdb5/mal/Tests/dataflow00.mal
--- a/monetdb5/mal/Tests/dataflow00.mal
+++ b/monetdb5/mal/Tests/dataflow00.mal
@@ -1,32 +1,31 @@
# baseline test for dataflow processing.
# cardinalities
-function makeBat(limit:int)(:bat[:int,:int],:bat[:int,:int]);
- b:=bat.new(:int,:int);
+function makeBat(limit:int):col[:int];
+ b:=column.new(:int);
barrier (go,i):= language.newRange(0:int);
j:= mmath.rand();
j:= j % limit;
- bat.insert(b,i,j);
+ column.append(b,j);
redo (go,i):= language.nextElement(1:int,limit);
exit go;
- br:= bat.reverse(b);
- return (b,br);
+ return b;
end makeBat;
-(b10,b10r):= makeBat(10);
+b10:= makeBat(10);
io.print(b10);
-(b10k,b10kr):= makeBat(10240);
+b10k:= makeBat(10240);
#for each possible join plan calculate the total cost
-function llinear(a:bat[:int,:int], b:bat[:int,:int],
- c:bat[:int,:int], d:bat[:int,:int]) (:lng,:int);
+function llinear(a:col[:int], b:col[:int],
+ c:col[:int], d:col[:int]) :int;
t0:= alarm.usec();
- l := bat.new(:int,:int);
+ l := column.new(:int);
barrier x:= language.dataflow();
- j:= algebra.join(a,b);
- k:= algebra.join(j,c);
- l:= algebra.join(k,d);
+ (j,ja):= algebra.join(a,b);
+ (k,ka):= algebra.join(ja,c);
+ (l,la):= algebra.join(ka,d);
exit x;
t1:= alarm.usec();
t1:= t1-t0;
@@ -34,14 +33,14 @@
return (t1,cnt);
end llinear;
-function rlinear(a:bat[:int,:int], b:bat[:int,:int],
- c:bat[:int,:int], d:bat[:int,:int]) (:lng,:int);
+function rlinear(a:col[:int], b:col[:int],
+ c:col[:int], d:col[:int]) :int);
t0:= alarm.usec();
- l := bat.new(:int,:int);
+ l := column.new(:int);
barrier x:= language.dataflow();
- j:= algebra.join(c,d);
- k:= algebra.join(b,j);
- l:= algebra.join(a,k);
+ (ja,j):= algebra.join(c,d);
+ (ka,k):= algebra.join(b,j);
_______________________________________________
Checkin-list mailing list
[email protected]
http://mail.monetdb.org/mailman/listinfo/checkin-list