Intel® oneAPI Math Kernel Library
Ask questions and share information with other developers who use Intel® Math Kernel Library.

Internal consistency check failure when using DSS

Tianyu_D_
Beginner
728 Views

Hi there,

I am working on a project to use DSS to solve large sparse linear equations. However I met with internal consistency check failure. I could see no problem with my codes. Could anyone help me to figure the problem out? Thank you so much. The attached is my project file.

316170

0 Kudos
1 Solution
Gennady_F_Intel
Moderator
728 Views

this is the problem with the test.

From MKL documentation:  DSS_REORDER:...

If opt contains the option MKL_DSS_MY_ORDER, then you must supply a permutation vector in the array perm. In this case, the array perm is of length nRows, where nRows is the number of rows in the matrix as defined by the previous call to dss_define_structure.

If opt contains the option MKL_DSS_GET_ORDER, then the permutation vector computed during the dss_reorder call is copied to the array perm. In this case you must allocate the array perm beforehand. The permutation vector is computed in the same way as if the option MKL_DSS_AUTO_ORDER is set.....

finally, making the following changes, should help:

!          error = dss_reorder( handle, MKL_DSS_GET_ORDER, Idum)
           error = dss_reorder( handle, MKL_DSS_AUTO_ORDER, Idum)

regards, Gennady

View solution in original post

0 Kudos
7 Replies
Steven_L_Intel1
Employee
728 Views

For some reason, your attachment did not make it through. Is this an MKL solver you are calling?

0 Kudos
Tianyu_D_
Beginner
728 Views

Yes. I am calling mkl_dss solver.

Here is my project file.

316430

0 Kudos
Tianyu_D_
Beginner
728 Views

Here is my project file.

0 Kudos
Steven_L_Intel1
Employee
728 Views

Ok - I have moved this to the MKL forum.

0 Kudos
Gennady_F_Intel
Moderator
728 Views

ok, we will look into the problem.

0 Kudos
Gennady_F_Intel
Moderator
729 Views

this is the problem with the test.

From MKL documentation:  DSS_REORDER:...

If opt contains the option MKL_DSS_MY_ORDER, then you must supply a permutation vector in the array perm. In this case, the array perm is of length nRows, where nRows is the number of rows in the matrix as defined by the previous call to dss_define_structure.

If opt contains the option MKL_DSS_GET_ORDER, then the permutation vector computed during the dss_reorder call is copied to the array perm. In this case you must allocate the array perm beforehand. The permutation vector is computed in the same way as if the option MKL_DSS_AUTO_ORDER is set.....

finally, making the following changes, should help:

!          error = dss_reorder( handle, MKL_DSS_GET_ORDER, Idum)
           error = dss_reorder( handle, MKL_DSS_AUTO_ORDER, Idum)

regards, Gennady

0 Kudos
Tianyu_D_
Beginner
728 Views

Thank you so much!

Problem solved.

0 Kudos
Reply