awesome-repositories.com
博客
awesome-repositories.com

通过 AI 驱动的搜索,发现最优秀的开源仓库。

探索精选搜索开源替代品自托管软件博客网站地图
项目关于排名机制媒体报道MCP 服务器
法律隐私政策服务条款
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
rust-ndarray avatar

rust-ndarray/ndarray

0
View on GitHub↗
4,290 星标·379 分支·Rust·Apache-2.0·8 次浏览docs.rs/ndarray↗

Ndarray

ndarray 是一个 Rust 的多维数组库,用作线性代数框架和科学计算工具。它提供了创建和操作 n 维数组的核心基础设施,既充当并行数组处理器,也充当数值数据分析工具包。

该库的独特之处在于提供高效的切片和内存视图,允许在不复制的情况下共享数据。它利用优化的后端数学库进行高速矩阵乘法,并将繁重的数学迭代分布到多个 CPU 线程上以加速处理。

该项目涵盖了广泛的数学运算,包括逐元素算术、基于轴的数据聚合和点积计算。它还包括用于数组操作的全面实用程序,如重塑、展平、堆叠和坐标网格生成,以及对随机数组生成和序列化的支持。

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 历史

rust-ndarray/ndarray 的 Star 历史图表rust-ndarray/ndarray 的 Star 历史图表

AI 搜索

探索更多 awesome 仓库

用简单的语言描述您的需求 —— AI 将根据相关性为您从数千个精选开源项目中进行排序。

Start searching with AI

常见问题解答

rust-ndarray/ndarray 是做什么的?

ndarray 是一个 Rust 的多维数组库,用作线性代数框架和科学计算工具。它提供了创建和操作 n 维数组的核心基础设施,既充当并行数组处理器,也充当数值数据分析工具包。

rust-ndarray/ndarray 的主要功能有哪些?

rust-ndarray/ndarray 的主要功能包括:Multidimensional Arrays, Array View Creation, Strided, Zero-Copy Array Views, Tensor Slicing and Indexing, Numeric Type Traits, Array Layout Management, Array Slicing。

rust-ndarray/ndarray 有哪些开源替代品?

rust-ndarray/ndarray 的开源替代品包括: 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…

Ndarray 的开源替代方案

相似的开源项目,按与 Ndarray 的功能重合度排序。
  • xtensor-stack/xtensorxtensor-stack 的头像

    xtensor-stack/xtensor

    3,748在 GitHub 上查看↗

    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
    在 GitHub 上查看↗3,748
  • dpilger26/numcppdpilger26 的头像

    dpilger26/NumCpp

    3,963在 GitHub 上查看↗

    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++
    在 GitHub 上查看↗3,963
  • numpy/numpynumpy 的头像

    numpy/numpy

    32,207在 GitHub 上查看↗

    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
    在 GitHub 上查看↗32,207
  • lyhue1991/eat_tensorflow2_in_30_dayslyhue1991 的头像

    lyhue1991/eat_tensorflow2_in_30_days

    9,933在 GitHub 上查看↗

    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
    在 GitHub 上查看↗9,933
  • 查看 Ndarray 的所有 30 个替代方案→