Quantcast
Channel: Intel® Software - Intel® oneAPI Math Kernel Library & Intel® Math Kernel Library
Viewing all articles
Browse latest Browse all 3005

Using cluster_sparse_solver with 64 bit integers

$
0
0

I am trying to use `cluster_sparse_solver` with 64-bit integers (longs) for extended matrix sizes. 

The first thing that I have tried is compiling my code with `-DMKL_ILP64`, which changed the `MKL_INT` type size, but had `cluster_sparse_solver` return `-2` (insufficient memory, as per docs here: https://software.intel.com/en-us/node/521694). I assume this means that under the hood, `cluster_sparse_solver` is casting `MKL_INT` into an `int` (or is linked with standard integer size), which results in a bogus number, which in turn results in the error.

I know that the call sequence for `cluster_sparse_solver` is similar to `PARDISO` (is based on it?), and I assume that `cluster_sparse_solver` used to be called `CPARDISO`. If I am correct, `PARDISO` should support extended integer sizes.

I wonder if there is an easy way to have `cluster_sparse_solver` work with larger integers.

The version of MKL in question is mkl 11.2u3, which was bundled with composer_xe 2015 3.187. My compiler flags are: `-m64 -mkl -lm -openmp -lmkl_blacs_intelmpi_ilp64 -lmkl_scalapack_ilp64 -DMKL_ILP64`

 

Thanks!


Viewing all articles
Browse latest Browse all 3005


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>