Size: 3580
Comment:
|
Size: 3505
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