Intel® Math Kernel Library

A bug in vsldConvExec

I use 64-bit AMD Linux machine. When I run the test file (attached) I get wrong results with the current MKL 11.2 update 2:

EXAMPLE executing a convolution task
result: z[0]=1343342.8
result: z[1]=1333310.3
result: z[2]=1323248.1
result: z[3]=1313220.0
result: z[4]=1303165.3
result: z[5]=1293145.8
result: z[6]=1283102.6
result: z[7]=1273095.5
result: z[8]=1263067.9
result: z[9]=1253077.2
result: z[10]=1243069.1

But when I switch to MKL 11.1 update 2 I get the correct results:

bug of sgemm, 2015 mkl gives wrong result, but 2013 gives correct

The compile option of 2015:

/work1/soft/intel2015/composer_xe_2015.0.090/bin/intel64/ifort -i8 -openmp main.f90 -o i64_2015 -L /work1/soft/intel2015/composer_xe_2015.0.090/mkl/lib/intel64 -lmkl_intel_ilp64 -lmkl_core -lmkl_intel_thread -Wl,-rpath /work1/soft/intel2015/mkl/lib/intel64

The option of 2013

/work1/soft/intel/composer_xe_2013.0.079/bin/intel64/ifort -i8 -openmp main.f90 -o i64_2013 -L /work1/soft/intel/composer_xe_2013.0.079/mkl/lib/intel64/ -lmkl_intel_ilp64 -lmkl_core -lmkl_intel_thread -Wl,-rpath /work1/soft/intel/composer_xe_2013.0.079/mkl/lib/intel64

ZGETRS memory corruption(?) with denormal numbers

We recently encountered a rather strange issue when passing denormal numbers in the right-hand-side matrix to ZGETRS. Attached is a small C++ file that reproduces this error.

In this file, we set up a left- and right-hand-side matrix, factorize the lhs with ZGETRF and then call ZGETRS. Before and after the call to ZGETRS, we call the standard math fmod function with some arbitrary numbers. The call to fmod that happens before the ZGETRS call works as expected. The call afterwards however returns nan, regardless of what numbers are passed.

Does Intel MKL Pardiso come with selected Matrix Inversion

Hi, I am trying to compute the inverse of a sparse matrix. I saw in the pardiso website that manipulating certain parameters may result in computing the inverse of selected rows and columns of the matrix. 

Does anyone know if intel MKL pardiso has this functionality and if so any sample code for the same ? 

dggev deterministic behaviour


I am using dggev (mkl versions 11.2.1 & 11.2.2) and i notice some non deterministic behaviour concerning eigenvalues near zero and infinite eigenvalues and eigenvectors. I use the parallel mkl version with gomp (not intel omp). I compile my code using gcc 4.4.7. It seems that there are (at least) 2 sets of output that differ in the regions mentioned. I also use mkl allocators to ensure my memory is aligned. It is a rare phainomenon, but still, could you have a look? 


Back-substitution of Pardiso not executing in parallel


In an iterative algorithm I'm reusing the factorization of a symmetric indefinite matrix to solve for different right-hand sides. The back-substitution is performed in a loop with a single right-hand side being sent to pardiso at each time.

I'm using paridiso_64 and mkl 11.1u2.

Inplace permutation


I need to permute a vector according to an index array jpvt returned by ?geqp3.  In the example lapack/source/dgeqpfx.f it is done using an auxiliary array. I would like to do the transformation inplace (or at least with O(1) extra memory), but as you can see from the attached source code, I don’t seem to be able to use ?laswp correctly. Can this be used for this kind of transformation ? If yes, how ? If no, is there another way to do this ?

Thank you in advance.


Do I need Pardiso_64? iparm(18) reports negative value

I am attempting to solve a large complex, symmetric matrix using PARDISO.  The matrix has approximately 1,000,000 equations, and 91,000,000 non-zeros.  I suspect that during Pardiso's factorization stage, the number of non-zeroes in the factors exceed the 32-bit integer size limit (i.e. 2^31).  I suspect this because pardiso returns a very large negative number for iparm(18), after the factorization stage.

So ... here's the questions.

S’abonner à Intel® Math Kernel Library