awesome-repositories.com
Blog
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectAboutHow we rankPressMCP server
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
pytorch avatar

pytorch/pytorch

0
View on GitHub↗
100,814 stars·28,028 forks·Python·30 viewspytorch.org↗

Pytorch

PyTorch is a machine learning framework centered on a GPU-ready tensor library that supports multi-dimensional array operations across both CPU and accelerator hardware. It provides a foundational infrastructure for mathematical computation and dynamic neural network construction, utilizing a tape-based automatic differentiation system that allows for flexible, non-static graph execution.

The framework is designed for deep integration with Python, enabling natural usage alongside standard scientific computing ecosystems. It distinguishes itself through a comprehensive distributed training suite that includes data-parallel, model-parallel, and sharding primitives, alongside a just-in-time compilation infrastructure. Developers can extend the library by registering custom operators written in Python, C++, or CUDA, ensuring these components compose directly with the core automatic differentiation and execution pipelines.

Beyond its core tensor and neural network modules, the project includes extensive tooling for data ingestion, performance profiling, and memory analysis. It provides specialized utilities for audio processing, including feature extraction and speech recognition, as well as a distributed remote procedure call framework for managing complex, multi-node computational workloads.

Installation instructions are available for various hardware backends and build-time configurations to support specific environment requirements.

Features

  • Hardware-Accelerated - Accelerates multi-dimensional array operations by leveraging native GPU and specialized hardware support.
  • Distributed Training Primitives - Scales computations across multiple nodes and devices using primitives designed for data-parallel and model-parallel training.
  • Neural Network Components - Organizes neural network architectures through modular base classes and container types for custom layer management.
  • Automatic Differentiation Systems - Implements a dynamic, tape-based mechanism to compute gradients for flexible neural network training.
  • ATen - Serves as a foundational tensor and mathematical operation layer for executing high-level computational kernels.
  • Mathematical Operations - Executes a broad range of numerical routines, including linear algebra and pointwise operations, directly on tensors.
  • Fully Sharded Data Parallelism - Shards model parameters, gradients, and optimizer states across processes to enable memory-efficient distributed training.
  • Operation Kernels - Bundles a comprehensive library of native and compound operation kernels for execution on CPUs and accelerators.
  • Functional Autograd - Exposes functional APIs to compute higher-order derivatives like Jacobians and Hessians on arbitrary mathematical functions.
  • Convolution Layers - Provides a robust suite of 1D, 2D, and 3D convolution layers tailored for image and signal processing.
  • Normalization Layers - Stabilizes training convergence by automatically inferring input shapes for standard normalization layers.
  • Recurrent Layers - Processes sequential data through modular implementations of recurrent architectures like LSTMs and GRUs.
  • Batched Data Loading - Automates the collation of data samples into tensors using customizable functions for complex data structures.
  • Parallel Data Loaders - Prevents training bottlenecks by fetching and preprocessing data through multi-process parallelism.
  • Pipeline Parallelism Strategies - Partitions large models across multiple devices to bypass single-device memory constraints during parallel execution.
  • Python Bindings - Integrates deeply with the Python ecosystem to allow seamless interoperability with standard scientific computing libraries.
  • Just-In-Time Compilers - Optimizes function execution at runtime through source code scripting or tracing via just-in-time compilation.
  • Native Extension Interfaces - Enables high-performance execution by integrating custom C++, CUDA, or SYCL code directly into the computational graph.
  • Artificial Intelligence - Deep learning framework with strong GPU acceleration.
  • Deep Learning - Core library for tensors and dynamic neural networks.
  • Deep Learning Ecosystems - Core deep learning library for research and production.
  • Deep Learning Frameworks - Dynamic neural network library with strong GPU acceleration.
  • General Machine Learning - Framework for tensors and dynamic neural networks.
  • Inference Engines - Deep learning platform used for both training and model inference.
  • Large Language Models - Core framework for dynamic neural networks and GPU acceleration.
  • Machine Learning - Deep learning framework for research and production.
  • Machine Learning and AI - Tensor and neural network framework with GPU acceleration.
  • Machine Learning Frameworks - Flexible tensor-based library for dynamic neural network research and development.
  • Machine Learning Libraries - Tensors and dynamic neural networks with GPU acceleration.
  • Machine Learning Platforms - Library for tensor computation and dynamic neural network construction.
  • Machine Learning Tools - Deep learning library with initial native CPU support.
  • Data Science - Tensors and dynamic neural networks with GPU acceleration.
  • Data Science and Databases - Deep learning framework with GPU acceleration.
  • Computation and Optimization - Core library for developing and training deep learning models.
  • Python Projects - Listed in the “Python Projects” section of the Awesome For Beginners awesome list.
  • Scientific Computing Libraries - Dynamic neural network library with GPU acceleration.
  • Machine Learning Courses - A popular open-source library for deep learning and tensor computation.
  • Deep Learning Implementations - Core library for deep learning research and production.
  • PyTorch Utilities - Listed in the “PyTorch Utilities” section of the The Incredible Pytorch awesome list.
  • Dataset Abstractions - Supports both index-based and streaming data access patterns through flexible dataset interface abstractions.
  • Custom Operator Interfaces - Registers custom user-defined operators to ensure seamless integration with automatic differentiation and compilation pipelines.
  • Autograd Graph Inspection Tools - Hooks into automatic differentiation graphs to extract node metadata and interpose custom logic during the backward pass.
  • Serialization Utilities - Persists tensors and complex data structures to disk through native loading and saving mechanisms.
  • Data Samplers - Manages data index sequences to enable custom batching and shuffling strategies during model training.
  • CPU Profilers - Tracks operator execution time and memory usage to pinpoint performance bottlenecks across various hardware backends.
  • Remote Procedure Call Frameworks - Facilitates distributed function execution, object referencing, and asynchronous task management across networked system components.
  • Forward-Mode Differentiation - Computes directional derivatives by propagating tangents through functions via a dedicated forward-mode differentiation API.
  • Memory Profiling - Analyzes memory allocation patterns to detect fragmentation and optimize resource consumption during intensive computations.
  • Execution Profilers - Visualizes hardware utilization, operator latency, and memory metrics to provide a comprehensive view of runtime performance.

Star history

Star history chart for pytorch/pytorchStar history chart for pytorch/pytorch

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Open-source alternatives to Pytorch

Similar open-source projects, ranked by how many features they share with Pytorch.
  • tensorflow/tensorflowtensorflow avatar

    tensorflow/tensorflow

    195,697View on GitHub↗

    TensorFlow is a comprehensive machine learning framework designed for the construction, training, and deployment of complex mathematical models. It utilizes a graph-based execution model that represents operations as directed acyclic graphs, enabling automatic differentiation and efficient parallel processing. The system provides high-level interfaces for defining neural network architectures, alongside a robust engine for managing multidimensional array structures and tensor mathematics. The framework distinguishes itself through a scalable distributed runtime that orchestrates workloads acr

    C++deep-learningdeep-neural-networksdistributed
    View on GitHub↗195,697
  • keras-team/keraskeras-team avatar

    keras-team/keras

    64,094View on GitHub↗

    Keras is a high-level deep learning framework designed for constructing and training neural networks through the composition of modular, functional layers. It serves as a comprehensive modeling toolkit that provides standardized procedures for defining, evaluating, and deploying complex architectures. By utilizing a directed acyclic graph approach, the framework allows users to build intricate models with multiple inputs, outputs, and shared layers, ensuring consistent numerical execution through functional state management. The project distinguishes itself as a multi-backend machine learning

    Pythondata-sciencedeep-learningjax
    View on GitHub↗64,094
  • scikit-learn/scikit-learnscikit-learn avatar

    scikit-learn/scikit-learn

    66,344View on GitHub↗

    Scikit-learn is a machine learning library for predictive data analysis that provides a collection of algorithms for supervised and unsupervised learning. It functions as a comprehensive toolkit for data preprocessing, dimensionality reduction, and model selection, allowing users to classify data objects, predict continuous values, and cluster similar items based on historical patterns. The project is defined by a unified interface design where objects either learn from data, transform data, or chain these operations into sequential workflows. To ensure performance on large or high-dimensiona

    Pythondata-analysisdata-sciencemachine-learning
    View on GitHub↗66,344
  • google/jaxgoogle avatar

    google/jax

    35,835View on GitHub↗

    JAX is a hardware-accelerated array library and automatic differentiation system for numerical computing. It provides a framework compatible with NumPy that extends array operations with a just-in-time compiler to transform Python functions into optimized kernels for execution on GPU and TPU accelerators. The system differentiates itself through the use of an XLA-based compiler and a single program multiple data sharding model. These capabilities allow the library to distribute large-scale computations across multiple hardware accelerators using both automatic parallelization and manual shard

    Python
    View on GitHub↗35,835
See all 30 alternatives to Pytorch→

Frequently asked questions

What does pytorch/pytorch do?

PyTorch is a machine learning framework centered on a GPU-ready tensor library that supports multi-dimensional array operations across both CPU and accelerator hardware. It provides a foundational infrastructure for mathematical computation and dynamic neural network construction, utilizing a tape-based automatic differentiation system that allows for flexible, non-static graph execution.

What are the main features of pytorch/pytorch?

The main features of pytorch/pytorch are: Hardware-Accelerated, Distributed Training Primitives, Neural Network Components, Automatic Differentiation Systems, ATen, Mathematical Operations, Fully Sharded Data Parallelism, Operation Kernels.

What are some open-source alternatives to pytorch/pytorch?

Open-source alternatives to pytorch/pytorch include: tensorflow/tensorflow — TensorFlow is a comprehensive machine learning framework designed for the construction, training, and deployment of… keras-team/keras — Keras is a high-level deep learning framework designed for constructing and training neural networks through the… scikit-learn/scikit-learn — Scikit-learn is a machine learning library for predictive data analysis that provides a collection of algorithms for… google/jax — JAX is a hardware-accelerated array library and automatic differentiation system for numerical computing. It provides… microsoft/lightgbm — LightGBM is a high-performance machine learning framework designed for constructing gradient-boosted decision tree… flashlight/flashlight — Flashlight is a standalone C++ machine learning library and tensor library used for building and training neural…