asbschmidt/CUDASW4

assert((offset_in-group_size) <= SDIV(queryLength, 2) * 2);

Closed this issue · 3 comments

Why do we have this assertion in the float_kernels.cuh, function computeMiddlePass?
It prevents from running align program with query sequences smaller than 63 characters long!

` const int final_out = queryLength % 64;
const int from_thread_id = 32 - ((final_out+1)/2);

    assert((offset_in-group_size) <= SDIV(queryLength, 2) * 2);

    if (threadIdx.x>=from_thread_id) {
        checkHEindex(offset_out-from_thread_id, queryLength, __LINE__);
        assert((offset_in-group_size) <= SDIV(queryLength, 2) * 2);
        devTempHcol[offset_out-from_thread_id]=H_temp_out;
        devTempEcol[offset_out-from_thread_id]=E_temp_out;
    }

`

Hi, this looks like leftover debug code. I will take a look.

I pushed a fix. Could you check if this works for you?

Hi! Yes, it will work. I did the same fix.