Hello, I am having difficulty converting a column format matrix to row format using mkl_dcsrcsc(). I have checked the matrix many times over and can't find anything wrong with the definition of the data, still I get an incorrect result. Using data from the example C program, converters_c.c the answer I recieve is correct.
The data for converters_c.c, NNZ=8, N=4
double acsc[] = {5,9,8,2,3,1,6,4};
LONG aj[] = {0,1,0,1,2,3,2,3};
LONG ai[] = {0,2,4,6,8};
The data in my matrix, NNZ=13, N=5
double acsc[] = {1,-2,-4,-1,5,8,4,2,-3,6,7,4,-5};
LONG aj[] = {0,1,3,0,1,4,2,3,0,2,3,2,4};
LONG ai[] = {0,3,6,8,11,13};
where job = {1 0 0 2 NNZ 1}; in both cases, LONG = _int64, 0 based indexing.
Additionally, the 4'th element in job[] is (2), which is not explained in the manual as far as I can tell (it is described as 'locat' in the example program), and job[5]=1 is the values that fill all output arrays, not job[5]=0 as the manual states on page 450 of the mklman.
Just interested to see if anyone can help explain the problem, perhaps I have overlooked something.
Thanks, john
Link Copied
If job(6)=0, all output arrays acsr, ja, and ia are filled in for the output storage.
If job(6)0, only arrays ja, ia are filled in for the output storage.
but actually should be
For conversion to the CSR format:
If job(6)=0, only arrays ja, ia are filled in for the output storage.
If job(6) != 0, all output arrays acsr, ja, and ia are filled in for the output storage.
and the same for conversion to the CSC format.
--Gennady
we 've checked it - this is the error.this issue has been submitted to our internal development tracking database for further investigation, we will inform you once a new update becomes available.
Here is a bug tracking number for your reference: DPD200092652.
Regards, Gennady
For more complete information about compiler optimizations, see our Optimization Notice.