An open API service indexing awesome lists of open source software.

awesome-high-performance-computing

A curated list of awesome high performance computing resources
https://github.com/trevor-vincent/awesome-high-performance-computing

Last synced: 14 days ago
JSON representation

  • Software

      • Flamegraphs - Visualization tool for profiling software, allowing quick identification of performance bottlenecks.
      • fio - Flexible I/O tester for benchmarking and stress/hardware verification.
      • SPEC CPU Benchmark - A benchmark suite designed to provide a comparative measure of compute-intensive performance across the widest practical range of hardware.
      • STREAM Memory Bandwidth Benchmark - Measures sustainable memory bandwidth and the corresponding computation rate for simple vector kernels.
      • Intel MPI benchmarks - A set of benchmarks designed to measure the performance and scalability of MPI implementations on Intel architectures.
      • OSU microbenchmarks - A collection of microbenchmarks designed to evaluate the performance of MPI implementations across various communication protocols and message sizes.
      • hpctoolkit - An integrated suite of tools for measurement and analysis of program performance on computers ranging from desktops to supercomputers.
      • Differential Flamegraphs - A visualization technique developed by Brendan Gregg that highlights differences between performance profiles, making it easier to spot performance regressions or improvements.
      • the yt project - An open-source, Python-based package for analyzing and visualizing volumetric data.
      • visit
      • vedo - A lightweight and powerful python module for scientific analysis and visualization of 3D objects and point clouds based on VTK.
      • Amira - A powerful, multifaceted 3D software platform for visualizing, manipulating, and understanding Life Science and bio-medical data coming from all types of sources.
      • Scientific Visualization Wiki - A comprehensive guide to the field of scientific visualization, detailing techniques, tools, and applications.
      • petsc
      • ginkgo
      • GSL
      • Scalapack
      • trilinos
      • tnl project
      • Software utilization at UK National Supercomputing Service, ARCHER2
      • Comparison of cluster software
      • List of cluster management software
      • Intel DAOS
      • Openfoam HPC benchmark - A benchmarking suite for evaluating the High Performance Computing capabilities of OpenFOAM, an open-source CFD software, under various computational loads.
      • fio flexible I/O tester
      • Ceph - An open-source distributed storage system.
      • paraview - An open-source, multi-platform data analysis and visualization application.
      • EESSI - A shared stack of scientific software installations.
      • Metal - Apple's GPU API
      • Intel DAOS - A software-defined scale-out object store for HPC applications.
      • Geekbench - Cross platform benchmarking tool
      • Empirical Roofline Tool (ERT) - Create empirical roofline plots, alternative to intel vtune for any machine
      • Roofline Visualizer for ERT - Visualizer for ERT
      • Slurm Web - Open source web dashboard for Slurm HPC clusters.
      • Triton - Triton is a language and compiler for parallel programming
      • hdf5 - The Hierarchical Data Format version 5 (HDF5), is an open source file format that supports large, complex, heterogeneous data.
      • alpaka - The alpaka library is a header-only C++17 abstraction library for accelerator development
      • async-rdma - A framework for writing RDMA applications with high-level abstraction and asynchronous APIs
      • CAF - An Open Source Implementation of the Actor Model in C++
      • Codon - high-performance Python compiler that compiles Python code to native machine code without any runtime overhead
      • FastFlow - High-performance Parallel Patterns in C++
      • Galois - A C++ Library to Ease Parallel Programming with Irregular Parallelism
      • Heteroflow - Concurrent CPU-GPU Task Programming using Modern C++
      • highway - Performance portable SIMD intrinsics
      • HPX - A C++ Standard Library for Concurrency and Parallelism
      • Horovod - Distributed deep learning training framework for TensorFlow, Keras, PyTorch, and Apache MXNet
      • Intel ISPC - SPMD compiler
      • Kompute - The general purpose GPU compute framework for cross vendor graphics cards (AMD, Qualcomm, NVIDIA & friends)
      • Kokkos - A C++ Programming Model for Writing Performance Portable Applications on HPC platforms
      • Kubeflow MPI Operator - MPI Operator for Kubeflow
      • Legion - Distributed heterogeneous programming library
      • MOGSLib - User defined schedulers
      • mpi4jax - Zero-copy mpi for jax arrays
      • Pollux - Message Passing Cloud orchestrator
      • Pyfi - Distributed flow and computation system
      • RAJA - Architecture and programming model portability for HPC applications
      • RaftLib - A C++ Library for Enabling Stream and Dataflow Parallel Computation
      • Scalix - Data parallel computing framework
      • Taichi - Parallel programming language for high-performance numerical computations in Python
      • Taskflow - A Modern C++ Parallel Task Programming Library
      • Transwarp - A Header-only C++ Library for Task Concurrency
      • UCX - Optimized production proven-communication framework
      • Zluda - Run unmodified CUDA applications with near-native performance on Intel AMD GPUs.
      • HyperQueue - HyperQueue is a tool designed to simplify execution of large workflows (task graphs) on HPC clusters.
      • cpufetch - A simple yet fancy CPU architecture fetching tool.
      • gpufetch - A tool similar to cpufetch, but for fetching GPU architecture.
      • Likwid - Provides all information about the supercomputer/cluster.
      • PRK - Parallel Research Kernels - A collection of kernels for parallel programming research.
      • Bluebanquise - An open-source cluster management tool.
      • DeepOps - Nvidia's GPU infrastructure and automation tools for Kubernetes and Slurm clusters.
      • Ruse - A tool for managing software environments in HPC clusters.
      • sstack - A tool to install multiple software stacks such as Spack, EasyBuild, and Conda.
      • McKernel - A hybrid kernel that combines Linux and a lightweight kernel designed to provide high performance for HPC applications.
      • arbiter2 - Monitors and protects interactive nodes with cgroups.
      • Charliecloud - Lightweight container solution for high-performance computing (HPC).
      • genv - GPU Environment Management for managing and scheduling GPU resources.
      • Grafana - Open-source platform for monitoring and observability, visualizing metrics.
      • HPC Rocket - Allows submitting Slurm jobs in Continuous Integration (CI) pipelines.
      • perun - Energy monitor for HPC systems, focusing on performance and energy efficiency.
      • redun - Workflow engine that emphasizes simplicity, reliability, and scalability.
      • remora - Tool for monitoring and reporting the performance of batch jobs on HPC systems.
      • ruptime - A utility for monitoring the status of computational jobs and systems.
      • Slurmvision slurm dashboard - A dashboard for monitoring and managing Slurm jobs.
      • slurm docker cluster - A Slurm cluster implemented using Docker containers, for development and testing.
      • Stui slurm dashboard for the terminal - A terminal-based UI for managing and monitoring Slurm clusters.
      • Vaex - A Python library for lazy Out-of-Core DataFrames (similar to Pandas), to visualize and explore big tabular datasets.
      • seer modern gui for gdb - A graphical user interface for GDB, aiming to improve the debugging experience with modern features and visuals.
      • Open Cluster Scheduler - A scalable HPC/AI workload manager based on SGE.
      • CANN - Compute Architecture for Neural Networks for Huawei Ascend GPUs
      • Charm++ - Parallel Programming with Migratable Objects
      • DeepSpeed - An easy-to-use deep learning optimization software suite that enables unprecedented scale and speed for Deep Learning Training and Inference
      • HIP - HIP is a C++ Runtime API and Kernel Language for AMD/Nvidia GPU
      • Intel TBB - Threading Building Blocks
      • NVSHMEM - GPU-accelerated implementation of the OpenSHMEM programming model developed by NVIDIA
      • OpenSHMEM - OpenSHMEM is a one-sided, PGAS-based parallel programming model enabling direct remote memory access for high-performance computing
      • Pyper - concurrent python made simple
      • ClusterVisor - Cluster management tool by Advanced Clustering.
      • BeeGFS - A parallel file system designed for performance-critical environments.
      • NVIDIA Base Command Manager (formerly Bright Cluster Manager) - Software for deploying and managing HPC and AI server clusters.
      • fpsync - A tool for fast parallel data transfer using fpart and rsync.
      • rocks - An open-source Linux cluster distribution.
      • SGE - A resource management software for large clusters of computers.
      • Spectrum LSF - Workload management platform and job scheduler for distributed high performance computing (HPC)
      • totalview - A comprehensive source code analysis and debugging tool designed for complex software running on HPC systems, supporting a wide range of languages and architectures.
      • demonspawn - A framework for automated execution of benchmarks and simulations, designed for HPC environments.
      • Google benchmark - A microbenchmark support library for C++ that tracks performance over time.
      • kerncraft - A tool for analytical modeling of loop performance and cache behavior on HPC systems.
      • scalene - A high-performance, high-precision CPU, GPU, and memory profiler for Python.
      • The Bandwidth Benchmark - A tool for measuring memory bandwidth across various CPUs and systems.
      • bytehound memory profiler - A detailed memory profiler for tracking down memory issues and leaks.
      • IBM Spectrum Scale Key Performance Indicators (KPI) - Provides key performance indicators for IBM Spectrum Scale, aiding in performance tuning and monitoring.
      • Ior - A parallel file system I/O benchmarking tool used widely in HPC for testing storage systems.
      • ngstress - A versatile tool for stressing various subsystems of a computer to find hardware faults or to benchmark performance.
      • mixbench - A benchmark suite designed to evaluate CPUs and GPUs across different compute and memory operations.
      • pmu-tools (toplev) - Performance monitoring tools for modern Intel CPUs, offering detailed insights into hardware and application performance.
      • core-to-core-latency - A diagnostic tool designed to measure and report the latency between CPU cores, aiding in the optimization of parallel computing tasks.
      • speedscope - An interactive, web-based viewer for performance profiles of software. It supports various formats and provides a flamegraph visualization to identify hot paths efficiently.
      • Hyperfine - A command-line benchmarking tool that provides a simple and user-friendly means to compare the performance of commands, featuring statistical analysis across multiple runs.
      • vftrace - A tracing tool specifically designed for the NEC SX-Aurora TSUBASA Vector Engine, enabling detailed performance analysis of vectorized code.
      • tinymembench - A simple memory benchmark tool, focusing on benchmarking memory bandwidth and latency with minimal dependencies, suitable for various platforms.
      • Empirical Roofline Tool (ERT) - Create empirical roofline plots, alternative to intel vtune for any machine
      • Roofline Visualizer for ERT - Visualizer for ERT
      • Caliper - A Performance Analysis Toolbox in a Library
      • KDiskMark - Benchmarking Tool For SSD/HDD Drives
      • OpenBenchmarking - Open benchmarks on a variety of algorithms and hardware
      • Phoronix Test Suite - Benchmarking suite for Linux
      • Palanteer Python/C++ Profiler - Profiler for both Python and C++
      • ADIOS2 - The Adaptable IO System version 2, designed for flexible and efficient I/O for scientific data, supporting a wide range of HPC simulations.
      • visit - An Open Source, interactive, scalable, visualization, animation and analysis tool.
      • WebDataset - library for writing I/O pipelines for large datasets.
      • mimalloc memory allocator
      • jemalloc memory allocator
      • tcmalloc memory allocator
      • Horde memory allocator
      • SIMD Info
      • OKA - Analytics and reporting tool for HPC schedulers: helps administrators and users to understand how compute resources are used, and optimize their usage.
      • Velda - A modern cluster management and job scheduler, with personalizable dev-containers and scale-to-cloud capabilities.
      • Charliecloud - Lightweight container solution for high-performance computing (HPC).
      • RunMat - MATLAB-syntax runtime with automatic CPU/GPU execution and fused array math kernels.
      • Dispenso - Meta/facebook C++ Task Library
      • MrPackMod - TACC Alternative to Easybuild/Spack
      • Summary of C/C++ debugging tools - An overview of various debugging tools available for C/C++ applications, focusing on HPC environments.
      • HECBioSim Benchmarks - The HECBioSim benchmark suite consists of a set of simple benchmarks for a number of popular Molecular Dynamics (MD) engines
      • JUPITER Benchmark Suite - The UPITER Benchmark Suite incorporates 16 applications from various domains. It was designed for and used in the procurement of JUPITER, the first European exascale supercomputer.
      • s9s - TUI for SLURM cluster management
      • OpenCL Cross-Hardware PhysX Benchmarks - Benchmark across all types of GPU, CPU
      • MLPerf benchmarks
      • Flopper.io - Comparison of GPUs
      • slop - "top"-like command for slurm clusters
      • CUDA-oxide - custom rustc backend for compiling GPU kernels in pure Rust
      • cpuid instruction note - A detailed note on the CPUID instruction used for processor identification.
      • lazyslurm - A lazygit-style terminal UI for Slurm. Monitor jobs, tail logs, and inspect nodes and partitions.
      • srunx - Python toolkit for managing SLURM jobs and workflows. Provides a CLI (sbatch / squeue / scancel parity), a FastAPI Web UI, an MCP server for natural-language control from Claude, YAML workflows with parameter sweeps and inter-job dependencies, GPU resource monitoring, SSH-based remote execution with rsync project sync, and Slack notifications.