Hi everybody, I used Ubuntu 10.04 with 32 bit and I'm using Intel Fortran composer xe 2011. I don't understand a problem that I have with my code. When I compile my code with the command: ifort PRINCIPAL27112010.f90 -o PRINCIPAL27112010 and I don't problem, but when I complie using:
I need using mkl_dss.f90 for using sparse arrays. This is reason for using ifort -openmp -O3 -o PRINCIPAL27112010 -I$MKLINCLUDE -L$MKLPATH
PRINCIPAL27112010.f90 -lmkl_lapack95 -Wl,--start-group
$MKLPATH/libmkl_core.a -Wl,--end-group -liomp5 -lpthread,
Your program has many errors, including (i) mismatches between the types of actual and dummy arguments, and (ii) uninitialized variables. You can locating these errors by compiling the source code with the -warn interfaces option.
Until you correct those errors, it is pointless to try parallelizing the runs.
Ok, I have corrected. Now, I like use mkl_dss for solution mi system. Have I add something the compilation or the last line is valid for use lapack95 and in the same moment use mkl_dss solver. I know that in theory the line past run ok, for probe file, but I don't know especif the use mkl_dss in compilation, in the file, I know that I have write include mkl_dss.f90 before the program.
Victor, thanks for your response. I changed the code linking, I erase -openmp or I don't know that I changed but, but the problem of corruption I have not. As if I were to happen, usually where the corruption?
Memory corruption is very difficult to analyze in debugger. There exist some tools which can help. Firstly, please try valgrind. But the most simple way is to read your program very carefully looking at arrays underindexing and overindexing
If you are using Intel Fortran compiler please trysource code analysis and check options:
-diag-enable [,,...] enable the specified diagnostics or diagnostic groups -diag-disable [,,...] disable the specified diagnostics or diagnostic groups where may be individual diagnostic numbers or group names. where group names include: sc - perform source code analysis: n=1 for critical errors, n=2 for all errors and n=3 for all errors and warnings sc-include - perform source code analysis on include files sc-parallel - perform analysis of parallelization in source code: n=1 for critical errors, n=2 for errors, n=3 for all errors and warnings
-[no]check check run-time conditions. Default is -nocheck keywords: all (same as -C), none (same as -nocheck), [no]arg_temp_created, [no]bounds (same as -CB), [no]format, [no]output_conversion, [no]pointer (same as -CA), [no]uninit (same as -CU)