awesome-repositories.com
Blog
awesome-repositories.com

Entdecke die besten Open-Source-Repositories mit KI-gestützter Suche.

EntdeckenKuratierte SuchenOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjektÜber unsHow we rankPresseMCP-Server
RechtlichesDatenschutzAGB
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
rust-ndarray avatar

rust-ndarray/ndarray

0
View on GitHub↗
4,290 Stars·379 Forks·Rust·Apache-2.0·7 Aufrufedocs.rs/ndarray↗

Ndarray

ndarray ist eine Bibliothek für mehrdimensionale Arrays für Rust, die als Framework für lineare Algebra und wissenschaftliches Rechnen dient. Sie bietet die Kerninfrastruktur für die Erstellung und Manipulation von n-dimensionalen Arrays und fungiert sowohl als paralleler Array-Prozessor als auch als Toolkit für numerische Datenanalysen.

Die Bibliothek zeichnet sich durch effizientes Slicing und Memory-Views aus, was den Datenaustausch ohne Kopieren ermöglicht. Sie nutzt optimierte Backend-Mathe-Bibliotheken für schnelle Matrixmultiplikationen und verteilt rechenintensive mathematische Iterationen auf mehrere CPU-Threads, um die Verarbeitung zu beschleunigen.

Das Projekt deckt ein breites Spektrum mathematischer Operationen ab, darunter elementweise Arithmetik, achsenbasierte Datenaggregation und Skalarproduktberechnungen. Zudem sind umfassende Hilfsprogramme für die Array-Manipulation enthalten, wie Reshaping, Flattening, Stacking und die Generierung von Koordinatengittern, sowie Unterstützung für die randomisierte Array-Generierung und Serialisierung.

Features

  • Multidimensional Arrays - Provides the core infrastructure for managing and manipulating n-dimensional arrays and matrices.
  • Array View Creation - Produces read-only or mutable windows into existing data buffers without copying underlying elements.
  • Strided - Maps multidimensional indices to flat memory buffers using axis-specific step sizes for efficient zero-copy slicing.
  • Zero-Copy Array Views - Provides lightweight references to existing memory buffers to allow slicing and reshaping without data duplication.
  • Tensor Slicing and Indexing - Extracts specific elements or sub-regions of arrays using coordinate-based indexing and slicing.
  • Numeric Type Traits - Uses generics and numeric traits to apply mathematical operations across different numeric types and dimensions.
  • Array Layout Management - Modifies shape and stride information independently of the underlying data using dedicated reference types.
  • Array Slicing - Extracts sub-sections of arrays using arbitrary step sizes and negative indices.
  • Element-wise Array Operations - Executes high-performance element-wise operations and mathematical functions across multidimensional arrays.
  • Generalized Matrix Multiplications - Executes high-performance matrix product computations with support for scalar scaling.
  • High-Performance Array Arithmetic - Executes high-performance mathematical operations across arrays of varying dimensions using optimized routines.
  • Scientific Computing - Provides a computational framework for performing complex mathematical modeling and multi-dimensional array operations.
  • Linear Algebra Libraries - Serves as a high-performance framework for vector and matrix operations.
  • Linear Algebra Routines - Implements fundamental linear algebra operations including matrix multiplication and dot products.
  • Multi-Dimensional Arrays - Implements data structures that organize numeric elements into grids or higher-dimensional spaces.
  • Multidimensional Array Containers - Offers dense data structures supporting various memory layouts for numerical computing and data analysis.
  • N-Dimensional Array Libraries - Provides a comprehensive Rust library for creating and manipulating multidimensional arrays with efficient memory views.
  • Linear Algebra - Provides high-performance routines for vector and matrix operations, including dot products.
  • Parallel Array Processing - Increases processing speed by distributing array iterations and methods across multiple CPU threads.
  • Dot Product Computation - Calculates the inner product of two arrays, including those with dynamic dimensions.
  • Ownership and Borrowing - Uses Rust's ownership and borrowing semantics to separate data ownership from data access via unified interfaces.
  • Multidimensional Shape Handling - Implements runtime-defined vectors to support arrays with an arbitrary number of axes.
  • Dimension Squeezing - Removes dimensions of size one from an array to simplify its overall shape.
  • Scientific Array Serialization - Supports persisting and loading multidimensional arrays using scientific data formats.
  • Axis Permutation - Changes the order of dimensions or reverses the direction of specific axes in-place.
  • Parallel Iterators - Distributes element-wise operations and axis reductions across multiple CPU cores using parallel iterators.
  • BLAS Backend Integration - Leverages optimized backend math libraries for high-speed floating-point matrix multiplication.
  • Strided Window Generation - Generates overlapping windows of a specific size along an axis using a defined step size.
  • Ownership-Based Memory Management - Implements memory management using Rust's ownership and borrowing model to handle owned arrays and non-owning views.
  • Array Function Mapping - Applies custom functions to corresponding elements of multiple arrays in lock step with broadcasting support.
  • Array Combinations - Joins arrays together by stacking them along new axes or concatenating them along existing ones.
  • Array Collapsing - Collapses multidimensional arrays into one-dimensional sequences while preserving element order.
  • Array Reshaping - Changes the dimensions of an array while preserving elements and specifying memory layout order.
  • Array Splitting - Divides single arrays into multiple smaller views along a specified axis.
  • Dimensional Reductions - Reduces arrays by computing sums and other aggregations along specified dimensions.
  • BLAS and LAPACK Integrations - Provides interfaces to optimized BLAS libraries for high-performance linear algebra and matrix multiplication.
  • Coordinate Grid Generation - Builds regular grids of values to evaluate functions over a specific coordinate space.
  • Numerical Computation Accelerations - Accelerates mathematical processing by distributing array operations across multiple CPU threads.
  • Parallel Array Processors - Distributes heavy mathematical iterations and array methods across multiple CPU threads to accelerate performance.
  • Scientific Computing Libraries - N-dimensional array library for Rust.

Star-Verlauf

Star-Verlauf für rust-ndarray/ndarrayStar-Verlauf für rust-ndarray/ndarray

KI-Suche

Entdecke weitere awesome Repositories

Beschreibe in einfachen Worten, was du brauchst — die KI bewertet tausende kuratierte Open-Source-Projekte nach Relevanz.

Start searching with AI

Frequently asked questions

What does rust-ndarray/ndarray do?

ndarray ist eine Bibliothek für mehrdimensionale Arrays für Rust, die als Framework für lineare Algebra und wissenschaftliches Rechnen dient. Sie bietet die Kerninfrastruktur für die Erstellung und Manipulation von n-dimensionalen Arrays und fungiert sowohl als paralleler Array-Prozessor als auch als Toolkit für numerische Datenanalysen.

What are the main features of rust-ndarray/ndarray?

The main features of rust-ndarray/ndarray are: Multidimensional Arrays, Array View Creation, Strided, Zero-Copy Array Views, Tensor Slicing and Indexing, Numeric Type Traits, Array Layout Management, Array Slicing.

What are some open-source alternatives to rust-ndarray/ndarray?

Open-source alternatives to rust-ndarray/ndarray include: xtensor-stack/xtensor — xtensor is a C++ multidimensional array library for numerical computing that provides N-dimensional containers with an… dpilger26/numcpp — NumCpp is a C++ framework and numerical computing library that provides a toolkit for multi-dimensional array… numpy/numpy — NumPy is a foundational library for scientific computing in Python, providing a comprehensive framework for managing… lyhue1991/eat_tensorflow2_in_30_days — This project is a structured learning curriculum and technical reference for mastering deep learning with TensorFlow.… arrayfire/arrayfire — ArrayFire is a hardware-agnostic compute framework and JIT-compiled tensor engine designed for high-performance… torch/torch7 — Torch7 is a scientific computing environment and tensor computation library used for deep learning research and…

Open-Source-Alternativen zu Ndarray

Ähnliche Open-Source-Projekte, sortiert nach der Anzahl der gemeinsamen Funktionen mit Ndarray.
  • xtensor-stack/xtensorAvatar von xtensor-stack

    xtensor-stack/xtensor

    3,748Auf GitHub ansehen↗

    xtensor is a C++ multidimensional array library for numerical computing that provides N-dimensional containers with an interface mirroring the NumPy API. It utilizes a lazy evaluation expression engine to defer numerical computations until assignment, which minimizes memory allocations and intermediate copies. The library features a foreign memory array adaptor that allows it to wrap external buffers, such as NumPy arrays, to perform numerical operations in-place without duplicating data. It further optimizes performance through lazy broadcasting and a system that manages the lifetime of temp

    C++c-plus-plus-14multidimensional-arraysnumpy
    Auf GitHub ansehen↗3,748
  • dpilger26/numcppAvatar von dpilger26

    dpilger26/NumCpp

    3,963Auf GitHub ansehen↗

    NumCpp is a C++ framework and numerical computing library that provides a toolkit for multi-dimensional array management and mathematical routines. It functions as a C++ implementation of the NumPy ecosystem, offering a scientific computing framework for managing tensors and performing complex algebraic equations. The project enables high-performance array manipulation within a C++ environment without relying on a Python runtime. It distinguishes itself by providing a NumPy-like interface for executing linear algebra, managing multi-dimensional data structures, and performing numerical proces

    C++
    Auf GitHub ansehen↗3,963
  • numpy/numpyAvatar von numpy

    numpy/numpy

    32,207Auf GitHub ansehen↗

    NumPy is a foundational library for scientific computing in Python, providing a comprehensive framework for managing and manipulating large-scale numerical information. It centers on high-performance multidimensional array objects that serve as the primary data structure for complex mathematical operations and data analysis workflows. The library distinguishes itself through specialized mechanisms for handling multidimensional data, including advanced indexing, slicing, and broadcasting techniques that allow for efficient operations across arrays of varying shapes. It utilizes strided metadat

    Pythonnumpypython
    Auf GitHub ansehen↗32,207
  • lyhue1991/eat_tensorflow2_in_30_daysAvatar von lyhue1991

    lyhue1991/eat_tensorflow2_in_30_days

    9,933Auf GitHub ansehen↗

    This project is a structured learning curriculum and technical reference for mastering deep learning with TensorFlow. It provides a comprehensive guide for building, training, and deploying neural networks, combining theoretical fundamentals with practical implementation examples. The repository distinguishes itself by covering the end-to-end machine learning workflow, from low-level tensor mathematics and linear algebra to the creation of complex model architectures. It includes specific guidance on developing data pipelines for diverse data types, such as images, text, and time-series seque

    Pythontensorflowtensorflow-examplestensorflow-tutorial
    Auf GitHub ansehen↗9,933
  • Alle 30 Alternativen zu Ndarray anzeigen→