[CMake] Windows Intel Fortran, BLAS (MKL), MPICH2

Alin M Elena alinm.elena at googlemail.com
Fri Jul 31 08:41:45 EDT 2009


Hi,

There is a time since I did not use intel compilers on windows.
About preprocessing  a.f90 should be a.F90 and then the file would get 
preprocessed automatically .
Intel handles in a funny way the stack for performance. Heap array is one 
option, which according to what version you use may be buggy. The safest bet 
would be to use dynamic allocated arrays and try to conserve the number of 
allocate and deallocate.
 
Alin
-- 
 ______________________________________________________________________
 "If the Universities will not study useless subjects, who will?"
                             G. F. FitzGerald, Nature, 45/46, 392 (1892)
 ______________________________________________________________________
 Mr  Alin M ELENA
 Irish Centre for High-End Computing -- www.ichec.ie
 The Design Tower, Trinity Technology & Enterprise Campus
 Grand Canal Quay,  Dublin 2, Ireland
 Tel:   +353 (0) 1 5241608 ext 29
 Fax: +353 (0) 1 7645845
 http://alin.elenaworld.net
 alin.elena at ichec.ie
 alinm.elena at gmail.com
 ______________________________________________________________________
On Friday 31 July 2009 08:06:21 you wrote:
> NB. The line I sent was cut/pasted wrong
>      set(CMAKE_Fortran_FLAGS "/real_size:64 /W1 /nologo /Qopenmp
> /F1073741824 /fpp" CACHE "flags" STRING FORCE)
> JB
>
> > Alin
> >
> > I'm OK with BLAS for the time being, but I am having a lot of trouble
> > with the Intel Fortran Compiler ... for example I have flags set to
> >
> >    if(WIN32)
> >      MESSAGE("Win32 IFort compiler")
> >      set(CMAKE_Fortran_FLAGS "/real_size:64 /W1 /nologo /Qopenmp
> > /F1073741824" /fpp CACHE "flags" STRING FORCE)
> >    else(WIN32)
> >
> > the /fpp should tell the compiler to use the preprocessor, but it
> > looks as though the flag is being ignored. I cannot make the
> > Compiling with Intel(R) Visual Fortran 11.0.074 [IA-32]...
> > mhd_module.f90
> > D:\Code\CSCS\MHD\source\mhdV\readdmp.f90(12): warning #5117: Bad #
> > preprocessor line
> > D:\Code\CSCS\MHD\source\mhdV\readdmp.f90(14): warning #5117: Bad #
> > preprocessor line
> >
> > for #ifdef blah blah statements.
> >
> > Also, despite having the stack size set large, I get stack overflow
> > errors on even the smallest arrays. (I use /heap_arrays to geta round
> > this, bu the memory is not freed and the memory grows until exhausted!)
> >
> > Have you encountered any such problems?
> >
> > thanks
> >
> > JB
> >
> >> Hi John,
> >>
> >> I am the maintainer of BLAS/LAPACK modules for cmake. in principle
> >> things should not be too complicated.
> >>
> >> this is how I do it on my system.
> >>
> >> ##########################
> >> ## external libs
> >> set(BLA_STATIC OFF)
> >> if (UNIX)
> >>   set(BLA_VENDOR "Intel10_64lp")
> >> endif(UNIX)
> >> if (WIN32)
> >>   set(BLA_VENDOR "Intel10_32")
> >> endif(WIN32)
> >>
> >> set(BLA_F95 ON)
> >> find_package(Threads)
> >> message("Using this linkage for threads ${CMAKE_THREAD_LIBS_INIT}")
> >> find_package(MKLSOLVER REQUIRED)
> >> message("Using this linkage for mkl: ${MKLSOLVER95_LIBRARIES}
> >> ${CMAKE_THREAD_LIBS_INIT} with flags  ${MKLSOLVER_LINKER_FLAGS} ")
> >>
> >>  set(LIBS ${MKLSOLVER_LINKER_FLAGS} ${MKLSOLVER95_LIBRARIES}
> >> ${CMAKE_THREAD_LIBS_INIT})
> >>
> >>
> >> I may assist you to setup it if it does not work.
> >>
> >> regards,
> >>
> >> Alin


More information about the CMake mailing list