HPE Cray Supercomputing Programming Environment Software QuickSpecs

Shape the Future of QuickSpecs - Your Input Matters

The HPE Cray Supercomputing Programming Environment Software suite offers programmers a comprehensive set of tools for developing, porting, debugging, and tuning HPC applications


The programming environment simplifies the transition to new hardware architectures and configurations by automatically applying optimizations on HPC applications that use existing programming models with a simple recompile.


The environment provides:


– Compilers, programming languages, and models

– Scientific, math, and I/O libraries

– Debugging tools

– Profiling and performance optimization tools

  • Overview

    Value Proposition

    Why HPE Cray Supercomputing Programming Environment Software?


    • Complete toolchain
    • A comprehensive set of tools for the whole application development process offering full system view.

    • Cross platform
    • Provides programming environment consistency across HPE Cray Supercomputing platforms for easy porting and optimized performance from all types of HPE HPC architectures.

    • Programmability
    • Offers users intuitive behavior, automation of tasks and optimized performance for their applications with the least amount of effort.

    • Scalability
    • Improves performance of applications on systems of any size—up to Exascale deployments.

    • Holistic support
    • HPE Services provides complete support for the HPE developed software.

    • From HPC experts for HPC experts
    • Developed for over many years in close interaction with and contributions from HPE customers.
  • Standard Features

    Compiling environment, programming languages, and models

    Compiling Environment

    The Fortran, C, and C++ compilers are designed to help extract maximum performance from the systems regardless of the underlying architecture—supporting x86-64 processors (both Intel® and AMD), Arm®-based HPC processors as well as accelerators.


    The compilers identify regions of computation that are either sequentially scalar or vector parallel, and automatically exploit these capabilities for the targeted system.


    The compiler gives programmers optimization feedback with an annotated listing of source code for easier application tuning. The compiler also integrates with the performance optimization tools in the suite to help users get a better understanding of what changes will produce more performant code.


    The suite also includes integration with GNU, Intel, AMD, and NVIDIA® programming environments so that developers can choose between multiple compilers and still use the libraries, debuggers, and performance analysis tools included in the suite to help optimize application performance.


    With a focus on standards compliance for code safety, application portability, and investment protection, the compilers support standard programming languages (Coarray Fortran, C/C++, and UPC) and standard programming models such as OpenMP for C, C++, Fortran and OpenACC for Fortran.


    Scalable communication libraries (MPI and SHMEM)

    The suite offers full support for porting and developing distributed memory applications using HPE Cray MPI or performance optimized SHMEM.


    HPE Cray MPI is an MPICH ABI compatible library that is tuned for Intel®, AMD, and Arm CPUs and variety of GPUs. It is customized for low latency and high bandwidth, both on-node and off-node, for point-to-point and collective communications. Strategic optimizations for MPI I/O, MPI_THREAD_MULTIPLE, and remote memory access (RMA), and integration with the performance analysis tools in the suite contribute to deliver ideal application performance for today’s HPC codes.


    A new tool in HPE Cray MPI called MPI Translate (MPIxlate) can translate Open MPI ABI and HPE MPI ABI to MPICH ABI to enable those applications that are based on Open MPI and HPE MPI to be run with HPE Cray MPI on HPE Slingshot systems. The MPI Translate tool supports C and C++ Languages and also supports CPUs and GPUs.


    Scientific, math, and I/O libraries

    The suite offers comprehensive collection of highly tuned linear algebra subroutines designed to help extract maximum performance from the system with the least amount of effort.

Customized LibSci (including BLAS, LAPACK, and ScaLAPACK), our iterative refinement toolkit, and LibSci_ACC (accelerated BLAS, and LAPACK) are designed to take full advantage of the underlying hardware, optimizing for both intra-node and inter-node performance on all HPE Cray Supercomputing systems. Using auto-tuning and adaptation, the libraries choose the known best algorithms at runtime. They also feature simplified interfaces into complex software (no source code changes required to access optimized algorithms) and integrate with the compiling environment for better productivity.


NetCDF and HDF5 I/O libraries are built with the supported compiling environments and included in the suite for convenience.


Debugging tools

The HPE Cray Supercomputing Programming Environment Software offers traditional debuggers combined with new innovative techniques. Together, these technologies allow users to address debugging problems at a broader range and scale than conventional techniques. This means that programmers can spend less time debugging and more time creating Included are:


  • Comparative debugger: This market-unique tool helps programmers uncover issue by running two applications side by side. If the values of the selected data structures diverge, the user is notified that an error may exist. This capability is useful for locating errors that are introduced when applications are modified through code, compiler, or library changes, and for application porting between architectures (for example between CPUs and GPUs) or programming models.

  • GDB for HPC is based on the popular GDB command-line debugger used to debug applications compiled with Fortran, C, and C++ compilers with enhancements to provide a GDB debugging experience for applications that run at scale across many nodes. The tool enables users to run a traditional scalable debugging session—either by launching an application or by attaching it to an already-running application. A GDB for HPC debug session retrieves debug information from thousands of processes and presents merged backtraces and data, removing vast amounts of duplicate information.

  • Valgrind for HPC: Parallel memory analysis tool based on Valgrind debugger used for applications compiled with Fortran, C, and C++ compilers—it aggregates common errors into a single output record for easier analysis of potential memory problems within applications that run at scale.

  • Sanitizers for HPC: Sanitizers for HPC enables the users to easily detect memory and thread errors for easier analysis and debugging. It collects and analyses LLVM sanitizer output at scale, manages job launch through system’s workload manager and processes Sanitizers tool error reports and aggregates them for easier analysis. Sanitizers for HPC supports Clang AddressSanitizer, LeakSanitizer, ThreadSanitizer and Sanitizer libraries included with both the Cray CCE and the GNU GCC compilers. It also supports AMD’s GPU Sanitizerlibrary and NVIDIA’s CUDA-Memcheck tool.

  • Stack Trace Analysis Tool (STAT): Helps developers identify if an application is hung or still making progress when running. Generates a merged backtrace for applications so users can get a better insight into application behavior at a function level.

  • Tool for abnormal termination processing (ATP): When an application crashes, the tool detects a signal and generates a merged backtrace resulting in a minimal core file set so that programmers do not have to plough through many core files when debugging the application.

Performance analysis and optimization tools

HPE Cray Supercomputing Programming Environment Software provides a comprehensive collection of tools designed to reduce the time and effort associated with porting and tuning of applications on HPE Cray Supercomputer systems.


HPE offers different tools and experiments to fit different developer needs and choice of interfaces for ease of use.


  • Performance analysis tool (PAT) brings valuable insight when analyzing bottlenecks to improve performance of applications that run across the whole system. The tool exposes wide set of indicators, such as computation, communication, I/O, and memory statistics and displays a program’s top time-consumers and bottlenecks (via unique and critical load balance analysis) for jobs at scale. It then automatically generates observations and suggestions to improve code performance. As ease of use is an important feature of the tool suite, both simple and advanced interfaces are available, offering both a simple path to get started and a wealth of capability for analyzing the most complex codes.

  • Programmers can quickly assess the type and severity of the performance issues by using our visualization tool which complements text reports and summarizes programs’ performance data in graphs and charts, allowing users to easily drill down to get to the bottom of issues.

  • Code parallelization assistant helps developers reveal hidden potential of their application via code restructuring.

The tool extends the existing performance analysis, and visualization technology by combining performance statistics and program source code visualization with our compiling environment optimization feedback. This tool can easily navigate through source code to highlighted dependencies or bottlenecks during the optimization phase of program development or porting.


Using the program library provided by the compiling environment and the performance data collected by performance, measurement, and analysis tools, the user can navigate through their source code to understand which high-level loops could benefit from OpenMP parallelism. Code parallelization assistant provides dependency and variable scoping information for those loops and assists the user with creation of performance optimized code.


Learn more at: HPE Cray Supercomputing Programming Environment Software Product Page


HPE Cray EX Supercomputer

Operating System

  • – HPE Cray Operating System
  • – SUSE Linux Enterprise Server
  • – Redhat Enterprise Linux 9
  • – Red Hat Enterprise Linux 8

HPE Cray XD 2000, HPE Cray XD 6500, ProLiant DL

Operating System

  • – SUSE Linux Enterprise Server
  • – Red Hat Enterprise Linux 9
  • – Red Hat Enterprise Linux 8
  • Configuration Information

x86 Based Systems

Description

SKU

HPE Cray Programming Environment for x86 Systems 2 Seats 3-year 24x7 Support E-RTU

R5Q44AAE

HPE Cray Programming Environment for x86 Systems 5 Seats 3-year 24x7 Support E-RTU

R5Q46AAE

HPE Cray Programming Environment for x86 Systems Unlimited Seats 3-year 24x7 Support E-RTU

R6P61AAE

ARM Based Systems

HPE Cray Supercomputing Programming Environment ARM 2 Seats 3-year Subscription 24x7 Support E-RTU

S2R20AAE

HPE Cray Supercomputing Programming Environment ARM 5 Seats 3-year Subscription 24x7 Support E-RTU

S2R21AAE

HPE Cray Supercomputing Programming Environment ARM Unlimited Seats 3-year 24x7 Support E-RTU

S2R22AAE

  • Summary of Changes

Date

Version History

Action

Description of Change

08-Sep-2025

Changed

SUSE Linux Enterprise Server and Redhat Enterprise Linux 9 Operating Systems were added in Standard Features section.

06-Nov-2023

Changed

Added ARM SKUs

Configuration Information section was updated

Series name was updated.

16-Jan-2023

Changed

Removed DL Pluggin,

Updated Debuggers to include Sanitizers for HPC

Updated HPE Cray MPI to include MPI Translate

Updated HW support

25-Oct-2021

Changed

Configuration Information section was updated

04-Oct-2021

Changed

Standard Features section was updated.

19-Apr-2021

Changed

Removed reference to ARM version

Standard Features and Configuration Information sections were updated

15-Feb-2021

Changed

Standard Features and Configuration Information sections were updated.

Removed FIO

03-Aug-2020

New

New QuickSpecs

Recommended for you