User Tools

Site Tools


build:minreq

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
build:extdeps [2016/04/20 07:23] – [Compilers] Yann Pouillonbuild:minreq [2020/08/10 20:26] (current) – [Parallelism] Xavier Gonze
Line 1: Line 1:
-====== External dependencies ======+====== Minimum Requirements ======
  
-===== Minimum requirements ===== +===== Hardware =====
- +
-==== Hardware ====+
  
 Abinit requires at least 1 CPU, 4Gb of RAM and 4Gb of disk space to perform the calculations of the tutorials and the test suite. The most complex calculations may require more than 10,000 CPUs, more than 1Tb of RAM, and a few Tb of disk space. Abinit requires at least 1 CPU, 4Gb of RAM and 4Gb of disk space to perform the calculations of the tutorials and the test suite. The most complex calculations may require more than 10,000 CPUs, more than 1Tb of RAM, and a few Tb of disk space.
Line 9: Line 7:
 Any recent desktop or laptop computer is in principle able to perform calculations with Abinit. Any recent desktop or laptop computer is in principle able to perform calculations with Abinit.
  
-==== Compilers ====+===== Tools =====
  
-To be correctly built, Abinit requires a working development environment providing both a C and a Fortran compiler.+To be correctly built, Abinit requires a working development environment providing both a C and a Fortran compiler
 +as well as Python (version 2.7.5 at least, but version 3.8 is recommended).
  
 On desktop and laptop computers, we recommend: On desktop and laptop computers, we recommend:
   * the [[http://gcc.gnu.org/|GNU Compiler Collection]];   * the [[http://gcc.gnu.org/|GNU Compiler Collection]];
-  * the [[https://software.intel.com/en-us/intel-parallel-studio-xe|Intel Parallel Studio XE Toolchain]]. +  * the [[https://software.intel.com/en-us/intel-parallel-studio-xe|Intel Parallel Studio XE Toolchain]]; 
- +which we have extensively tested.
-==== Libraries ==== +
- +
-Abinit will work only if linear algebra libraries are present on the computer. Only 2 linear algebra components are mandatory: +
-  * [[http://www.netlib.org/blas/|Basic Linear Algebra Subprograms (BLAS)]] +
-  * [[http://www.netlib.org/lapack/|Linear Algebra PACKage (LAPACK)]] +
- +
-Even if you are free to install the reference implementation from Netlib, we highly recommend you to use an optimized implementation instead, in particular if you intend to perform complex calculations. A full list of supported libraries is available on the [[build:linear_algebra|Configuring linear algebra page]]. +
- +
-If you are using Linux, the best way to install linear algebra libraries is to use the package manager of your distribution to get some of them and/or install the [[https://software.intel.com/en-us/intel-mkl|Intel Math Kernel Library]]. +
- +
-For MacOS X, many libraries can be installed using [[https://www.macports.org/|Macports]] or [[http://brew.sh/|Homebrew]]. +
- +
-The University of Tennessee has also some useful information on [[https://icl.cs.utk.edu/lapack-for-windows/|how to install linear algebra libraries on Windows]]. +
- +
-===== Parallelism ===== +
- +
-==== OpenMP and multithreading ==== +
- +
-If your computer has multiple cores, you might want to take benefit from all of them instead of running Abinit on only one of them. There are 2 ways of achieving it: [[wp>OpenMP]] and [[wp>Multithreading_(computer_architecture)|Multithreading]]. +
- +
-Various parts of Abinit have been optimized to work with OpenMP. In addition, the latter is usually directly provided by compilers and does not require the installation of additional libraries. The build system of Abinit is able to set the corresponding compile flags automatically for a dozen popular compilers if you ask for OpenMP at configure time. Should this not be the case for you, please consult the documentation of your compilers and contact us once you have found and tried the flags to provide. +
- +
-Abinit does not provide support for multithreading but can benefit from multithreaded versions of its external dependencies, as long as the multithreaded operatons are entirely performed externally. Please note that Abinit is not developed with thread-safety in mind and use multithreading with a lot of care.+
  
-==== MPI ====+Since the choice is up to the system administrator on HPC environments, we also support the [[https://www.nag.com/content/nag-fortran-compiler|NAG fortran compiler]]. 
 +/* Since the choice is up to the system administrator on HPC environments, we also support the IBM and NAG compilers. */
  
-==== GPU ==== 
  
-===== Enhanced components ===== 
  
-==== Linear algebra ==== 
  
-==== FFT ==== 
  
build/minreq.1461129817.txt.gz · Last modified: 2016/04/20 07:23 by Yann Pouillon