Community
cancel
Showing results for 
Search instead for 
Did you mean: 
Ada_Z_
Beginner
21 Views

ask questions about mkl_<>csrmm function

Hi everyone,

I used mkl_<>csrmm function in deep learning, but I met with a really strange problem. One parameter in mkl_<>csrmm is called pntrb (row pointer in compressed sparse row format) and its definition is:

pntrb

INTEGER. Array of length m.

For one-based indexing this array contains row indices, such that pntrb(I) - pntrb(1) + 1 is the first index of row I in the arrays val and indx.

For zero-based indexing this array contains row indices, such that pntrb(I) - pntrb(0) is the first index of row I in the arrays val and indx.

Refer to pointerb array description in CSR Format for more details.

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

 

As you can see, pntrb actually calculates the difference rather than absolute value. In my program, if pntrb(0) is small, it works well. But if pntrb(0) is large, the program is just hang there and no error information. I am sure the value of pntrb(0) does not exceed the maximum value (2^32-1). Could someone tell me what's wrong?Thanks

0 Kudos
1 Reply
Gennady_F_Intel
Moderator
21 Views

You may try to use ILP64 libraries from Intel MKL to address this big value problem. Please have a look at the MKL User's Guide fr more details. as an example - Using the ILP64 Interface vs. LP64 Interface. You may also find an example how to link and compile the code with this API.