I'm experiencing some problems with a Brook+ code (a GMRES solver for sparse matrix), which runs perfectly with BRT_RUNTIME=cpu, but which gives totally different results if BRT_RUNTIME is set to cpu.
I'm using double precision, sparse matrix-vector multiplications and dense matrix-matrix multiplications (with parts of code taken from Brook+ legacy samples "sparse_matrix_vector" and "double_precision_simple_matmult").
The matrix-matrix multiplication's gather input parameters and the output parameters are often subsets of bigger matrices. To select the sub-matrices, I'm using the "domain()" operator.
I thought that the problem could be related to the domain() operator together with a gather indexing, but I had fine results while running simple tests of matrix multiplication with input and output parameters selected with domain() operator.
I also found this post http://forums.amd.com/devforum...id=97566&enterthread=y , but in my case gather input parameters are indexed with double [ ] [ ].
Does anyone have any idea of what could be a possible source of errors?