Commit 3abedd8d authored by gsell's avatar gsell
Browse files

build-blocks:

- modulefiles added
parent e01e8cac
#%Module1.0
set whatis "GNU Multiple-Precision Floating-point library with correct Rounding"
set url "http://www.mpfr.org/"
set license "GNU GPL v3 / GNU LGPL v3"
set maintainer "Achim Gsell <achim.gsell@psi.ch>"
set help "
The main goal of MPFR is to provide a library for multiple-precision
floating-point computation which is both efficient and has a well-
defined semantics. It copies the good ideas from the ANSI/IEEE-754
standard for double-precision floating-point arithmetic (53-bit
significand).
"
source $env(PSI_LIBMODULES)
#%Module1.0
set whatis "set of C functions that support the manipulation of TIFF image files."
set url "http://www.libtiff.org/"
set license "BSD-like, see: http://libtiff.org/misc.html"
set maintainer "Achim Gsell <achim.gsell@psi.ch>"
set help "
This software provides support for the Tag Image File Format (TIFF), a
widely used format for storing image data. The latest version of the TIFF
specification is available on-line in several different formats, as are a
number of Technical Notes (TTN's).
"
source $env(PSI_LIBMODULES)
#%Module1.0
set whatis "block-structured AMR framework"
set url "https://ccse.lbl.gov/BoxLib/index.html"
set license "BSD"
set licensefile "license.txt"
set maintainer "Achim Gsell <achim.gsell@psi.ch>"
set help "
BoxLib contains all the functionality needed to write a parallel,
block-structured AMR application. The fundamental parallel abstraction is
the MultiFab, which holds the data on the union of grids at a level. A
MultiFab is composed of FAB's; each FAB is an array of data on a single
grid. During each MultiFab operation the FAB's composing that MultiFab are
distributed among the cores. MultiFab's at each level of refinement are
distributed independently. The software supports two data distribution
schemes, as well as a dynamic switching scheme that decides which approach
to use based on the number of grids at a level and the number of processors.
The first scheme is based on a heuristic knapsack algorithm; the second is
based on the use of a Morton-ordering space-filling curve. MultiFab
operations are performed with an owner computes rule with each processor
operating independently on its local data. For operations that require data
owned by other processors, the MultiFab operations are preceded by a data
exchange between processors. Each processor contains meta-data that is
needed to fully specify the geometry and processor assignments of the
MultiFab's. At a minimum, this requires the storage of an array of boxes
specifying the index space region for each AMR level of refinement. The
meta-data can thus be used to dynamically evaluate the necessary
communication patterns for sharing data amongst processors, enabling us to
optimize communications patterns within the algorithm. One of the advantages
of computing with fewer, larger grids in the hybrid OpenMP--MPI approach
is that the size of the meta-data is substantially reduced.
"
source $env(PSI_LIBMODULES)
#%Module1.0
# OPAL_PREFIX is also used by OpenMPI!
set dont-setenv { OPAL_PREFIX }
set whatis "Object Oriented Particle Accelerator Library"
set url "http://amas.psi.ch/OPAL"
set license "PSI"
set maintainer "Achim Gsell <achim.gsell@psi.ch>"
set help "
OPAL is a C++ framework for general particle accelerator simulations. It
includes various beam line element descriptions and methods for single
particle optics, namely maps up to arbitrary order, symplectic integration
schemes and lastly time integration. OPAL is based on IPPL (Independent
Parallel Particle Layer) which adds parallel capabilities. Main functions
inherited from IPPL are: structured rectangular grids, fields and parallel
FFT and particles with the respective interpolation operators. Other
features are, expression templates and massive parallelism (up to 65000
processors) which makes is possible to tackle the largest problems in the
field. A new iterative solver handles arbitrary complex boundary conditions
and benefiting from the new geometry class.
"
source $env(PSI_LIBMODULES)
setenv OPAL_EXE_PATH "${PREFIX}/bin"
set-family OPAL
#%Module1.0
set whatis "SuperLU_DIST - A library for direct solution of large, sparse, nonsymmetric systems of linear equations."
set url "http://crd-legacy.lbl.gov/~xiaoye/SuperLU/"
set license "BSD"
set licensefile "README"
set maintainer "Achim Gsell <achim.gsell@psi.ch>"
set help "
SuperLU is a general purpose library for the direct solution of large,
sparse, nonsymmetric systems of linear equations on high performance
machines. The library is written in C and is callable from either C or
Fortran. The library routines will perform an LU decomposition with
partial pivoting and triangular system solves through forward and back
substitution. The LU factorization routines can handle non-square
matrices but the triangular solves are performed only for square
matrices. The matrix columns may be preordered (before factorization)
either through library or user supplied routines. This preordering for
sparsity is completely separate from the factorization. Working
precision iterative refinement subroutines are provided for improved
backward stability. Routines are also provided to equilibrate the
system, estimate the condition number, calculate the relative backward
error, and estimate error bounds for the refined solutions.
"
source $env(PSI_LIBMODULES)
#%Module1.0
module-whatis "plane wave/pseudopotential implementation of Density Functional Theory"
module-url "http://cpmd.org/"
module-license "?"
module-maintainer "Achim Gsell <achim.gsell@psi.ch>"
module-help "
The CPMD code is a parallelized plane wave / pseudopotential implementation
of Density Functional Theory, particularly designed for ab-initio molecular
dynamics.
"
#%Module1.0
source $env(PSI_LIBMODULES)
set whatis "GROMACS is a versatile package to perform molecular dynamics"
set url "http://www.gromacs.org/"
set license "See PREFIX/share/doc/COPYING"
set maintainer "Antonio Benedetto <antonio.benedetto@psi.ch>"
set help "
GROMACS is a versatile package to perform molecular dynamics, i.e. simulate
the Newtonian equations of motion for systems with hundreds to millions of
particles.
It is primarily designed for biochemical molecules like proteins, lipids and
nucleic acids that have a lot of complicated bonded interactions, but since
GROMACS is extremely fast at calculating the nonbonded interactions (that
usually dominate simulations) many groups are also using it for research on
non-biological systems, e.g. polymers.
"
set-family MPI
#%Module1.0
set whatis "Hierachical Data Format 5"
set url "http://www.hdfgroup.org/HDF5"
set license "HDF license (BSD-like)"
set maintainer "Achim Gsell <achim.gsell@psi.ch>"
set help "
HDF5 is a data model, library, and file format for storing and managing
data. It supports an unlimited variety of datatypes, and is designed for
flexible and efficient I/O and for high volume and complex data. HDF5 is
portable and is extensible, allowing applications to evolve in their use
of HDF5. The HDF5 Technology suite includes tools and applications for
managing, manipulating, viewing, and analyzing data in the HDF5 format.
"
source $env(PSI_LIBMODULES)
conflict hdf5_serial
set-family HDF5
#%Module1.0
set whatis "the Independent Parallel Particle Layer"
set url "http://amas.psi.ch/IPPL"
set license "PSI"
set maintainer "Achim Gsell <achim.gsell@psi.ch>"
set help "
IPPL is an object-oriented framework for particle based applications in
computational science requiring high-performance parallel computers. It
is a library of C++ classes designed to represent common abstractions in
these applications. IPPL is based on data-parallel programming at the
highest abstraction layer. Codes developed on serial workstations port
to all supported architectures, including parallel processors.
"
source $env(PSI_LIBMODULES)
#%Module1.0
set whatis "ParMETIS - Parallel Graph Partitioning and Fill-reducing Matrix Ordering"
set url "http://glaros.dtc.umn.edu/gkhome/metis/parmetis/overview"
set license "See: \$PARMETIS_DIR/share/doc/parmetis/LICENSE.txt"
set maintainer "Achim Gsell <achim.gsell@psi.ch>"
set help "
ParMETIS is an MPI-based parallel library that implements a variety of
algorithms for partitioning unstructured graphs, meshes, and for computing
fill-reducing orderings of sparse matrices. ParMETIS extends the functioni-
ality provided by METIS and includes routines that are especially suited
for parallel AMR computations and large scale numerical simulations. The
algorithms implemented in ParMETIS are based on the parallel multilevel
k-way graph-partitioning, adaptive repartitioning, and parallel multi-
constrained partitioning schemes developed in our lab.
"
source $env(PSI_LIBMODULES)
#%Module1.0
set whatis "Object-Oriented Solver Framework"
set url "http://trilinos.sandia.gov/"
set license "BSD-like"
set licensefile "Copyright.txt"
set maintainer "Achim Gsell <achim.gsell@psi.ch>"
set help "
Trilinos is a collection of open source software libraries, called packages,
intended to be used as building blocks for the development of scientific
applications. The word \"Trilinos\" is Greek and conveys the idea of \"a string
of pearls,\" suggesting a number of software packages linked together by a
common infrastructure. Trilinos was developed at Sandia National Laboratories
from a core group of existing algorithms, and utilizes the functionality of
software interfaces such as the BLAS, LAPACK, and MPI.
(Wikipedia)
"
source $env(PSI_LIBMODULES)
#%Module1.0
set whatis "opt-pilot"
set url "http://amas.psi.ch/OPAL"
set license "PSI"
set maintainer "Achim Gsell <achim.gsell@psi.ch>"
set help "
"
source $env(PSI_LIBMODULES)
#%Module1.0
set whatis "scripting language."
set url "http://www.python.org/"
set license "Python Software Foundation license (GPL-compatible)"
set maintainer "Achim Gsell <achim.gsell@psi.ch>"
set help "
Python is an easy to learn, powerful programming language. It has
efficient high-level data structures and a simple but effective
approach to object-oriented programming. Python’s elegant syntax
and dynamic typing, together with its interpreted nature, make it
an ideal language for scripting and rapid application development
in many areas on most platforms.
"
source $env(PSI_LIBMODULES)
#%Module1.0
set whatis "a very powerful, easy to learn programming language"
set url "http://www.tcl.tk"
set license "BSD-lik"
set maintainer "Achim Gsell <achim.gsell@psi.ch>"
set help "
Tcl (Tool Command Language) is a very powerful but easy to learn dynamic
programming language, suitable for a very wide range of uses, including
web and desktop applications, networking, administration, testing and many
more. Open source and business-friendly, Tcl is a mature yet evolving
language that is truly cross platform, easily deployed and highly
extensible.
"
source $env(PSI_LIBMODULES)
#%Module1.0
set whatis "graphical user interface toolkit"
set url "http://www.tcl.tk"
set license "BSD-like"
set maintainer "Achim Gsell <achim.gsell@psi.ch>"
set help "
Tk is a graphical user interface toolkit that takes developing desktop
applications to a higher level than conventional approaches. Tk is the
standard GUI not only for Tcl, but for many other dynamic languages, and
can produce rich, native applications that run unchanged across Windows,
Mac OS X, Linux and more.
"
source $env(PSI_LIBMODULES)
#%Module1.0
set whatis "part of the GNU autotools"
set url "http://www.gnu.org/software/autoconf/"
set license "GNU GPL v2/v3"
set maintainer "Achim Gsell <achim.gsell@psi.ch>"
set help "
Autoconf is an extensible package of M4 macros that produce shell scripts
to automatically configure software source code packages. These scripts
can adapt the packages to many kinds of UNIX-like systems without manual
user intervention. Autoconf creates a configuration script for a package
from a template file that lists the operating system features that the
package can use, in the form of M4 macro calls.
"
source $env(PSI_LIBMODULES)
#%Module1.0
set whatis "tool for automatically generating Makefile.in files"
set url "http://www.gnu.org/software/automake/"
set license "GNU GPL v2"
set maintainer "Achim Gsell <achim.gsell@psi.ch>"
set help "
Automake is a tool for automatically generating Makefile.in files
compliant with the GNU Coding Standards. Automake requires the use
of Autoconf.
"
source $env(PSI_LIBMODULES)
#%Module1.0
set whatis "collection of binary tools like:ld, as, nm"
set url "http://www.gnu.org/software/binutils/"
set license "GNU GPL v3"
set maintainer "Achim Gsell <achim.gsell@psi.ch>"
set help "
The GNU Binutils are a collection of binary tools. The main ones are:
ld - the GNU linker.
as - the GNU assembler.
But they also include:
addr2line - Converts addresses into filenames and line numbers.
ar - A utility for creating, modifying and extracting from archives.
c++filt - Filter to demangle encoded C++ symbols.
dlltool - Creates files for building and using DLLs.
gold - A new, faster, ELF only linker, still in beta test.
gprof - Displays profiling information.
nlmconv - Converts object code into an NLM.
nm - Lists symbols from object files.
objcopy - Copies and translates object files.
objdump - Displays information from object files.
ranlib - Generates an index to the contents of an archive.
readelf - Displays information from any ELF format object file.
size - Lists the section sizes of an object or archive file.
strings - Lists printable strings from files.
strip - Discards symbols.
windmc - A Windows compatible message compiler.
windres - A compiler for Windows resource files.
Most of these programs use BFD, the Binary File Descriptor library, to do
low-level manipulation. Many of them also use the opcodes library to assemble
and disassemble machine instructions.
The binutils have been ported to most major Unix variants as well as Wintel
systems, and their main reason for existence is to give the GNU system (and
GNU/Linux) the facility to compile and link programs."
source $env(PSI_LIBMODULES)
#%Module1.0
set whatis "cross-platform, open-source build system."
set url "http://www.cmake.org/"
set license "Kitware, Inc., Insight Software Consortium (BSD-like)"
set maintainer "Achim Gsell <achim.gsell@psi.ch>"
set help "
CMake is a family of tools designed to build, test and package software.
CMake is used to control the software compilation process using simple
platform and compiler independent configuration files. CMake generates
native makefiles and workspaces that can be used in the compiler
environment of your choice.
"
source $env(PSI_LIBMODULES)
#%Module1.0
set whatis "GNU Compiler Collection"
set url "http://gcc.gnu.org/"
set license "GNU GPL v2/v3"
set maintainer "Achim Gsell <achim.gsell@psi.ch>"
set help "
The GNU Compiler Collection includes front ends for C, C++, Objective-C,
Fortran, Java, Ada, and Go, as well as libraries for these languages
(libstdc++, libgcj,...). GCC was originally written as the compiler for
the GNU operating system.
This module includes compilers for
- C/C++
- Objective-C/Objective-C++
- Fortran
"
source $env(PSI_LIBMODULES)
set-family "Compiler"
setenv CC $PREFIX/bin/gcc
setenv CXX $PREFIX/bin/g++
setenv F77 $PREFIX/bin/gfortran
setenv F90 $PREFIX/bin/gfortran
setenv FC $PREFIX/bin/gfortran
setenv FORTRAN $PREFIX/bin/gfortran
# Ubuntu hack
if { [file exist "/usr/include/x86_64-linux-gnu"] } {
append-path C_INCLUDE_PATH "/usr/include/x86_64-linux-gnu"
append-path CPLUS_INCLUDE_PATH "/usr/include/x86_64-linux-gnu"
}
if { [file exist "/usr/lib/x86_64-linux-gnu"] } {
append-path LIBRARY_PATH "/usr/lib/x86_64-linux-gnu"
}
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment