Programmiersprachen und Programmiertools

Programming Languages
LanguageShort description

Versatile language targetted at systems programming, but also used for scientific data processing.

Portland Group Compilers
Intel Compiler

Extension of the C programming language that is more application-centric due to availability of powerful object-oriented, generic and other programming paradigms

Portland Group Compilers
Intel Compilers
Fortran Programming language targeted at massive data processing and number crunching. See the linked article for compiler support.
Java Object oriented, portable and powerful programming language for business applications, but also increasingly used in other areas.
Development Environments
Eclipse CDT IDE (Integrated Development Environment) for Java/C/C++/Fortran
Intel Parallel Studio XE

Intel programming environment that comes in three flavors and is comprised of

  • Intel compilers: highly optimizing Fortran/C/C++ implementations (Composer Edition, Professional Edition, Cluster Edition)
  • Intel performance libraries: Math Kernel Library - MKL, Threading Building Blocks - TBB, Intel Performance Primitives - IPP, Data, Analytics Library - DAAL (Composer Edition, Professional Edition, Cluster Edition)
  • Performance and Correctness/Memory management Analysis/debugging tools: Inspector, VTune Amplifier, Advisor (Professional Edition, Cluster Edition)
  • Cluster software development: Intel MPI, Intel Trace Collector and Analyzer, Cluster Checking (Cluster Edition)

All components are available on LRZ's HPC system. For licensing on the campus please consult the relevant document.

Programming Tools
ProductShort description
Doxygen Semi-automatic generation of HTML or PDF Documentation from (possibly annotated) source code
Eclipse CDT IDE (Integrated Development Environment) for C/C++/Fortran/Java
Forcheck Tool for static analysis of Fortran code
PAPI Performance Application Programming Interface: Evaluate hardware performance counters
Valgrind Tool for correctness checking of programs (memory management, threading, etc.) that uses a virtual execution environment
Parallel Programming Languages, Libraries and Tools for parallel programming
SVN (Subversion) Software for source code versioning
git Software for source code versioning
Debuggers (interactive and batch)
ProductShort description
gdb GNU debugger
(x)pgdgb PGI debugger
ddt Allinea DDT (mainline debugging tool on LRZ HPC systems)
totalview Rogue Wave Totalview (support expires in late 2015)
ProductShort description
mpish Shell-like scripting language that simplifies usage of MPI
Rmpi MPI extension for the statistical package R