Development Environment

This page lists available online tutorials related to parallel programming and using LC's HPC systems.

Our Development Environment Software consists of compilers and preprocessors, debugging software, memory-related software, profiling tools, tracing tools, and performance analysis tools.

NOTE: THIS PAGE IS CURRENTLY UNDER DEVELOPMENT

Platforms and Locations

Quick Start

Linux

BG/Q

Output

Linking

Example

Run-time Options

Troubleshooting

Documentation and References

NOTE: This page is currently under development

Introduction

TAU (Tuning and Analysis Utilities) is a comprehensive profiling and tracing toolkit for performance analysis of parallel programs written in Fortran, C, C++, Java, and Python. It is capable of gathering performance information through instrumentation of functions, methods, basic blocks, and statements. All C++ language features are supported including templates and namespaces.

PapiEx is a PAPI-based program for measuring hardware performance events of an application using the command-line. It supports both PAPI preset events and native events. It supports multiple threads of execution as well, including pthreads and OpenMP threads. For MPI programs, PapiEx can gather statistics across tasks. PapiEx also measures the total time spent in I/O and MPI calls.

Allinea DDT is a powerful, easy-to-use graphical debugger capable of debugging:

Useful introductory information on LC's software environment is presented in the Software and Development Environment section of the Introduction to Livermore Computing Resources, or the Linux Clusters Overview for system-specific information.

For each Python version, LC supports a set of modules, also known as site-packages, generally beneficial to our user community. Our package selection process begins when a package is requested by a user. LC first studies if it can generally benefit the Python users on the LC machines before committing to install and maintain it.

Pages