I`m developing some examples with ArBB. One of these examples is a
simple array difference. I'm using sizes like 2000x2000, 8000x8000 but
when I try execute the code with 16384*16384 the aplicattion crashes.
However, I can execute the code for 14500*14500 for example.
intsize = width * height;
unsigned char*frame = static_cast
char*>(arbb::aligned_malloc( sizeof(unsigned char)*size));
unsigned char* background = static_cast
unsigned char* resultArbb = static_cast
char*>(arbb::aligned_malloc(size * sizeof(unsigned char)));
And then initialized it. The next step is to call to ArBB routine and to
bind the vectors.
dense vec_frame; bind(vec_frame, frame, width*height);
dense vec_background; bind(vec_background, background, width*height);
dense vec_result; bind(vec_result, result, width*height);
The error happens in the first binding. The ArBB error is:
"Internal error: CTE_COMPILER_ERROR COMP_ERROR: Dynamic Compiler
Internal Error "
My first impression is something related to the memory heap
size, but I have tried the function arbb_set_heap_size with a heap's
size of 1GB and the problem doesn't dissapear. Is there any limitation of vector's size?