Changeset: 6e8d8565fb3a for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=6e8d8565fb3a
Modified Files:
gdk/gdk.h
monetdb5/extras/bwd/cl_program_utilities.c
monetdb5/extras/bwd/operations.c
monetdb5/extras/bwd/utilities.c
monetdb5/mal/mal_interpreter.mx
sql/server/sql_statement.c
Branch: bwd
Log Message:
* some minor fixes
Unterschiede (263 Zeilen):
diff --git a/gdk/gdk.h b/gdk/gdk.h
--- a/gdk/gdk.h
+++ b/gdk/gdk.h
@@ -1745,7 +1745,7 @@ gdk_export void GDKqsort_rev(void *h, vo
if ((b)->batCount == 0) { \
(col)->nonil = 1; \
(col)->nil = 0; \
- } else if (!(col)->dense && \
+ } if (!(col)->dense && \
(col)->type == TYPE_oid && \
(sqbs = ((oid *)
(col)->heap.base)[(b)->batFirst]) != oid_nil) { \
(col)->dense = 1; \
diff --git a/monetdb5/extras/bwd/cl_program_utilities.c
b/monetdb5/extras/bwd/cl_program_utilities.c
--- a/monetdb5/extras/bwd/cl_program_utilities.c
+++ b/monetdb5/extras/bwd/cl_program_utilities.c
@@ -148,15 +148,15 @@ cl_program getUSelectProgram(int type, c
" for(int i = 0; i < %4$d; i++)\n"
" value += (approximation[inputOffset + i] <<
((i+sizeof(%1$s)-%6$d - %4$d)*8));\n"
"\n"
- " if(get_global_id(0) < 10)\n"
- " printf(\"%%d: %%d, base: %%d\\n\", get_global_id(0),
value, approximationTail->base);\n"
+ /* " if(get_global_id(0) < 10)\n" */
+ /* " printf(\"%%d: %%d, base: %%d\\n\", get_global_id(0),
value, approximationTail->base);\n" */
" if((value %2$s operand)"
" && (%5$d || value %3$s operand2)"
" )"
"{\n"
" const int index = atomic_inc(&(outputHead->count));\n"
" atomic_inc(&(outputTail->count));\n" // TODO: this could
probably be done more efficiently
- " printf(\"selected value %%d from slot %%d into slot
%%d\\n\", value, get_global_id(0), index);\n"
+ /* " printf(\"selected value %%d from slot %%d into slot
%%d\\n\", value, get_global_id(0), index);\n" */
" const int offset = index * %4$d;\n"
" outputHead->positions[index] = get_global_id(0);\n"
" for(int i = 0; i < %4$d; i++){\n"
diff --git a/monetdb5/extras/bwd/operations.c b/monetdb5/extras/bwd/operations.c
--- a/monetdb5/extras/bwd/operations.c
+++ b/monetdb5/extras/bwd/operations.c
@@ -459,7 +459,6 @@ str uselectrefine(bat *res, bat *bid, pt
const int deCompressedValue =
compressedTail->base+ \
(compressedValue <<
tailResidualBits)
\
+
(*(int*)&residuals[index*residualBytes] & residualMask); \
- printf ("compr: %d, decompr:
%d\n", compressedValue, deCompressedValue); \
{
\
positionRegion[j] =
index;
\
j+= ((deCompressedValue
comparator value1) & \
diff --git a/monetdb5/extras/bwd/utilities.c b/monetdb5/extras/bwd/utilities.c
--- a/monetdb5/extras/bwd/utilities.c
+++ b/monetdb5/extras/bwd/utilities.c
@@ -295,19 +295,21 @@ const unsigned int decomposeIntArray(con
program = compileProgram("__kernel void dummy (__global const
struct{int count; int padding; char values[];}* inputTail1){}","");
cl_kernel dummyKernel = clCreateKernel(program, "dummy", &err);
- if(0)
- for (int i = 0; i < size; ++i) {
+ if(0){
+ int i, j;
+ for (i = 0; i < size; ++i) {
int approximationValue = 0, residualValue = 0;
- for (int j = 0; j < approximationBytes ; ++j){
+ for (j = 0; j < approximationBytes ; ++j){
printf ("%d\n",
approximation->elements[i*approximationBytes+j]);
approximationValue =
approximation->elements[i*approximationBytes+j]<<(j*8);
}
- for (int j = 0; j < residualBytes; ++j)
+ for (j = 0; j < residualBytes; ++j)
residualValue =
slot->residuals[i*residualBytes+j]<<(j*8);
printf ("base: %d, approximation: %d, refinement:
%d\n", approximation->base,
approximation->base+(approximationValue<<(residualBytes*8)),
approximation->base+(approximationValue<<(residualBytes*8)) + residualValue);
}
+ }
clSetKernelArg(dummyKernel, 0, sizeof(cl_mem),
(cl_mem[]){slot->tailApproximation});
if((err = clEnqueueNDRangeKernel(getCommandQueue(), dummyKernel, 1,
(const size_t[]){0}, (const size_t[]){1}, (const size_t[]){1}, 0, NULL, NULL)))
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
@@ -1970,33 +1970,44 @@ safeguardStack(Client cntxt, MalBlkPtr m
@:safeTarget(@1)@
/* improve performance with 20 ms/1M calls*/
assert(pci->fcn != NULL);
+ {
+ char* text = instruction2str(mb, stk, pci, LIST_MAL_EXPLAIN);
+ printf("%s\n", text);
+ GDKfree(text);
+ }
+
switch (pci->argc) {
case 0: ret = (str)(*pci->fcn)();
break;
case 1: ret = (str)(*pci->fcn)(
- (ptr)getArgReference(stk, pci, 0));
+ (ptr)getArgReference(stk, pci, 0),
+ cntxt);
break;
case 2: ret = (str)(*pci->fcn)(
(ptr)getArgReference(stk, pci, 0),
- (ptr)getArgReference(stk, pci, 1));
+ (ptr)getArgReference(stk, pci, 1),
+ cntxt);
break;
case 3: ret = (str)(*pci->fcn)(
(ptr)getArgReference(stk, pci, 0),
(ptr)getArgReference(stk, pci, 1),
- (ptr)getArgReference(stk, pci, 2));
+ (ptr)getArgReference(stk, pci, 2),
+ cntxt);
break;
case 4: ret = (str)(*pci->fcn)(
(ptr)getArgReference(stk, pci, 0),
(ptr)getArgReference(stk, pci, 1),
(ptr)getArgReference(stk, pci, 2),
- (ptr)getArgReference(stk, pci, 3));
+ (ptr)getArgReference(stk, pci, 3),
+ cntxt);
break;
case 5: ret = (str)(*pci->fcn)(
(ptr)getArgReference(stk, pci, 0),
(ptr)getArgReference(stk, pci, 1),
(ptr)getArgReference(stk, pci, 2),
(ptr)getArgReference(stk, pci, 3),
- (ptr)getArgReference(stk, pci, 4));
+ (ptr)getArgReference(stk, pci, 4),
+ cntxt);
break;
case 6: ret = (str)(*pci->fcn)(
(ptr)getArgReference(stk, pci, 0),
@@ -2004,7 +2015,8 @@ safeguardStack(Client cntxt, MalBlkPtr m
(ptr)getArgReference(stk, pci, 2),
(ptr)getArgReference(stk, pci, 3),
(ptr)getArgReference(stk, pci, 4),
- (ptr)getArgReference(stk, pci, 5));
+ (ptr)getArgReference(stk, pci, 5),
+ cntxt);
break;
case 7: ret = (str)(*pci->fcn)(
(ptr)getArgReference(stk, pci, 0),
@@ -2013,7 +2025,8 @@ safeguardStack(Client cntxt, MalBlkPtr m
(ptr)getArgReference(stk, pci, 3),
(ptr)getArgReference(stk, pci, 4),
(ptr)getArgReference(stk, pci, 5),
- (ptr)getArgReference(stk, pci, 6));
+ (ptr)getArgReference(stk, pci, 6),
+ cntxt);
break;
case 8: ret = (str)(*pci->fcn)(
(ptr)getArgReference(stk, pci, 0),
@@ -2023,7 +2036,8 @@ safeguardStack(Client cntxt, MalBlkPtr m
(ptr)getArgReference(stk, pci, 4),
(ptr)getArgReference(stk, pci, 5),
(ptr)getArgReference(stk, pci, 6),
- (ptr)getArgReference(stk, pci, 7));
+ (ptr)getArgReference(stk, pci, 7),
+ cntxt);
break;
case 9: ret = (str)(*pci->fcn)(
(ptr)getArgReference(stk, pci, 0),
@@ -2034,7 +2048,8 @@ safeguardStack(Client cntxt, MalBlkPtr m
(ptr)getArgReference(stk, pci, 5),
(ptr)getArgReference(stk, pci, 6),
(ptr)getArgReference(stk, pci, 7),
- (ptr)getArgReference(stk, pci, 8));
+ (ptr)getArgReference(stk, pci, 8),
+ cntxt);
break;
case 10: ret = (str)(*pci->fcn)(
(ptr)getArgReference(stk, pci, 0),
@@ -2046,7 +2061,8 @@ safeguardStack(Client cntxt, MalBlkPtr m
(ptr)getArgReference(stk, pci, 6),
(ptr)getArgReference(stk, pci, 7),
(ptr)getArgReference(stk, pci, 8),
- (ptr)getArgReference(stk, pci, 9));
+ (ptr)getArgReference(stk, pci, 9),
+ cntxt);
break;
case 11: ret = (str)(*pci->fcn)(
(ptr)getArgReference(stk, pci, 0),
@@ -2059,7 +2075,8 @@ safeguardStack(Client cntxt, MalBlkPtr m
(ptr)getArgReference(stk, pci, 7),
(ptr)getArgReference(stk, pci, 8),
(ptr)getArgReference(stk, pci, 9),
- (ptr)getArgReference(stk, pci, 10));
+ (ptr)getArgReference(stk, pci, 10),
+ cntxt);
break;
case 12: ret = (str)(*pci->fcn)(
(ptr)getArgReference(stk, pci, 0),
@@ -2073,7 +2090,8 @@ safeguardStack(Client cntxt, MalBlkPtr m
(ptr)getArgReference(stk, pci, 8),
(ptr)getArgReference(stk, pci, 9),
(ptr)getArgReference(stk, pci, 10),
- (ptr)getArgReference(stk, pci, 11));
+ (ptr)getArgReference(stk, pci, 11),
+cntxt);
break;
case 13: ret = (str)(*pci->fcn)(
(ptr)getArgReference(stk, pci, 0),
@@ -2088,7 +2106,8 @@ safeguardStack(Client cntxt, MalBlkPtr m
(ptr)getArgReference(stk, pci, 9),
(ptr)getArgReference(stk, pci, 10),
(ptr)getArgReference(stk, pci, 11),
- (ptr)getArgReference(stk, pci, 12));
+ (ptr)getArgReference(stk, pci, 12),
+cntxt);
break;
case 14: ret = (str)(*pci->fcn)(
(ptr)getArgReference(stk, pci, 0),
@@ -2104,7 +2123,8 @@ safeguardStack(Client cntxt, MalBlkPtr m
(ptr)getArgReference(stk, pci, 10),
(ptr)getArgReference(stk, pci, 11),
(ptr)getArgReference(stk, pci, 12),
- (ptr)getArgReference(stk, pci, 13));
+ (ptr)getArgReference(stk, pci, 13),
+cntxt);
break;
case 15: ret = (str)(*pci->fcn)(
(ptr)getArgReference(stk, pci, 0),
@@ -2121,7 +2141,8 @@ safeguardStack(Client cntxt, MalBlkPtr m
(ptr)getArgReference(stk, pci, 11),
(ptr)getArgReference(stk, pci, 12),
(ptr)getArgReference(stk, pci, 13),
- (ptr)getArgReference(stk, pci, 14));
+ (ptr)getArgReference(stk, pci, 14),
+cntxt);
break;
case 16: ret = (str)(*pci->fcn)(
(ptr)getArgReference(stk, pci, 0),
@@ -2139,7 +2160,8 @@ safeguardStack(Client cntxt, MalBlkPtr m
(ptr)getArgReference(stk, pci, 12),
(ptr)getArgReference(stk, pci, 13),
(ptr)getArgReference(stk, pci, 14),
- (ptr)getArgReference(stk, pci, 15));
+ (ptr)getArgReference(stk, pci, 15),
+cntxt);
break;
default:
ret = createScriptException(mb, stkpc, MAL, NULL,
diff --git a/sql/server/sql_statement.c b/sql/server/sql_statement.c
--- a/sql/server/sql_statement.c
+++ b/sql/server/sql_statement.c
@@ -622,10 +622,11 @@ stmt_delta_table_bat(sql_allocator *sa,
s = stmt_union(sa, s, i);
}
/* even temp and readonly tables have deletes because we like to keep
void heads */
- if (access == RDONLY && isTable(c->t)) {
+ if (0 && access == RDONLY && isTable(c->t)) {
stmt *d = stmt_tbat(sa, c->t, RD_INS);
s = stmt_diff(sa, s, stmt_reverse(sa, d));
}
+
return s;
}
@@ -657,7 +658,8 @@ stmt_delta_table_idxbat(sql_allocator *s
s = stmt_union(sa, s, i);
}
/* even temp and readonly tables have deletes because we like to keep
void heads */
- if (access == RDONLY && isTable(idx->t)) {
+
+ if (0 && access == RDONLY && isTable(idx->t)) {
stmt *d = stmt_tbat(sa, idx->t, RD_INS);
s = stmt_diff(sa, s, stmt_reverse(sa, d));
}
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list