Size: 3580
Comment:
|
Size: 3498
Comment:
|
Deletions are marked like this. | Additions are marked like this. |
Line 18: | Line 18: |
1. Set fortran and C compiler. . If you use bash shell, you can set fortran and c compiler: {{{ $export FC=ifort $export CC=gcc }}} . Tips: If you ignored this step, the configure script will pick up the gfortran and gcc compiler as default. |
1. Set fortran and C compiler. If you use bash shell, you can set fortran and c compiler: {{{ $export FC=ifort $export CC=gcc }}} Tips: If you ignored this step, the configure script will pick up the gfortran and gcc compiler as default. |
Line 26: | Line 27: |
2. Set blas and lapack library. . For flaxibality reason, we ask users to set blas and lapack libraries. {{{ $export MATHLIB="-LMathLibDir -llapackname -lblasname" }}} |
2. Set blas and lapack library. |
Line 32: | Line 29: |
3. Configure BDF package. | For flaxibality reason, we ask users to set blas and lapack libraries. {{{ $export MATHLIB="-LMathLibDir -llapackname -lblasname" }}} 3. Configure BDF package. |
Line 34: | Line 36: |
After setting compiler and mathematic library. You can configure BDF by command configure in BDF root directory. {{{ $./configure }}} |
After setting compiler and mathematic library. You can configure BDF by command configure in BDF root directory. {{{ $./configure }}} |
Line 40: | Line 42: |
Configure support several parameters. {{{ --enable-debug=yes[no] Compile BDF in debug mode. --enable-i8=yes[no] Compile BDF with 64 bit integrals. --enable-openmp=yes[no] Compile BDF with OpenMP supporting. --enable-mpi=yes[no] Compile BDF with MPI supporting. --enable-parallel=yes[no] Compiler BDF with MPI and OpenMP support. }}} |
Configure support several parameters. {{{ --enable-debug=yes[no] Compile BDF in debug mode. --enable-i8=yes[no] Compile BDF with 64 bit integrals. --enable-openmp=yes[no] Compile BDF with OpenMP supporting. --enable-mpi=yes[no] Compile BDF with MPI supporting. --enable-parallel=yes[no] Compiler BDF with MPI and OpenMP support. }}} |
Line 49: | Line 51: |
4. Compile BDF package. {{{ $make }}} |
4. Compile BDF package. {{{ $make }}} |
Line 55: | Line 57: |
Some of BDF modules support parallel calculation. You can compiler BDF as parallel mode. At present, we support MPI and OpenMP. 1. MPI and OpenMP hybrid. {{{ $./configure --enable-parallel=yes }}} |
Some of BDF modules support parallel calculation. You can compiler BDF as parallel mode. At present, we support MPI and OpenMP. |
Line 61: | Line 59: |
1. Only MPI. {{{ $./configure --enable-mpi=yes }}} |
1. MPI and OpenMP hybrid. {{{ $./configure --enable-parallel=yes }}} |
Line 66: | Line 64: |
1. Only OpenMP. {{{ $./configure --enable-openmp=yes }}} |
2. Only MPI. {{{ $./configure --enable-mpi=yes }}} 3. Only OpenMP. {{{ $./configure --enable-openmp=yes }}} |
Line 74: | Line 77: |
1. A 64bit machine with intel compiler and MKL library. {{{ |
1. A 64bit machine with intel compiler and MKL library. {{{ |
Line 81: | Line 84: |
}}} | }}} |
Line 83: | Line 86: |
1. A Mac laptop with gfortran, gcc and user compiled lapack and blas library {{{ |
2. A Mac laptop with gfortran, gcc and user compiled lapack and blas library {{{ |
Line 90: | Line 93: |
}}} | }}} |
Line 92: | Line 95: |
1. A Linux cluster with fort, icc, openmpi and intel MKL library. {{{ Check MPI flags by using command |
3. A Linux cluster with fort, icc, openmpi and intel MKL library. Check MPI flags by using command {{{ |
Line 97: | Line 100: |
You may get such output. |
}}} You may get such output. {{{ |
Line 101: | Line 105: |
}}} | |
Line 102: | Line 107: |
You can set BDF compiler and MPILIB as | You can compile bdf package as {{{ |
Line 110: | Line 115: |
}}} | |
Line 111: | Line 117: |
If you only want to evoke MPI, just use | If you only want to evoke MPI, just use {{{ |
Line 114: | Line 120: |
}}} | }}} |
Installation
Contents
System requirements
In principle, BDF supports all Unix-like platforms. However, we strongly propose you to use BDF at Linux platform together Intel Fortran and C compiler because BDF package is developed and thoroughly tested on such platforms. System requirements of BDF is summarized as following lines:
OS: Linux, Mac, FreeBSD, Unix Compiler: Fortran 90 compiler such as Intel, gfortran, g95 Support softwares: Python, make Parallel environments: MPI
Configure and compile BDF package
Several steps are needed to install BDF package.
1. Set fortran and C compiler.
If you use bash shell, you can set fortran and c compiler:
$export FC=ifort $export CC=gcc
Tips: If you ignored this step, the configure script will pick up the gfortran and gcc compiler as default.
2. Set blas and lapack library.
For flaxibality reason, we ask users to set blas and lapack libraries.
$export MATHLIB="-LMathLibDir -llapackname -lblasname"
3. Configure BDF package.
After setting compiler and mathematic library. You can configure BDF by command configure in BDF root directory.
$./configure
Configure support several parameters.
--enable-debug=yes[no] Compile BDF in debug mode. --enable-i8=yes[no] Compile BDF with 64 bit integrals. --enable-openmp=yes[no] Compile BDF with OpenMP supporting. --enable-mpi=yes[no] Compile BDF with MPI supporting. --enable-parallel=yes[no] Compiler BDF with MPI and OpenMP support.
4. Compile BDF package.
$make
Compile parallel bdf
Some of BDF modules support parallel calculation. You can compiler BDF as parallel mode. At present, we support MPI and OpenMP.
1. MPI and OpenMP hybrid.
$./configure --enable-parallel=yes
2. Only MPI.
$./configure --enable-mpi=yes
3. Only OpenMP.
$./configure --enable-openmp=yes
Examples of some typical installations
1. A 64bit machine with intel compiler and MKL library.
$export FC=ifort $export CC=gcc $export MATHLIB="-lmkl_intel_ilp64 -lmkl_sequential -lmkl_core -lpthread" $./configure --enabale-i8=yes --enable-openmp=yes $make
2. A Mac laptop with gfortran, gcc and user compiled lapack and blas library
$export FC=gfortran $export CC=gcc $export MATHILIB="-L/Users/mike/mathlib -lblas -llapack" $./configure --enabale-i8=yes --enable-openmp=yes $make
3. A Linux cluster with fort, icc, openmpi and intel MKL library.
Check MPI flags by using command
$mpif90 --shownme
You may get such output.
ifort -I/opt/openmpi/include -I/opt/openmpi/lib -L/opt/openmpi/lib -lmpi_f90 -lmpi_f77 -lmpi -ldl -lm -Wl,--export-dynamic -lrt -lnsl -lutil
You can compile bdf package as
$export FC=ifort $export CC=icc $export MATHLIB="-lmkl_intel_ilp64 -lmkl_sequential -lmkl_core -lpthread" $export MPILIB="-I/opt/openmpi/include -I/opt/openmpi/lib -L/opt/openmpi/lib -lmpi_f90 -lmpi_f77 -lmpi -ldl -lm -Wl,--export-dynamic -lrt -lnsl -lutil" $./configure --enabale-i8=yes --enable-parallel=yes $make
If you only want to evoke MPI, just use
$./configure --enabale-i8=yes --enable-mpi=yes