Changeset: 9197252aa0ac for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=9197252aa0ac
Modified Files:
        monetdb5/extras/bwd/cl_program_utilities.c
Branch: bwd
Log Message:

* fixed shifting width during approximate selection


Unterschiede (21 Zeilen):

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
@@ -191,7 +191,7 @@ cl_program getUSelectProgram(int type, c
                "  size_t slot = 
(get_global_id(0)*approximationBits)/targetTypeBits;\n"
                "  size_t offset = 
(get_global_id(0)*approximationBits)%%targetTypeBits;\n"
                "  {\n"
-               "    __global const unsigned char* vals = 
approximationTail->values;\n"
+               "    __global const unsigned int* vals = 
approximationTail->values;\n"
                "    value += 
(((((offset+approximationBits)>targetTypeBits)*((vals[slot]<<(targetTypeBits-offset))
 + vals[slot+1]>>(approximationBits-targetTypeBits+offset))\n"
                "    + 
((offset+approximationBits)<=targetTypeBits)*(vals[slot]>>(targetTypeBits-offset-approximationBits)))&((1<<approximationBits)-1))<<residualBits);\n"
                "    printf(\"===== %%d in slot %%d, offset %%d, 
targetTypeBits: %%d, approximationBits: %%d (global id: %%d) = %%d\\n\", value, 
slot, offset, targetTypeBits, approximationBits, get_global_id(0), 
(((offset+approximationBits)>targetTypeBits)*((vals[slot]<<(targetTypeBits-offset))
 + vals[slot+1]>>(approximationBits-targetTypeBits+offset))\n"
@@ -224,7 +224,7 @@ cl_program getUSelectProgram(int type, c
        {
                char options[256];
                cl_program program;
-               snprintf(options, 256, "-D targetType=int -D 
approximationBits=%d -D residualBits=%lu", approximationBits-offsetBits, 
typeSizes[type]*8-approximationBits-offsetBits);
+               snprintf(options, 256, "-D targetType=int -D 
approximationBits=%d -D residualBits=%lu", approximationBits-offsetBits, 
typeSizes[type]*8-approximationBits);
                /* printf ("%s\n", sourceCode); */
                program = compileProgram(sourceCode, options);
                free(sourceCode);
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to