Newer
Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
## Compiler
| Module | Description |
| ------ | ----------- |
| [GCC](https://gcc.gnu.org/) | The GNU Compiler Collection includes front ends for C, C++, Objective-C, Fortran, Java, and Ada, as well as libraries for these languages (libstdc++, libgcj,...). |
| [GCCcore](https://gcc.gnu.org/) | The GNU Compiler Collection includes front ends for C, C++, Objective-C, Fortran, Java, and Ada, as well as libraries for these languages (libstdc++, libgcj,...). |
| [NVHPC](https://developer.nvidia.com/hpc-sdk/) | C, C++ and Fortran compilers included with the NVIDIA HPC SDK (previously: PGI) |
## Devel
| Module | Description |
| ------ | ----------- |
| [Autoconf](https://www.gnu.org/software/autoconf/) | 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. |
| [Automake](https://www.gnu.org/software/automake/automake.html) | Automake: GNU Standards-compliant Makefile generator |
| [Autotools](https://autotools.io) | This bundle collect the standard GNU build tools: Autoconf, Automake and libtool |
| [M4](https://www.gnu.org/software/m4/m4.html) | GNU M4 is an implementation of the traditional Unix macro processor. It is mostly SVR4 compatible although it has some extensions (for example, handling more than 9 positional parameters to macros). GNU M4 also has built-in functions for including files, running shell commands, doing arithmetic, etc. |
| [ncurses](https://www.gnu.org/software/ncurses/) | The Ncurses (new curses) library is a free software emulation of curses in System V Release 4.0, and more. It uses Terminfo format, supports pads and color and multiple highlights and forms characters and function-key mapping, and has all the other SYSV-curses enhancements over BSD Curses. |
| [pkg-config](http://www.freedesktop.org/wiki/Software/pkg-config/) | pkg-config is a helper tool used when local_compiling applications and libraries. It helps you insert the correct local_compiler options on the command line so an application can use gcc -o test test.c `pkg-config --libs --cflags glib-2.0` for instance, rather than hard-coding values on where to find glib (or other libraries). |
| [pkgconf](https://github.com/pkgconf/pkgconf) | pkgconf is a program which helps to configure compiler and linker flags for development libraries. It is similar to pkg-config from freedesktop.org. |
| [xorg-macros](https://cgit.freedesktop.org/xorg/util/macros) | X.org macros utilities. |
## Lang
| Module | Description |
| ------ | ----------- |
| [Bison](https://www.gnu.org/software/bison) | Bison is a general-purpose parser generator that converts an annotated context-free grammar into a deterministic LR or generalized LR (GLR) parser employing LALR(1) parser tables. |
| [flex](http://flex.sourceforge.net/) | Flex (Fast Lexical Analyzer) is a tool for generating scanners. A scanner, sometimes called a tokenizer, is a program which recognizes lexical patterns in text. |
| [Perl](https://www.perl.org/) | Larry Wall's Practical Extraction and Report Language |
| [Ruby](https://www.ruby-lang.org) | Ruby is a dynamic, open source programming language with a focus on simplicity and productivity. It has an elegant syntax that is natural to read and easy to write. |
## Lib
| Module | Description |
| ------ | ----------- |
| [GDRCopy](https://github.com/NVIDIA/gdrcopy) | A low-latency GPU memory copy library based on NVIDIA GPUDirect RDMA technology. |
| [libevent](https://libevent.org/) | The libevent API provides a mechanism to execute a callback function when a specific event occurs on a file descriptor or after a timeout has been reached. Furthermore, libevent also support callbacks due to signals or regular timeouts. |
| [libfabric](https://ofiwg.github.io/libfabric/) | Libfabric is a core component of OFI. It is the library that defines and exports the user-space API of OFI, and is typically the only software that applications deal with directly. It works in conjunction with provider libraries, which are often integrated directly into libfabric. |
| [libreadline](https://tiswww.case.edu/php/chet/readline/rltop.html) | The GNU Readline library provides a set of functions for use by applications that allow users to edit command lines as they are typed in. Both Emacs and vi editing modes are available. The Readline library includes additional functions to maintain a list of previously-entered command lines, to recall and perhaps reedit those lines, and perform csh-like history expansion on previous commands. |
| [libtool](https://www.gnu.org/software/libtool) | GNU libtool is a generic library support script. Libtool hides the complexity of using shared libraries behind a consistent, portable interface. |
| [libxml2](http://xmlsoft.org/) | Libxml2 is the XML C parser and toolchain developed for the Gnome project (but usable outside of the Gnome platform). |
| [NCCL](https://developer.nvidia.com/nccl) | The NVIDIA Collective Communications Library (NCCL) implements multi-GPU and multi-node collective communication primitives that are performance optimized for NVIDIA GPUs. |
| [PMIx](https://pmix.org/) | Process Management for Exascale Environments PMI Exascale (PMIx) represents an attempt to provide an extended version of the PMI standard specifically designed to support clusters up to and including exascale sizes. The overall objective of the project is not to branch the existing pseudo-standard definitions - in fact, PMIx fully supports both of the existing PMI-1 and PMI-2 APIs - but rather to (a) augment and extend those APIs to eliminate some current restrictions that impact scalability, and (b) provide a reference implementation of the PMI-server that demonstrates the desired level of scalability. |
| [UCC](https://www.openucx.org/) | UCC (Unified Collective Communication) is a collective communication operations API and library that is flexible, complete, and feature-rich for current and emerging programming models and runtimes. |
| [UCC-CUDA](https://www.openucx.org/) | UCC (Unified Collective Communication) is a collective communication operations API and library that is flexible, complete, and feature-rich for current and emerging programming models and runtimes. This module adds the UCC CUDA support. |
| [UCX](https://www.openucx.org/) | Unified Communication X An open-source production grade communication framework for data centric and high-performance applications |
| [UCX-CUDA](http://www.openucx.org/) | Unified Communication X An open-source production grade communication framework for data centric and high-performance applications This module adds the UCX CUDA support. |
| [zlib](https://www.zlib.net/) | zlib is designed to be a free, general-purpose, legally unencumbered -- that is, not covered by any patents -- lossless data-compression library for use on virtually any computer hardware and operating system. |
## Mpi
| Module | Description |
| ------ | ----------- |
| [OpenMPI](https://www.open-mpi.org/) | The Open MPI Project is an open source MPI-3 implementation. |
## Numlib
| Module | Description |
| ------ | ----------- |
## System
| Module | Description |
| ------ | ----------- |
| [CUDA](https://developer.nvidia.com/cuda-toolkit) | CUDA (formerly Compute Unified Device Architecture) is a parallel computing platform and programming model created by NVIDIA and implemented by the graphics processing units (GPUs) that they produce. CUDA gives developers access to the virtual instruction set and memory of the parallel computational elements in CUDA GPUs. |
| [hwloc](https://www.open-mpi.org/projects/hwloc/) | The Portable Hardware Locality (hwloc) software package provides a portable abstraction (across OS, versions, architectures, ...) of the hierarchical topology of modern architectures, including NUMA memory nodes, sockets, shared caches, cores and simultaneous multithreading. It also gathers various system attributes such as cache and memory information as well as the locality of I/O devices such as network interfaces, InfiniBand HCAs or GPUs. It primarily aims at helping applications with gathering information about modern computing hardware so as to exploit it accordingly and efficiently. |
| [libpciaccess](https://cgit.freedesktop.org/xorg/lib/libpciaccess/) | Generic PCI access library. |
## Tools
| Module | Description |
| ------ | ----------- |
| [binutils](https://directory.fsf.org/project/binutils/) | binutils: GNU binary utilities |
| [DB](https://www.oracle.com/technetwork/products/berkeleydb) | Berkeley DB enables the development of custom data management solutions, without the overhead traditionally associated with such custom projects. |
| [expat](https://libexpat.github.io) | Expat is an XML parser library written in C. It is a stream-oriented parser in which an application registers handlers for things the parser might find in the XML document (like start tags). |
| [FPM](https://github.com/jordansissel/fpm) | Effing package management! Build packages for multiple platforms (deb, rpm, etc) with great ease and sanity. |
| [gettext](https://www.gnu.org/software/gettext/) | GNU 'gettext' is an important step for the GNU Translation Project, as it is an asset on which we may build many other steps. This package offers to programmers, translators, and even users, a well integrated set of tools and documentation |
| [groff](https://www.gnu.org/software/groff) | Groff (GNU troff) is a typesetting system that reads plain text mixed with formatting commands and produces formatted output. |
| [help2man](https://www.gnu.org/software/help2man/) | help2man produces simple manual pages from the '--help' and '--version' output of other commands. |
| [numactl](https://github.com/numactl/numactl) | The numactl program allows you to run your application program on specific cpu's and memory nodes. It does this by supplying a NUMA memory policy to the operating system before running your program. The libnuma library provides convenient ways for you to add NUMA memory policies into your own program. |
| [XZ](https://tukaani.org/xz/) | xz: XZ utilities |