<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Noticed my typo after I in Intel® oneAPI Math Kernel Library</title>
    <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DSS-symmetric-solve/m-p/1035384#M20399</link>
    <description>&lt;P&gt;Noticed my typo after I posted the example. &amp;nbsp;My note said "the input file is smaller than out number array size". &amp;nbsp;I meant to say it is smaller than our typical array sizes. &amp;nbsp;The attached input DOES demonstrate the problem&lt;/P&gt;</description>
    <pubDate>Thu, 05 Mar 2015 17:21:32 GMT</pubDate>
    <dc:creator>Dave_K_</dc:creator>
    <dc:date>2015-03-05T17:21:32Z</dc:date>
    <item>
      <title>DSS symmetric solve</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DSS-symmetric-solve/m-p/1035379#M20394</link>
      <description>&lt;P&gt;We have been using the following code compiled with Intell Fortran on Linux clusters linked with MKL 10.2.2.025 for a number of years. &amp;nbsp;We are trying to update to Intel 15 compilers and MKL 11.2 update 2. &amp;nbsp;The symmetric solve produces wrong answers using the new compiler and libraries. &amp;nbsp;The code has not changed. &amp;nbsp;When we include the symmetric terms and solve it as a symmetric_structure matrix we get the right answers.&amp;nbsp;&lt;/P&gt;

&lt;P&gt;Is any one else having problems with symmetric solves with the current compiler and library?&lt;/P&gt;

&lt;P&gt;Load the data into indx, vall, and y_rt ...&lt;/P&gt;

&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; lcount = 0&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; do row=1,n_solver&lt;BR /&gt;
	&amp;nbsp;&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;pntr(row) = lcount +1&amp;nbsp;&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;col = row&amp;nbsp;&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; lcount = lcount+1&amp;nbsp;&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; indx(lcount) = col&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; vall(lcount) = ad(row)&amp;nbsp;&lt;/P&gt;

&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;col = row + 1&amp;nbsp;&lt;BR /&gt;
	! &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if( (col &amp;lt;= n*m).and.(au1(row) /= 0.)) then&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if( (col &amp;lt;= n*m) ) then&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; lcount = lcount+1&amp;nbsp;&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; indx(lcount) = col&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; vall(lcount) = au1(row)&amp;nbsp;&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;endif&amp;nbsp;&lt;/P&gt;

&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;col = row - 1 + m&amp;nbsp;&lt;BR /&gt;
	! &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if( (col &amp;lt;= n*m).and.(au2(row) /= 0.)) then&amp;nbsp;&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if( (col &amp;lt;= n*m) ) then&amp;nbsp;&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; lcount = lcount+1&amp;nbsp;&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; indx(lcount) = col&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; vall(lcount) = au2(row)&amp;nbsp;&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;endif&amp;nbsp;&lt;/P&gt;

&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;col = row + m&amp;nbsp;&lt;BR /&gt;
	! &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if( (col &amp;lt;= n*m).and.(au3(row) /= 0.)) then&amp;nbsp;&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if( (col &amp;lt;= n*m) ) then&amp;nbsp;&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; lcount = lcount+1&amp;nbsp;&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; indx(lcount) = col&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; vall(lcount) = au3(row)&amp;nbsp;&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;endif&amp;nbsp;&lt;/P&gt;

&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;col = row + 1 + m&amp;nbsp;&lt;BR /&gt;
	! &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if( (col &amp;lt;= n*m).and.(au4(row) /= 0.)) then&amp;nbsp;&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if( (col &amp;lt;= n*m) ) then&amp;nbsp;&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; lcount = lcount+1&amp;nbsp;&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; indx(lcount) = col&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; vall(lcount) = au4(row)&amp;nbsp;&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;endif&amp;nbsp;&lt;/P&gt;

&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; end do&lt;/P&gt;

&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; ! Take care of last pntr&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; pntr(n_solver+1) = lcount + 1&amp;nbsp;&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; non_zeros=lcount&lt;/P&gt;

&lt;P&gt;error = DSS_DEFINE_STRUCTURE( handle, MKL_DSS_SYMMETRIC, pntr, n_solver, &amp;amp;&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;n_solver, indx, non_zeros )&lt;/P&gt;

&lt;P&gt;error = DSS_REORDER( handle, MKL_DSS_DEFAULTS, perm )&lt;/P&gt;

&lt;P&gt;error = DSS_FACTOR_REAL( handle, MKL_DSS_INDEFINITE, vall )&lt;/P&gt;

&lt;P&gt;nRhs=1 !number of right hand sides&lt;BR /&gt;
	error = DSS_SOLVE_REAL(handle, MKL_DSS_DEFAULTS, y_rt, nRhs, x_rt )&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;

&lt;P&gt;x_rt is correct under Intel 11/MKL 10.2.2 but wrong with intel 15/MKL 11.4 update 2&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 04 Mar 2015 19:02:42 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DSS-symmetric-solve/m-p/1035379#M20394</guid>
      <dc:creator>Dave_K_</dc:creator>
      <dc:date>2015-03-04T19:02:42Z</dc:date>
    </item>
    <item>
      <title>Update:  It also returns a</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DSS-symmetric-solve/m-p/1035380#M20395</link>
      <description>&lt;P&gt;Update: &amp;nbsp;It also returns a correct solution for Intel 13.1.117. &amp;nbsp;So the problem is occurring somewhere between the Intel 13 and Intel 15 releases.&lt;/P&gt;

&lt;P&gt;I also forgot to include the compilation and link options. &amp;nbsp;We do link in FFTW and which does have some MKL interfaces in it which may overlap the MKL library.&lt;/P&gt;

&lt;P&gt;mpiifort -fpe0 -D_UNIX -r8 -O0 -I /theory/kellerd/shu_test/Draco_i2_5_iSNB_XBT_FPEOS_Blizzard/finclude -fpp -convert big_endian -I/opt/LLE/local/fftw-3.3.1/include -I/opt/LLE/local/fftw-3.3.1/api -I/opt/LLE/local/hdf5-1.8.2/include -I/opt/LLE/local/hdf5-1.8.2/lib -c&amp;nbsp;&lt;/P&gt;

&lt;P&gt;mpiifort -o draco_hp15 hp15/*.o -fpe0 -D_UNIX &amp;nbsp;-Wl,--start-group -L/opt/LLE/local/fftw-3.3.1/lib -lfftw3 &amp;nbsp;-liomp5 -lpthread -lz -lmpiif -lmpi -lmkl_core -lmkl_sequential -lmkl_intel_thread -lmkl_intel_lp64 -L/opt/LLE/local/hdf5-1.8.2/lib -lhdf5 -L/opt/LLE/local/hdf5-1.8.2/lib -lhdf5_fortran -Wl,--end-group&lt;/P&gt;</description>
      <pubDate>Wed, 04 Mar 2015 19:25:28 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DSS-symmetric-solve/m-p/1035380#M20395</guid>
      <dc:creator>Dave_K_</dc:creator>
      <dc:date>2015-03-04T19:25:28Z</dc:date>
    </item>
    <item>
      <title>The DSS example code provided</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DSS-symmetric-solve/m-p/1035381#M20396</link>
      <description>&lt;P&gt;The DSS example code provided with MKL works correctly (checked with Matlab) with IFort 15.0.2 and MKL 11.2. I suggest that you try it on your system, and if it runs correctly, provide a reproducer based on your code that enables the problem to be seen.&lt;/P&gt;</description>
      <pubDate>Thu, 05 Mar 2015 02:01:54 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DSS-symmetric-solve/m-p/1035381#M20396</guid>
      <dc:creator>mecej4</dc:creator>
      <dc:date>2015-03-05T02:01:54Z</dc:date>
    </item>
    <item>
      <title>yes, please check the problem</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DSS-symmetric-solve/m-p/1035382#M20397</link>
      <description>&lt;P&gt;yes, please check the problem with the latest version of MKL 11.2 update 2 and then in the case if you will see the problem is still exists, give us the example of this code which we can compile and debug this problem. You can take the eval version of MKL for this evaluation.&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 05 Mar 2015 07:26:33 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DSS-symmetric-solve/m-p/1035382#M20397</guid>
      <dc:creator>Gennady_F_Intel</dc:creator>
      <dc:date>2015-03-05T07:26:33Z</dc:date>
    </item>
    <item>
      <title>I developed a small test that</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DSS-symmetric-solve/m-p/1035383#M20398</link>
      <description>&lt;P&gt;I developed a small test that demonstrates the error. &amp;nbsp;It creates the correct solution vector under Intel 13 and the incorrect solution under Intel 15 with MKL 11.2 update 2. &amp;nbsp;The input file is much smaller than our number array size but still is &amp;nbsp;623862720 bytes and attached.&lt;/P&gt;

&lt;P&gt;&amp;gt;cat run&lt;BR /&gt;
	#!/bin/sh&lt;BR /&gt;
	# can be more optimized on newer architectures&lt;BR /&gt;
	mpiifort -fpe0 -r8 -O3 -xSSE4.2 -fpp -I${MKL_DIR}/include -L -L$MKL_LIB -lmkl_intel_lp64 -lmkl_intel_thread -lmkl_core -liomp5 -lpthread MKL_DSS_radiation_DEBUGGING.f90&lt;BR /&gt;
	ldd a.out&lt;BR /&gt;
	./a.out&lt;/P&gt;

&lt;P&gt;&amp;gt;cat out.13&lt;/P&gt;

&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; linux-vdso.so.1 =&amp;gt; &amp;nbsp;(0x00007fff5accc000)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; libdl.so.2 =&amp;gt; /lib64/libdl.so.2 (0x0000003f08000000)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; libmkl_intel_lp64.so =&amp;gt; /opt/lic/intel13/composer_xe_2013.1.117/mkl/lib/intel64/libmkl_intel_lp64.so (0x00002b60b33f4000)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; libmkl_intel_thread.so =&amp;gt; /opt/lic/intel13/composer_xe_2013.1.117/mkl/lib/intel64/libmkl_intel_thread.so (0x00002b60b3b05000)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; libmkl_core.so =&amp;gt; /opt/lic/intel13/composer_xe_2013.1.117/mkl/lib/intel64/libmkl_core.so (0x00002b60b4a99000)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; libiomp5.so =&amp;gt; /opt/lic/intel13/composer_xe_2013.1.117/compiler/lib/intel64/libiomp5.so (0x00002b60b5ca8000)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; libpthread.so.0 =&amp;gt; /lib64/libpthread.so.0 (0x0000003f08400000)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; libmpi.so.4 =&amp;gt; /opt/lic/intel13/impi/4.1.0.024/intel64/lib/libmpi.so.4 (0x00002b60b5faa000)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; libmpigf.so.4 =&amp;gt; /opt/lic/intel13/impi/4.1.0.024/intel64/lib/libmpigf.so.4 (0x00002b60b65d0000)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; librt.so.1 =&amp;gt; /lib64/librt.so.1 (0x0000003f08800000)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; libm.so.6 =&amp;gt; /lib64/libm.so.6 (0x0000003f07800000)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; libc.so.6 =&amp;gt; /lib64/libc.so.6 (0x0000003f07c00000)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; libgcc_s.so.1 =&amp;gt; /lib64/libgcc_s.so.1 (0x0000003f11800000)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; /lib64/ld-linux-x86-64.so.2 (0x0000003f07400000)&lt;BR /&gt;
	&amp;nbsp;start solving the system&lt;BR /&gt;
	&amp;nbsp;TEST MKL DSS; Execution time= &amp;nbsp;0.2031250 &amp;nbsp; &amp;nbsp;&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp;50156093319.1081 &amp;nbsp; &amp;nbsp; &amp;nbsp; -89969204211.7639 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;89514538131.7439 &amp;nbsp; &amp;nbsp; &amp;lt;&amp;lt;&amp;lt;&amp;lt;&amp;lt;&amp;lt;&amp;lt;&amp;lt; correct numbers&lt;/P&gt;

&lt;P&gt;&amp;gt;cat out.15&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; linux-vdso.so.1 =&amp;gt; &amp;nbsp;(0x00007fffbf1ff000)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; libmkl_intel_lp64.so =&amp;gt; /opt/lic/intel15/composer_xe_2015.2.164/mkl/lib/intel64/libmkl_intel_lp64.so (0x00002b2d13f89000)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; libmkl_intel_thread.so =&amp;gt; /opt/lic/intel15/composer_xe_2015.2.164/mkl/lib/intel64/libmkl_intel_thread.so (0x00002b2d1489c000)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; libmkl_core.so =&amp;gt; /opt/lic/intel15/composer_xe_2015.2.164/mkl/lib/intel64/libmkl_core.so (0x00002b2d15cbd000)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; libiomp5.so =&amp;gt; /opt/lic/intel15/composer_xe_2015.2.164/compiler/lib/intel64/libiomp5.so (0x00002b2d1781c000)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; libpthread.so.0 =&amp;gt; /lib64/libpthread.so.0 (0x0000003f08400000)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; libmpifort.so.12 =&amp;gt; /opt/lic/intel15/impi/5.0.3.048/intel64/lib/libmpifort.so.12 (0x00002b2d17b6d000)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; libmpi.so.12 =&amp;gt; /opt/lic/intel15/impi/5.0.3.048/intel64/lib/libmpi.so.12 (0x00002b2d17df7000)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; libdl.so.2 =&amp;gt; /lib64/libdl.so.2 (0x0000003f08000000)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; librt.so.1 =&amp;gt; /lib64/librt.so.1 (0x0000003f08800000)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; libm.so.6 =&amp;gt; /lib64/libm.so.6 (0x0000003f07800000)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; libc.so.6 =&amp;gt; /lib64/libc.so.6 (0x0000003f07c00000)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; libgcc_s.so.1 =&amp;gt; /lib64/libgcc_s.so.1 (0x0000003f11800000)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; /lib64/ld-linux-x86-64.so.2 (0x0000003f07400000)&lt;BR /&gt;
	&amp;nbsp;start solving the system&lt;BR /&gt;
	&amp;nbsp;TEST MKL DSS; Execution time= &amp;nbsp;0.1875000 &amp;nbsp; &amp;nbsp;&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp;73375.2577664697 &amp;nbsp; &amp;nbsp; &amp;nbsp; -359933.504809541 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;280913.663845399 &amp;nbsp; &amp;nbsp;&amp;lt;&amp;lt;&amp;lt;&amp;lt;&amp;lt;&amp;lt; incorrect numbers&lt;/P&gt;

&lt;P&gt;&amp;gt;&lt;SPAN style="font-size: 1em; line-height: 1.5;"&gt;cat MKL_DSS_radiation_DEBUGGING.f90&lt;/SPAN&gt;&lt;/P&gt;

&lt;PRE class="brush:;"&gt;INCLUDE 'mkl_dss.f90' ! Include the standard DSS "header file."
PROGRAM MKL_DSS_radiation_DEBUGGING
use mkl_dss
use ifport
      implicit none
!-----------------------------------------------
!   L o c a l   V a r i a b l e s
!-----------------------------------------------
      integer, parameter :: DP = KIND(1.0D0)
      integer, parameter        :: MAX_NZ_ROW = 9
      logical, save:: initialized=.FALSE.
      integer :: m_solver,n_solver
      integer :: n, m, row, col, lcount, non_zeros, error, perm(1),nRhs
      type(MKL_DSS_HANDLE),save :: handle ! Allocate storage for the solver handle.

      integer, allocatable, dimension(:), save:: indx, pntr
      real(KIND=DP),   allocatable, dimension(:), save:: vall,x_rt,y_rt
      real(KIND=DP) :: al4,al3,al2,al1,ad,au4,au3,au2,au1
      !real(8) :: t0, t1, MPI_WTIME
      real(4) :: t0, t1, ta(2)
      character*(10) :: suffix
      integer :: id, nthreads, omp_get_thread_num, omp_get_num_threads
      integer :: ierr
      real(8) :: x0
      integer(4) :: ic0,ic1,crate
!-----------------------------------------------

!      call MPI_INIT(ierr)
   !DSS implementation
   !  val   -  values
   !  pntr  -  rowIndex
   !  indx  -  colums
   !  ncols =  n_solver
   !  nrows =  ncols

      m_solver=60   !400  !400      !120 (for test)   !=je-js+1
      n_solver=2280 !200  !2000     !498 (for test)   !=ie-is+1
      n_solver=n_solver*m_solver
 
      m = m_solver
      n = n_solver/m_solver

      if(.NOT. initialized)then
         if( .NOT. allocated(indx) ) allocate(indx(MAX_NZ_ROW*n_solver))
         if( .NOT. allocated(pntr) ) allocate(pntr(n_solver+1))
         if( .NOT. allocated(vall) ) allocate(vall(MAX_NZ_ROW*n_solver))
         if( .NOT. allocated(x_rt) ) allocate(x_rt(n_solver))
         if( .NOT. allocated(y_rt) ) allocate(y_rt(n_solver))
      endif
      indx(:)=0
      pntr(:)=0
      vall(:)=0.0d0
      x_rt(:)=0.0d0
      y_rt(:)=0.0d0

open(555,FILE="input_ad_au_y_rt")

      lcount = 0
      do row=1,n_solver
 
         pntr(row) = lcount +1 
          
read(555,*) ad,au1,au2,au3,au4,y_rt(row)
! write(588,'(10(ES23.15,1X))') ad,au1,au2,au3,au4,y_rt(row)

         col = row 
            lcount = lcount+1 
            indx(lcount) = col
            vall(lcount) = ad 

         col = row + 1 
         if( col &amp;lt;= n*m ) then 
            lcount = lcount+1 
            indx(lcount) = col
            vall(lcount) = au1
         endif 

         col = row - 1 + m 
         if( col &amp;lt;= n*m ) then 
            lcount = lcount+1 
            indx(lcount) = col
            vall(lcount) = au2
         endif 

         col = row + m 
         if( col &amp;lt;= n*m ) then 
            lcount = lcount+1 
            indx(lcount) = col
            vall(lcount) = au3 
         endif 

         col = row + 1 + m 
         if( col &amp;lt;= n*m ) then 
            lcount = lcount+1 
            indx(lcount) = col
            vall(lcount) = au4 
         endif

 


      end do
!
!     Take care of last pntr
!
      pntr(n_solver+1) = lcount + 1 
      non_zeros=lcount
      

      if (.NOT. initialized) then

         ! Initialize the solver.
         error = DSS_CREATE( handle, MKL_DSS_DEFAULTS )
         if (error /= MKL_DSS_SUCCESS) goto 999

         ! Define the non-zero structure of the matrix.
         error = DSS_DEFINE_STRUCTURE( handle, MKL_DSS_SYMMETRIC, pntr, n_solver, &amp;amp;
         &amp;amp; n_solver, indx, non_zeros )
         if (error /= MKL_DSS_SUCCESS) goto 999

         ! Reorder the matrix.
         error = DSS_REORDER( handle, MKL_DSS_DEFAULTS, perm )
         if (error /= MKL_DSS_SUCCESS) goto 999

         initialized = .TRUE.
      endif
      
print*,"start solving the system"
call SYSTEM_CLOCK(ic0,crate)
t0 = dble(ic0)/dble(crate)
      !
      ! Factor the matrix.
      !
      error = DSS_FACTOR_REAL( handle, MKL_DSS_INDEFINITE, vall )
      if (error /= MKL_DSS_SUCCESS) goto 999

      !
      ! Solve for a vector x_rt, given an input vector y_rt as b
      !
      nRhs=1 !number of right hand sides
      error = DSS_SOLVE_REAL(handle, MKL_DSS_DEFAULTS, y_rt, nRhs, x_rt )
      if (error /= MKL_DSS_SUCCESS) goto 999

call SYSTEM_CLOCK(ic1,crate)
t1 = dble(ic1)/dble(crate)
print*,"TEST MKL DSS; Execution time=",t1-t0
print*,sum(x_rt),minval(x_rt),maxval(x_rt)

open(566,FILE="x_rt_based_on_input_"//TRIM(suffix))
do row=1,n_solver
write(566,*) x_rt(row)
enddo
stop

      999 WRITE(*,*) "Solver returned error code ", error
END PROGRAM MKL_DSS_radiation_DEBUGGING&lt;/PRE&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 05 Mar 2015 17:16:19 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DSS-symmetric-solve/m-p/1035383#M20398</guid>
      <dc:creator>Dave_K_</dc:creator>
      <dc:date>2015-03-05T17:16:19Z</dc:date>
    </item>
    <item>
      <title>Noticed my typo after I</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DSS-symmetric-solve/m-p/1035384#M20399</link>
      <description>&lt;P&gt;Noticed my typo after I posted the example. &amp;nbsp;My note said "the input file is smaller than out number array size". &amp;nbsp;I meant to say it is smaller than our typical array sizes. &amp;nbsp;The attached input DOES demonstrate the problem&lt;/P&gt;</description>
      <pubDate>Thu, 05 Mar 2015 17:21:32 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DSS-symmetric-solve/m-p/1035384#M20399</guid>
      <dc:creator>Dave_K_</dc:creator>
      <dc:date>2015-03-05T17:21:32Z</dc:date>
    </item>
    <item>
      <title>DSS lets you compute some</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DSS-symmetric-solve/m-p/1035385#M20400</link>
      <description>&lt;P&gt;DSS lets you compute some statistics, among them the determinant. For your "small" matrix, I obtained this:&lt;/P&gt;

&lt;PRE class="brush:bash;"&gt;Determinant =  2.407 X 10**( -1057550)&lt;/PRE&gt;

&lt;P&gt;Applying Pardiso to the same matrix, I obtained:&lt;/P&gt;

&lt;PRE class="brush:bash;"&gt;non-zeros in A:           683819
number of nonzeros in L  5914460
number of nonzeros in U        1&lt;/PRE&gt;

&lt;P&gt;Something is seriously wrong if there is only one nonzero element in the U factor (I need to check if I have made an error in obtaining these results). In these circumstances, your summary digest of the solution (min, max and sum of elements of X) is not useful, probably not reproducible across platforms, and may even change with slightly different compiler options. There may be similar problems with your "large" matrices. Before accepting a solution, you should probably obtain the residuals after solving the equations. For the "small" matrix, I obtained residuals as large as 0.001.&lt;/P&gt;

&lt;P&gt;Note that the data file containing the "small" matrix is large (&amp;gt; 600 MB) in formatted text form. By placing the data into an unformatted file and cutting out the portions that are not used in the calculation, you could reduce it to about 10 MB.&lt;/P&gt;</description>
      <pubDate>Fri, 06 Mar 2015 12:03:00 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DSS-symmetric-solve/m-p/1035385#M20400</guid>
      <dc:creator>mecej4</dc:creator>
      <dc:date>2015-03-06T12:03:00Z</dc:date>
    </item>
    <item>
      <title>Thanks for looking at this</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DSS-symmetric-solve/m-p/1035386#M20401</link>
      <description>&lt;P&gt;Thanks for looking at this for us.&lt;/P&gt;

&lt;P&gt;I admit to really not knowing much about solvers but the issue is that the solution to an input set returns a solution that my physcis folks say is 'right' on Intel 13 is 'wrong' on Intel 15. &amp;nbsp;It would seem that if the sum, min and max of the solution differ significantly from an Intel 13 run to an Intel 15 run something significant has changed and that our 'right' answers have significantly changed with Intel 15. &amp;nbsp;It is not clear to me from your note if you think there is something 'seriously wrong' with the input or coding or from the result?&lt;/P&gt;

&lt;P&gt;I modified the source to include additional statistics:&lt;/P&gt;

&lt;P&gt;print*,sum(x_rt),minval(x_rt),maxval(x_rt)&lt;/P&gt;

&lt;P&gt;call MKL_CVT_TO_NULL_TERMINATED_STR(statreq,11,"determinant")&lt;BR /&gt;
	error = DSS_STATISTICS(handle,MKL_DSS_DEFAULTS,statreq,statistic)&lt;BR /&gt;
	print*,"Determinant=",statistic(2)," X 10 ",statistic(1)&lt;/P&gt;

&lt;P&gt;call MKL_CVT_TO_NULL_TERMINATED_STR(statreq,7,"inertia")&lt;BR /&gt;
	error = DSS_STATISTICS(handle,MKL_DSS_DEFAULTS,statreq,statistic)&lt;BR /&gt;
	print*,"pos =",statistic(1)&lt;BR /&gt;
	print*,"neg =",statistic(2)&lt;BR /&gt;
	print*,"zer =",statistic(3)&lt;/P&gt;

&lt;P&gt;call MKL_CVT_TO_NULL_TERMINATED_STR(statreq,8,"solvemem")&lt;BR /&gt;
	error = DSS_STATISTICS(handle,MKL_DSS_DEFAULTS,statreq,statistic)&lt;BR /&gt;
	print*,"Solvemem=",statistic(1)&lt;/P&gt;

&lt;P&gt;Intel 13:&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;50204591221.3627 &amp;nbsp; &amp;nbsp; &amp;nbsp; -89969204206.9475 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;89514538126.9583 &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;BR /&gt;
	&amp;nbsp;Determinant= &amp;nbsp; 1.75565552825196 &amp;nbsp; &amp;nbsp; &amp;nbsp; X 10 &amp;nbsp; -1336812.00000000 &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;BR /&gt;
	&amp;nbsp;pos = &amp;nbsp; 67894.0000000000 &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;BR /&gt;
	&amp;nbsp;neg = &amp;nbsp; 68906.0000000000 &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;BR /&gt;
	&amp;nbsp;zer = &amp;nbsp;0.000000000000000E+000&lt;BR /&gt;
	&amp;nbsp;Solvemem= &amp;nbsp; 69469.0000000000 &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;

&lt;P&gt;Intel 15&lt;/P&gt;

&lt;P&gt;&amp;nbsp; &amp;nbsp;73375.2577673518 &amp;nbsp; &amp;nbsp; &amp;nbsp; -359933.504809540 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;280913.663845398 &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;BR /&gt;
	&amp;nbsp;Determinant= &amp;nbsp;-2.32535455034809 &amp;nbsp; &amp;nbsp; &amp;nbsp; X 10 &amp;nbsp; -1057541.00000000 &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;BR /&gt;
	&amp;nbsp;pos = &amp;nbsp; 65547.0000000000 &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;BR /&gt;
	&amp;nbsp;neg = &amp;nbsp; 71253.0000000000 &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;BR /&gt;
	&amp;nbsp;zer = &amp;nbsp;0.000000000000000E+000&lt;BR /&gt;
	&amp;nbsp;Solvemem= &amp;nbsp; 69867.0000000000 &amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 06 Mar 2015 15:19:01 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DSS-symmetric-solve/m-p/1035386#M20401</guid>
      <dc:creator>Dave_K_</dc:creator>
      <dc:date>2015-03-06T15:19:01Z</dc:date>
    </item>
    <item>
      <title>You can further the testing</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DSS-symmetric-solve/m-p/1035387#M20402</link>
      <description>&lt;P&gt;You can further the testing if you can put together a smaller example, with as few unknowns as possible, but with the same structure as the matrices that you have shown, and approved by the "physics folks" as correct with IFort 13/MKL 10.2.2. &amp;nbsp;The problem with large size matrix problems is that you are restricted to fewer checks on correctness. On the other hand, when you whittle a problem down you may be left with an absurd remnant.&lt;/P&gt;

&lt;P&gt;I shall be happy to share my verification code with you once I have done some checks.&lt;/P&gt;

&lt;P&gt;Note this from #8:&lt;/P&gt;

&lt;P&gt;&lt;/P&gt;&lt;BLOCKQUOTE&gt;Determinant= &amp;nbsp; 1.76 &amp;nbsp;X 10 &amp;nbsp; &lt;SUP&gt;-1336812&lt;/SUP&gt; &lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;

&lt;P&gt;It is possible for a matrix to be well-conditioned and yet have a determinant nearly equal to 0. However, if the problem comes from a physics model and the variables are reasonably scaled this should not happen. Ask the physics folks if they are comfortable with this attoscopic value for the determinant. If this value is wrong because of a coding error, we can track that down and fix it. However, if the problem as formulated is nearly impossible to obtain an accurate solution for, the physics people may have a much tougher problem.&lt;/P&gt;

&lt;P&gt;A more basic question: is it expected/reasonable that the matrix is singular? If not, there can be no zeroes on the principal diagonals of the L and U factors. Therefore, the minimum number of non-zeroes in L and U is equal to the number of equations.&lt;/P&gt;</description>
      <pubDate>Fri, 06 Mar 2015 16:34:00 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DSS-symmetric-solve/m-p/1035387#M20402</guid>
      <dc:creator>mecej4</dc:creator>
      <dc:date>2015-03-06T16:34:00Z</dc:date>
    </item>
    <item>
      <title>The physics guys are not</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DSS-symmetric-solve/m-p/1035388#M20403</link>
      <description>&lt;P&gt;The physics guys are not around today so I tried to do what I can to further help find this problem. &amp;nbsp;I cut the grid size down to a 14x30 grid so&lt;/P&gt;

&lt;P&gt;m =8 n=112. &amp;nbsp;It still demostrates the problem. &amp;nbsp;The solution grid when plotted follows. &amp;nbsp;Note t&lt;SPAN style="font-size: 1em; line-height: 1.5;"&gt;hey show that the garray1 field on the left axis is "wrong" for 15, "right" for 13. &amp;nbsp;&lt;/SPAN&gt;I also attached attached the input file (still in text format) for this smaller grid size.&lt;SPAN style="font-size: 1em; line-height: 1.5;"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;A href="https://community.intel.com/legacyfs/online/drupal_files/451535"&gt;451535&lt;/A&gt;&lt;SPAN style="font-size: 1em; line-height: 1.5;"&gt;.&lt;/SPAN&gt;&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;

&lt;P&gt;&amp;nbsp;cat out.15_30&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; linux-vdso.so.1 =&amp;gt; &amp;nbsp;(0x00007fff86871000)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; libmkl_intel_lp64.so =&amp;gt; /opt/lic/intel15/composer_xe_2015.2.164/mkl/lib/intel64/libmkl_intel_lp64.so (0x00002b41f3e18000)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; libmkl_intel_thread.so =&amp;gt; /opt/lic/intel15/composer_xe_2015.2.164/mkl/lib/intel64/libmkl_intel_thread.so (0x00002b41f472b000)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; libmkl_core.so =&amp;gt; /opt/lic/intel15/composer_xe_2015.2.164/mkl/lib/intel64/libmkl_core.so (0x00002b41f5b4c000)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; libiomp5.so =&amp;gt; /opt/lic/intel15/composer_xe_2015.2.164/compiler/lib/intel64/libiomp5.so (0x00002b41f76ab000)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; libpthread.so.0 =&amp;gt; /lib64/libpthread.so.0 (0x0000003f08400000)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; libmpifort.so.12 =&amp;gt; /opt/lic/intel15/impi/5.0.3.048/intel64/lib/libmpifort.so.12 (0x00002b41f79fc000)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; libmpi.so.12 =&amp;gt; /opt/lic/intel15/impi/5.0.3.048/intel64/lib/libmpi.so.12 (0x00002b41f7c86000)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; libdl.so.2 =&amp;gt; /lib64/libdl.so.2 (0x0000003f08000000)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; librt.so.1 =&amp;gt; /lib64/librt.so.1 (0x0000003f08800000)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; libm.so.6 =&amp;gt; /lib64/libm.so.6 (0x0000003f07800000)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; libc.so.6 =&amp;gt; /lib64/libc.so.6 (0x0000003f07c00000)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; libgcc_s.so.1 =&amp;gt; /lib64/libgcc_s.so.1 (0x0000003f11800000)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; /lib64/ld-linux-x86-64.so.2 (0x0000003f07400000)&lt;BR /&gt;
	&amp;nbsp;start solving the system&lt;BR /&gt;
	&amp;nbsp;TEST MKL DSS; Execution time= &amp;nbsp;7.8125000E-02&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp;295618.772828955 &amp;nbsp; &amp;nbsp; &amp;nbsp; -312701.448947056 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;220058.681258707 &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;BR /&gt;
	&amp;nbsp;Determinant= &amp;nbsp;-1.85272122511410 &amp;nbsp; &amp;nbsp; &amp;nbsp; X 10 &amp;nbsp; -98200.0000000000 &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;BR /&gt;
	&amp;nbsp;pos = &amp;nbsp; 6727.00000000000 &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;BR /&gt;
	&amp;nbsp;neg = &amp;nbsp; 5873.00000000000 &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;BR /&gt;
	&amp;nbsp;zer = &amp;nbsp;0.000000000000000E+000&lt;BR /&gt;
	&amp;nbsp;Solvemem= &amp;nbsp; 5647.00000000000 &amp;nbsp;&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&amp;nbsp;cat out.13_30&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; linux-vdso.so.1 =&amp;gt; &amp;nbsp;(0x00007fff7e4b4000)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; libdl.so.2 =&amp;gt; /lib64/libdl.so.2 (0x0000003f08000000)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; libmkl_intel_lp64.so =&amp;gt; /opt/lic/intel13/composer_xe_2013.1.117/mkl/lib/intel64/libmkl_intel_lp64.so (0x00002ac989820000)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; libmkl_intel_thread.so =&amp;gt; /opt/lic/intel13/composer_xe_2013.1.117/mkl/lib/intel64/libmkl_intel_thread.so (0x00002ac989f31000)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; libmkl_core.so =&amp;gt; /opt/lic/intel13/composer_xe_2013.1.117/mkl/lib/intel64/libmkl_core.so (0x00002ac98aec5000)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; libiomp5.so =&amp;gt; /opt/lic/intel13/composer_xe_2013.1.117/compiler/lib/intel64/libiomp5.so (0x00002ac98c0d4000)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; libpthread.so.0 =&amp;gt; /lib64/libpthread.so.0 (0x0000003f08400000)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; libmpi.so.4 =&amp;gt; /opt/lic/intel13/impi/4.1.0.024/intel64/lib/libmpi.so.4 (0x00002ac98c3d6000)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; libmpigf.so.4 =&amp;gt; /opt/lic/intel13/impi/4.1.0.024/intel64/lib/libmpigf.so.4 (0x00002ac98c9fc000)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; librt.so.1 =&amp;gt; /lib64/librt.so.1 (0x0000003f08800000)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; libm.so.6 =&amp;gt; /lib64/libm.so.6 (0x0000003f07800000)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; libc.so.6 =&amp;gt; /lib64/libc.so.6 (0x0000003f07c00000)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; libgcc_s.so.1 =&amp;gt; /lib64/libgcc_s.so.1 (0x0000003f11800000)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; /lib64/ld-linux-x86-64.so.2 (0x0000003f07400000)&lt;BR /&gt;
	&amp;nbsp;start solving the system&lt;BR /&gt;
	&amp;nbsp;TEST MKL DSS; Execution time= &amp;nbsp;1.5625000E-02&lt;BR /&gt;
	&amp;nbsp; -19306486435.1262 &amp;nbsp; &amp;nbsp; &amp;nbsp; -5772347418.44442 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;3505444963.56421 &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;BR /&gt;
	&amp;nbsp;Determinant= &amp;nbsp;-3.76569356065273 &amp;nbsp; &amp;nbsp; &amp;nbsp; X 10 &amp;nbsp; -117523.000000000 &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;BR /&gt;
	&amp;nbsp;pos = &amp;nbsp; 6477.00000000000 &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;BR /&gt;
	&amp;nbsp;neg = &amp;nbsp; 6123.00000000000 &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;BR /&gt;
	&amp;nbsp;zer = &amp;nbsp;0.000000000000000E+000&lt;BR /&gt;
	&amp;nbsp;Solvemem= &amp;nbsp; 5603.00000000000 &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;

&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="i15.png"&gt;&lt;img src="https://community.intel.com/t5/image/serverpage/image-id/7374i66F729B36D0F836A/image-size/large?v=v2&amp;amp;px=999&amp;amp;whitelist-exif-data=Orientation%2CResolution%2COriginalDefaultFinalSize%2CCopyright" role="button" title="i15.png" alt="i15.png" /&gt;&lt;/span&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="i13.png"&gt;&lt;img src="https://community.intel.com/t5/image/serverpage/image-id/7375i475E21F7D44784F5/image-size/large?v=v2&amp;amp;px=999&amp;amp;whitelist-exif-data=Orientation%2CResolution%2COriginalDefaultFinalSize%2CCopyright" role="button" title="i13.png" alt="i13.png" /&gt;&lt;/span&gt;&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 06 Mar 2015 20:51:35 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DSS-symmetric-solve/m-p/1035388#M20403</guid>
      <dc:creator>Dave_K_</dc:creator>
      <dc:date>2015-03-06T20:51:35Z</dc:date>
    </item>
    <item>
      <title>Do you have a writeup with</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DSS-symmetric-solve/m-p/1035389#M20404</link>
      <description>&lt;P&gt;Do you have a writeup with the P.D.E.,boundary and initial conditions specified?&lt;/P&gt;</description>
      <pubDate>Fri, 06 Mar 2015 23:13:29 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DSS-symmetric-solve/m-p/1035389#M20404</guid>
      <dc:creator>mecej4</dc:creator>
      <dc:date>2015-03-06T23:13:29Z</dc:date>
    </item>
    <item>
      <title>I just recognized today that</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DSS-symmetric-solve/m-p/1035390#M20405</link>
      <description>&lt;P&gt;I just recognized today that I had sent in incorrect data input file. &amp;nbsp;I apologize for any wasted effort. The net is still the same however. &amp;nbsp;Intel 15 returns wrong answers. &amp;nbsp;I added a double check after the solve. &amp;nbsp;The solution returned when used to recompute the y_rt supplied has 9 errors:&lt;/P&gt;

&lt;P&gt;Intel 13 output:&lt;/P&gt;

&lt;P&gt;&amp;nbsp;start solving the system&lt;BR /&gt;
	&amp;nbsp;TEST MKL DSS; Execution time= &amp;nbsp;0.1109009 &amp;nbsp; &amp;nbsp;&lt;BR /&gt;
	&amp;nbsp; 0.257042531294272 &amp;nbsp; &amp;nbsp; &amp;nbsp; 9.162025370382090E-014 &amp;nbsp;4.008343651777284E-003&lt;BR /&gt;
	&amp;nbsp;Determinant= &amp;nbsp; 2.12161563270491 &amp;nbsp; &amp;nbsp; &amp;nbsp; X 10 &amp;nbsp; -2990.00000000000 &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;BR /&gt;
	&amp;nbsp;pos = &amp;nbsp; 420.000000000000 &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;BR /&gt;
	&amp;nbsp;neg = &amp;nbsp;0.000000000000000E+000&lt;BR /&gt;
	&amp;nbsp;zer = &amp;nbsp;0.000000000000000E+000&lt;BR /&gt;
	&amp;nbsp;Solvemem= &amp;nbsp; 159.000000000000 &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/P&gt;

&lt;P&gt;Intel 15 output:&lt;/P&gt;

&lt;P&gt;&amp;nbsp;start solving the system&lt;BR /&gt;
	&amp;nbsp;TEST MKL DSS; Execution time= &amp;nbsp;7.7514648E-02&lt;BR /&gt;
	&amp;nbsp; 0.251832820371750 &amp;nbsp; &amp;nbsp; &amp;nbsp; 9.162025183722943E-014 &amp;nbsp;4.008343651777284E-003&lt;BR /&gt;
	&amp;nbsp;Determinant= &amp;nbsp; 1.62949566754441 &amp;nbsp; &amp;nbsp; &amp;nbsp; X 10 &amp;nbsp; -2987.00000000000 &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;BR /&gt;
	&amp;nbsp;pos = &amp;nbsp; 420.000000000000 &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;BR /&gt;
	&amp;nbsp;neg = &amp;nbsp;0.000000000000000E+000&lt;BR /&gt;
	&amp;nbsp;zer = &amp;nbsp;0.000000000000000E+000&lt;BR /&gt;
	&amp;nbsp;Solvemem= &amp;nbsp; 262.000000000000 &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;BR /&gt;
	&amp;nbsp;not equal &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 121 &amp;nbsp;2.405238875359285E-019 &amp;nbsp;2.065808031766965E-019 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;&amp;lt;&amp;lt;&amp;lt;&amp;lt;&amp;lt; double check should at least be close&lt;BR /&gt;
	&amp;nbsp;not equal &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 151 &amp;nbsp;2.405238875359036E-019 &amp;nbsp;2.068078684773001E-019&lt;BR /&gt;
	&amp;nbsp;not equal &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 181 &amp;nbsp;2.405238875359422E-019 &amp;nbsp;2.038278901649021E-019&lt;BR /&gt;
	&amp;nbsp;not equal &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 211 &amp;nbsp;2.405238875359251E-019 &amp;nbsp;1.844924519720349E-019&lt;BR /&gt;
	&amp;nbsp;not equal &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 241 &amp;nbsp;2.405238875359413E-019 -6.431842696536678E-020&lt;BR /&gt;
	&amp;nbsp;not equal &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 331 &amp;nbsp;3.299385792934408E-020 -7.117734061904493E-014&lt;BR /&gt;
	&amp;nbsp;not equal &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 332 &amp;nbsp;9.889113991683395E-020 -6.104485185954297E-014&lt;BR /&gt;
	&amp;nbsp;not equal &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 361 &amp;nbsp;3.303422135645092E-020 -1.172086994261061E-013&lt;BR /&gt;
	&amp;nbsp;not equal &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 391 &amp;nbsp;8.509130524910173E-013 &amp;nbsp;6.084941155961990E-013&lt;/P&gt;

&lt;P&gt;A slightly modified source file and a new input file are provided. &amp;nbsp;They clearly demonstrate a problem and should be easily reproduced&lt;/P&gt;

&lt;PRE class="brush:fortran;"&gt;INCLUDE 'mkl_dss.f90' ! Include the standard DSS "header file."
PROGRAM MKL_DSS_radiation_DEBUGGING
use mkl_dss
use ifport
      implicit none
!-----------------------------------------------
!   L o c a l   V a r i a b l e s
!-----------------------------------------------
      integer, parameter :: DP = 8 !KIND(1.0D0)
      integer, parameter        :: MAX_NZ_ROW = 9
      logical, save:: initialized=.FALSE.
      integer :: m_solver,n_solver
      integer :: n, m, row, col, lcount, non_zeros, error, nRhs
      type(MKL_DSS_HANDLE),save :: handle ! Allocate storage for the solver handle.

      integer, allocatable, dimension(:), save:: indx, pntr, perm
      real(KIND=DP),   allocatable, dimension(:), save:: vall,x_rt,y_rt,y_rt_check
      real(KIND=DP) :: al4,al3,al2,al1,ad,au4,au3,au2,au1
      !real(8) :: t0, t1, MPI_WTIME
      real(4) :: t0, t1, ta(2)
      character*(10) :: suffix
      integer :: id, nthreads, omp_get_thread_num, omp_get_num_threads
      integer :: ierr,statreq(10)
      real(8) :: x0, statistic(10)
      integer(4) :: ic0,ic1,crate
  
!-----------------------------------------------

!      call MPI_INIT(ierr)
   !DSS implementation
   !  val   -  values
   !  pntr  -  rowIndex
   !  indx  -  colums
   !  ncols =  n_solver
   !  nrows =  ncols

      m= 30  !60   !400  !400      !120 (for test)   !=je-js+1
      n= 14  !2280 !200  !2000     !498 (for test)   !=ie-is+1

      n_solver = n * m

      if(.NOT. initialized)then
         if( .NOT. allocated(indx) ) allocate(indx(MAX_NZ_ROW*n_solver))
         if( .NOT. allocated(pntr) ) allocate(pntr(n_solver+1))
         if( .NOT. allocated(vall) ) allocate(vall(MAX_NZ_ROW*n_solver))
         if( .NOT. allocated(x_rt) ) allocate(x_rt(n_solver))
         if( .NOT. allocated(y_rt) ) allocate(y_rt(n_solver))
         if( .NOT. allocated(y_rt_check) ) allocate(y_rt_check(n_solver))
         if( .NOT. allocated(perm)) allocate(perm(n_solver))
      endif
      indx(:)=0
      pntr(:)=0
      vall(:)=0.0d0
      x_rt(:)=0.0d0
      y_rt(:)=0.0d0

open(555,FILE="input_30x14")

      lcount = 0
      do row=1,n_solver
 
         pntr(row) = lcount +1 
          
read(555,*) ad,au1,au2,au3,au4,y_rt(row)
!+ashv write(588,'(10(ES23.15,1X))') ad,au1,au2,au3,au4,y_rt(row)

         col = row 
            lcount = lcount+1 
            indx(lcount) = col
            vall(lcount) = ad 

         col = row + 1 
         if( col &amp;lt;= n*m ) then 
            lcount = lcount+1 
            indx(lcount) = col
            vall(lcount) = au1
         endif 

         col = row - 1 + m 
         if( col &amp;lt;= n*m ) then 
            lcount = lcount+1 
            indx(lcount) = col
            vall(lcount) = au2
         endif 

         col = row + m 
         if( col &amp;lt;= n*m ) then 
            lcount = lcount+1 
            indx(lcount) = col
            vall(lcount) = au3 
         endif 

         col = row + 1 + m 
         if( col &amp;lt;= n*m ) then 
            lcount = lcount+1 
            indx(lcount) = col
            vall(lcount) = au4 
         endif 

      end do
!
!     Take care of last pntr
!
      pntr(n_solver+1) = lcount + 1 
      non_zeros=lcount
      

      if (.NOT. initialized) then

         ! Initialize the solver.
         error = DSS_CREATE( handle, MKL_DSS_DEFAULTS )
         if (error /= MKL_DSS_SUCCESS) goto 999

         ! Define the non-zero structure of the matrix.
         error = DSS_DEFINE_STRUCTURE( handle, MKL_DSS_SYMMETRIC, pntr, n_solver, &amp;amp;
         &amp;amp; n_solver, indx, non_zeros )
         if (error /= MKL_DSS_SUCCESS) goto 999

         ! Reorder the matrix.
       !  error = DSS_REORDER( handle, MKL_DSS_DEFAULTS, perm )
         error = DSS_REORDER( handle, MKL_DSS_AUTO_ORDER, perm )
         if (error /= MKL_DSS_SUCCESS) goto 999

         initialized = .TRUE.
      endif
      
print*,"start solving the system"
call SYSTEM_CLOCK(ic0,crate)
t0 = dble(ic0)/dble(crate)
      !
      ! Factor the matrix.
      !
      error = DSS_FACTOR_REAL( handle, MKL_DSS_INDEFINITE, vall )
      if (error /= MKL_DSS_SUCCESS) goto 999

      !
      ! Solve for a vector x_rt, given an input vector y_rt as b
      !
      nRhs=1 !number of right hand sides
      error = DSS_SOLVE_REAL(handle, MKL_DSS_DEFAULTS, y_rt, nRhs, x_rt )
      if (error /= MKL_DSS_SUCCESS) goto 999

call SYSTEM_CLOCK(ic1,crate)
t1 = dble(ic1)/dble(crate)
print*,"TEST MKL DSS; Execution time=",t1-t0
print*,sum(x_rt),minval(x_rt),maxval(x_rt)

call MKL_CVT_TO_NULL_TERMINATED_STR(statreq,11,"determinant")
error = DSS_STATISTICS(handle,MKL_DSS_DEFAULTS,statreq,statistic)
print*,"Determinant=",statistic(2)," X 10 ",statistic(1)

call MKL_CVT_TO_NULL_TERMINATED_STR(statreq,7,"inertia")
error = DSS_STATISTICS(handle,MKL_DSS_DEFAULTS,statreq,statistic)
print*,"pos =",statistic(1)
print*,"neg =",statistic(2)
print*,"zer =",statistic(3)

call MKL_CVT_TO_NULL_TERMINATED_STR(statreq,8,"solvemem")
error = DSS_STATISTICS(handle,MKL_DSS_DEFAULTS,statreq,statistic)
print*,"Solvemem=",statistic(1)

      !then calculate the corresponding right-hand-side y_rt by multipying x_rt by the matrix storred in vall() array
      y_rt_check(:)=0.0d0
      do row=1,n_solver
          do lcount=pntr(row),pntr(row+1)-1
            col = indx(lcount)
            y_rt_check(row) = y_rt_check(row) + vall(lcount)*x_rt(col)
            if(col/=row) y_rt_check(col) = y_rt_check(col) + vall(lcount)*x_rt(row)
         enddo
      enddo




open(566,FILE="x_rt_based_on_input_"//TRIM(suffix))
do row=1,n_solver
write(566,*) x_rt(row)
if (abs(y_rt(row)-y_rt_check(row)) &amp;gt; abs(1.0e-6*y_rt(row))) print*,'not equal',row,y_rt(row), y_rt_check(row)
enddo
stop

      999 WRITE(*,*) "Solver returned error code ", error
END PROGRAM MKL_DSS_radiation_DEBUGGING
&lt;/PRE&gt;

&lt;P&gt;.&lt;/P&gt;

&lt;P&gt;&lt;A href="https://community.intel.com/legacyfs/online/drupal_files/451632"&gt;451632&lt;/A&gt;&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 09 Mar 2015 19:31:06 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DSS-symmetric-solve/m-p/1035390#M20405</guid>
      <dc:creator>Dave_K_</dc:creator>
      <dc:date>2015-03-09T19:31:06Z</dc:date>
    </item>
    <item>
      <title>I do not have the specific</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DSS-symmetric-solve/m-p/1035391#M20406</link>
      <description>&lt;P&gt;I do not have the specific older version, but I think that you will reproduce the old results with the new compiler if, on line 133 of #5, you replace&amp;nbsp;&amp;nbsp;MKL_DSS_INDEFINITE by&amp;nbsp;MKL_DSS_DEFAULTS which, according to the current documentation, sets MKL_DLL_POSITIVE_DEFINITE.&lt;/P&gt;

&lt;P&gt;Of course, you have to check whether this is a correct setting. You can also check your documentation for the old and new versions to see if the default value for the call to DSS_FACTOR changed with the version.&lt;/P&gt;

&lt;P&gt;&lt;SPAN style="font-size: 14.6339998245239px; line-height: 17.5608005523682px;"&gt;This may also indicate that, as you suspected, there is an error in the newer version of MKL. This is likely since the DSS calls are mapped into equivalent PARDISO calls, and an error in doing so may have been introduced recently. You may wish to consider rewriting the solver part of your code to make direct PARDISO calls instead of going through the DSS interface.&lt;/SPAN&gt;&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 09 Mar 2015 22:58:00 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DSS-symmetric-solve/m-p/1035391#M20406</guid>
      <dc:creator>mecej4</dc:creator>
      <dc:date>2015-03-09T22:58:00Z</dc:date>
    </item>
    <item>
      <title>Looks like an error has been</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DSS-symmetric-solve/m-p/1035392#M20407</link>
      <description>&lt;P&gt;Looks like an error has been introduced.&lt;/P&gt;

&lt;P&gt;Replacing&amp;nbsp;MKL_DSS_INDEFINITE by&amp;nbsp;MKL_DSS_DEFAULTS or&amp;nbsp;MKL_DLL_POSITIVE_DEFINITE with Intel 15 results in:&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;

&lt;P&gt;start solving the system&lt;BR /&gt;
	&amp;nbsp;TEST MKL DSS; Execution time= &amp;nbsp;6.2500000E-02&lt;BR /&gt;
	&amp;nbsp; 0.257042531294272 &amp;nbsp; &amp;nbsp; &amp;nbsp; 9.162025370385757E-014 &amp;nbsp;4.008343651777285E-003&lt;BR /&gt;
	&amp;nbsp;Determinant= &amp;nbsp; 2.12161563270509 &amp;nbsp; &amp;nbsp; &amp;nbsp; X 10 &amp;nbsp; -2990.00000000000 &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;BR /&gt;
	&lt;STRONG&gt;MKL-DSS-UTIL-Fatal, Bad facility code&lt;/STRONG&gt;&lt;BR /&gt;
	&amp;nbsp;pos = &amp;nbsp;-2990.00000000000 &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;BR /&gt;
	&amp;nbsp;neg = &amp;nbsp; 2.12161563270509 &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;BR /&gt;
	&amp;nbsp;zer = &amp;nbsp;0.000000000000000E+000&lt;BR /&gt;
	&amp;nbsp;Solvemem= &amp;nbsp; 262.000000000000 &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 10 Mar 2015 12:30:10 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DSS-symmetric-solve/m-p/1035392#M20407</guid>
      <dc:creator>Dave_K_</dc:creator>
      <dc:date>2015-03-10T12:30:10Z</dc:date>
    </item>
    <item>
      <title>Would you please share the</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DSS-symmetric-solve/m-p/1035393#M20408</link>
      <description>&lt;P&gt;Would you please share the equivalent&amp;nbsp;&lt;SPAN style="font-size: 12px; line-height: 18px;"&gt;PARDISO&amp;nbsp;&lt;/SPAN&gt;version of this code that works?&lt;/P&gt;</description>
      <pubDate>Tue, 10 Mar 2015 12:59:17 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DSS-symmetric-solve/m-p/1035393#M20408</guid>
      <dc:creator>Dave_K_</dc:creator>
      <dc:date>2015-03-10T12:59:17Z</dc:date>
    </item>
    <item>
      <title>The zip file is attached. It</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DSS-symmetric-solve/m-p/1035394#M20409</link>
      <description>&lt;P&gt;The zip file is attached. It contains the input file (from you, but included for consistency), a utility to read the input file and write an unformatted Fortran file in a format that I use when testing problems with MKL/Pardiso, and the program to read that unformated file and solve the problem with Pardiso.&amp;nbsp;&lt;/P&gt;

&lt;P&gt;The utility is self-contained, and does not need to be linked with MKL. The solver program should be linked with MKL, and if you have not previously compiled the file mkl_pardiso.f90 that is provided with MKL, you should do so first to produce the module file that is needed by the solver program.&lt;/P&gt;

&lt;P&gt;I have tested only on Windows 8.1 X64, but there should be no changes needed for Linux. Please let me know if you run into problems. The last line of the output should be&amp;nbsp;&lt;/P&gt;

&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp; 0.257042531294272 &amp;nbsp; &amp;nbsp; &amp;nbsp; 9.162025370381688E-014 &amp;nbsp;4.008343651777284E-003&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 10 Mar 2015 14:03:54 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DSS-symmetric-solve/m-p/1035394#M20409</guid>
      <dc:creator>mecej4</dc:creator>
      <dc:date>2015-03-10T14:03:54Z</dc:date>
    </item>
  </channel>
</rss>

