- Vladimir Puzyrev added an answer:15Linear solver choice (fortran, have compared dgesv, pardiso with matlab) for 6000*6000 non-symmetric sparse system, suggestions?
- Ejaz Haider added an answer:2Can anyone send me subroutine fortran program for using in Aspen plus for the simulation of sulphuric acid plant?
- Olof Dahlberg added an answer:1I need to find out TRUBAL Program. Can I know possible way to find this?
- Antonio Lucero added an answer:2How can I get and use the structured programming precompiler IFTRAN?
- Somkenechukwu Mamah added an answer:4How can I give a time interval in Fortran 90?
- Liyuan Hu added an answer:4Could anyone tell me where I can find some folding potential codes?
- Basanta Kumar Parida added an answer:6Is FORTRAN program is helpful in solving Kuramoto-Sivasinsky equation?
- Anibal Blanco added an answer:46Why are physicists stuck with Fortran and not willing to move to Python with NumPy and Scipy?
- Samuel Ogunwale added an answer:4Aspen pllus the example of ultrafiltration membrane.. after running i got error "block membrane is not in mass balance. total flow rate is zero?
- Mongi Mhlongo added an answer:3How to write a fortran code for eigenvalue Lippmann-Shwinger equation?
- wu Shenghua added an answer:1How might one fix an error in Abaqus with fortran subroutine?
- wu Shenghua added an answer:2"Problem during compilation" using UMAT in ABAQUS 6.14-1.Can someone please help?
- Salman Ali Khan asked a question:OpenHeat Transfer Subroutine for RPLUG in Aspen Plus?
- Elena Galindez added an answer:1What is the current software used to allocate optimal observer sampling effort within a commercial fleet?
- Hans Rieder added an answer:32Is FORTRAN a good choice for scientific computing?
- Ejaz Haider added an answer:15User Kinetics Fortran Subroutines for Aspen Plus?
- Negar Kamali added an answer:6System error code 1073740940 when using UEL ?
- Abderrachid Hamrani added an answer:1Any expert in Marciniak Kuczynski crash-worthiness analysis FORTRAN code?
- Closed account added an answer:19How can I create a Graphical User Interface for FORTRAN code?
- Boris L. Glebov added an answer:13What are the best ways to learn FORTRAN swiftly and efficiently ?
- Christoph Sontag added an answer:2How to obtain the modified extended Huckel program from Anderson et.al ?
- Shiuh-Hwa Shyu added an answer:89Which is the best alternative to Matlab?
- Shahram A.Dizaji added an answer:35How can i link the abaqus(64-bit) and fortran ?
- Janusz Pudykiewicz added an answer:43D Fortran solver for Rayleigh benard convection in finite difference
- Michaelj Gunn added an answer:2I'm getting numerical singularity and excessive distortion error when I'm compiling UMAT with Abaqus. Can anyone please help me with this?
- Ejaz Haider added an answer:9How do I insert a reaction kinetic to Aspen Plus?
- Shiv Narayan Nishad added an answer:2Does anybody have the Fortran code for Lorenz 1996 model using RK4?
- Anji BABU Kapakayala added an answer:2How do I write Fortran code for a simple harmonic oscillator using the velocity verlet method?
- Morton E. O'Kelly added an answer:2Am writing some codes in fortran95, to read from a file and experiencing some problems, help?

Hi guys,

Have posted several days ago on intel mkl forum and have not yet got any information. Hope someone here can share some experience or perspectives. Thank you all in advance!

Have been looking for an efficient linear solver (to be used in my abaqus uamt) for middle sized (between 6000*6000 to 20000*2000) non-symmetric sparse (density between 0.6 and 0.8) system.

I have compared PARDISO, DGESV and Matlab using randomly generated 6000*6000 matrix on my Linux desktop with i7-3720QM CPU @ 2.60GHz and 8G RAM, ifort version 16.0.2. Matlab backslash took 2.x seconds, DGESV took 5.x seconds while PARDISO took 12.x seconds. This does not seem to be reasonable to me as I am expecting PARDISO to be faster than DGESV. Can someone share some experience/perspective on this or provide some solutions for which solver to choose for this type of problem (I am hoping to get somewhat close to MATLAB backslash if possible)?

The following is my PARDISO parameters and I also found that by manually setting mkl_set_num_threads to be 1 to 8 won't make any obvious change of the wall time? Is that reasonable or have I made something wrong?

ALLOCATE( iparm ( 64 ) )

iparm=0

iparm(1) = 1 ! no solver default

iparm(2) = 3 ! fill-in reordering from METIS

iparm(4) = 0 ! no iterative-direct algorithm

iparm(5) = 0 ! no user fill-in reducing permutation

iparm(6) = 0 ! =0 solution on the first n compoments of x

iparm(8) = 1 ! numbers of iterative refinement steps

iparm(10) = 13 ! perturbe the pivot elements with 1E-13

iparm(11) = 1 ! use nonsymmetric permutation and scaling MPS

iparm(13) = 1 ! maximum weighted matching algorithm is switched-off (default for symmetric). Try iparm(13) = 1 in case of inappropriate accuracy

iparm(14) = 0 ! Output: number of perturbed pivots

iparm(18) = -1 ! Output: number of nonzeros in the factor LU

iparm(19) = -1 ! Output: Mflops for LU factorization

iparm(20) = 0 ! Output: Numbers of CG Iterations

iparm(27) = 1 ! check the integer arrays ia and ja

error = 0 ! initialize error flag

msglvl = 0 ! print statistical information

mtype = 11 ! real and nonsymmetric

call mkl_set_dynamic(0)

call mkl_set_num_threads(2)

I also attached two code if someone is interested in reproducing this problem, one is a MATLAB code (MatGen.m) which generates random non-symmetric sparse matrix A, and x and calculate b=A*x. A, n and x are written into file MatInp.dat as an input for the Fortran code adapted from the example code to check the speed and accuracy of DGESV and PARDISO.

I appreciate your interest/feedback and discussions are very welcome! Thank you!

Sincerely,

Xiang