awesome-repositories.com
Blog
awesome-repositories.com

Descoperă cele mai bune repository-uri open source cu căutare AI.

ExploreazăCăutări recomandateAlternative open-sourceSoftware self-hostedBlogHartă site
ProiectDespreCum realizăm clasamentulPresăServer MCP
LegalConfidențialitateTermeni
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
arrayfire avatar

arrayfire/arrayfire

0
View on GitHub↗
4,888 stele·552 fork-uri·C++·BSD-3-Clause·8 vizualizăriarrayfire.com↗

Arrayfire

ArrayFire este un framework de calcul hardware-agnostic și un motor de tensori compilat JIT, conceput pentru calcul numeric de înaltă performanță. Acesta servește ca bibliotecă de calcul numeric GPU și toolkit de procesare paralelă a semnalelor care abstractizează backend-urile hardware, permițând aceluiași cod să ruleze pe diverse arhitecturi GPU și CPU.

Proiectul se distinge printr-un motor JIT care utilizează compilarea expresiilor pentru a fuziona operațiunile și a minimiza consumul de memorie. Acesta folosește un graf de execuție amânată pentru a optimiza lanțurile de calcul și oferă primitive de interoperabilitate pentru a partaja date și contexte de execuție cu platforme de calcul externe precum CUDA și OpenCL.

Biblioteca acoperă o gamă largă de capabilități, inclusiv algebră liniară paralelă, procesarea digitală a semnalelor și viziune computerizată accelerată. Oferă instrumente pentru implementarea învățării automate, simularea modelării financiare și rezolvarea ecuațiilor diferențiale parțiale pentru simulări de sisteme fizice. Sistemul său de gestionare a tensorilor se ocupă de alocarea array-urilor multidimensionale, felierea (slicing) și transferurile de date gazdă-dispozitiv.

Features

  • Compute Backend Abstractions - Provides a hardware-agnostic abstraction layer that maps a single API to CUDA, OpenCL, and CPU backends at runtime.
  • GPU-Accelerated Computation - Provides a comprehensive framework for offloading general numerical and mathematical operations to GPU hardware for high-performance processing.
  • Array Type Casting - Converts numerical arrays between different data types to optimize processing performance.
  • Hardware Abstraction Layers - Includes a hardware abstraction layer that routes tensor operations to available CPU or GPU backends automatically.
  • Hardware Acceleration Kernels - Executes optimized computational kernels across different hardware backends to accelerate intensive mathematical operations.
  • Hardware-Agnostic Accelerators - Implements a hardware-agnostic framework that compiles compute graphs to run efficiently across diverse GPU and CPU backends.
  • Numerical Computing Libraries - Serves as a high-performance numerical computing library for vectorized tensor operations and linear algebra.
  • Tensor Indexing - Selects specific elements, rows, or columns of tensors using scalars, sequences, and slicing.
  • Operation Fusion Optimizations - Merges multiple mathematical operations into single kernels to reduce memory overhead and improve throughput.
  • Advanced Array Indexing - Retrieves tensor elements using coordinate arrays via Cartesian product expansion or direct mapping.
  • Host-to-Device Data Transfers - Copies tensor data between device memory and the host for CPU-side access.
  • Tensor Slicing - Extracts specific rows, columns, or subarrays using sequences, spans, and strides.
  • Hardware-Threaded Loop Distribution - Distributes high-level loop iterations across physical hardware threads to maximize GPU and CPU throughput.
  • Boolean Masking - Selects array elements that satisfy specific boolean conditions using masking techniques.
  • GPU Interoperability Primitives - Provides primitives to share data and execution contexts between CUDA and OpenCL applications.
  • Device-Specific Memory Allocators - Allocates multi-dimensional arrays directly on hardware accelerators using various numerical types.
  • Device Buffer Managers - Coordinates the allocation and synchronization of multi-dimensional array buffers between host and accelerator memory.
  • General JIT Compilers - Uses a just-in-time compiler to generate optimized machine code for complex numerical kernels at runtime.
  • Tensor Expression Compilers - Uses a JIT engine to compile mathematical expressions and fuse operations to minimize memory overhead.
  • Reshaping - Rearranges the shape and dimensions of arrays without modifying the underlying data.
  • Kernel Fusion Operations - Combines multiple mathematical operations into single compute kernels to minimize global memory access.
  • Array Data Copying - Implements deep copying of arrays and writing data from pointers into existing tensors.
  • Array Population - Populates tensors with constants, random distributions, or data copied from memory pointers.
  • Array Transpositions - Provides operations to generate transposed or conjugate-transpose versions of multi-dimensional arrays.
  • Digital Signal Processing Libraries - Provides a toolkit for parallel digital signal processing, including fast Fourier transforms and convolutions on multi-dimensional data.
  • Signal Convolutions - Implements multi-dimensional convolutions for processing signals and images by applying computational kernels.
  • Fourier Transforms - Provides high-performance forward and inverse fast Fourier transforms to convert signals between time and frequency domains.
  • Element-wise Array Operations - Performs high-performance element-wise array operations across multi-dimensional tensors.
  • Generalized Matrix Multiplications - Provides high-performance generalized matrix multiplications for neural network layers and linear transformations.
  • Vectorized Array Operations - Executes arithmetic and logical functions across entire arrays in parallel to optimize performance.
  • Just-In-Time Numerical Compilation - Translates high-level mathematical expressions into optimized machine code during execution to maximize performance.
  • Linear Algebra Libraries - Implements high-performance parallel linear algebra libraries for matrix operations and solving complex systems of equations.
  • Multi-Dimensional Arrays - Creates containers of specified dimensions and data types using host or device pointers.
  • Numerical Array Operations - Performs high-performance mathematical calculations, indexing, and reshaping on multi-dimensional arrays using vectorized operations.
  • Signal Filtering Pipelines - Processes data using finite and infinite impulse response filters to remove noise from signals.
  • Deferred Execution Graphs - Implements a deferred execution graph to optimize computation chains before triggering final array operations.
  • Framework Interoperability Layers - Ships interoperability primitives to share data and execution contexts between the engine and external compute libraries like CUDA and OpenCL.
  • GPU Accelerated Computer Vision - Analyzes and transforms digital images through GPU-accelerated feature detection and color space conversion.
  • Machine Learning Implementations - Provides the computational primitives necessary to implement and train core machine learning algorithms and neural networks.
  • Hardware-Accelerated - Combines with other hardware-accelerated codebases to extend functionality within larger applications.
  • Batch Processing - Implements utilities for performing bulk data operations efficiently by parallelizing across a batch dimension.
  • Vectorized Data Processing - Executes operations across N-dimensional arrays by tiling data and parallelizing loop iterations on hardware.
  • Mobile and Embedded Accelerator Execution - Runs parallel computations on specialized embedded devices and mobile accelerators.
  • Execution Optimizations - Implements runtime optimizations to increase memory throughput and minimize temporary allocations during execution.
  • Expression Evaluators - Provides an expression evaluator that processes mathematical and logical expressions via JIT compilation.
  • Array Reductions - Computes single scalar values from arrays through reduction operations like sum and maximum.
  • Data Interpolation - Estimates unknown values between known data points using one-dimensional and two-dimensional mathematical interpolation.
  • Linear System Solvers - Implements direct linear solvers and routines for solving systems of linear equations and least squares problems.
  • Matrix Decompositions - Performs mathematical matrix decompositions such as LU, QR, and Cholesky to simplify linear algebra problems.
  • Sparse Matrix Storage - Provides memory-efficient sparse matrix storage and management for handling large datasets with many zero elements.
  • Prefix Scan Operations - Implements prefix scan operations to produce arrays of cumulative results.
  • Procesare paralelă - Bibliotecă de calcul GPU de uz general.
  • Concurrency and Parallelism - General purpose GPU computing library.
  • Parallel and High-Performance Computing - General-purpose GPU computing library.

Istoric stele

Graficul istoricului de stele pentru arrayfire/arrayfireGraficul istoricului de stele pentru arrayfire/arrayfire

Căutare AI

Explorează mai multe repository-uri excelente

Descrie ce ai nevoie în limbaj simplu — AI-ul sortează mii de proiecte open source selectate în funcție de relevanță.

Start searching with AI

Alternative open-source pentru Arrayfire

Proiecte open-source similare, clasificate după numărul de funcționalități comune cu Arrayfire.
  • xtensor-stack/xtensorAvatar xtensor-stack

    xtensor-stack/xtensor

    3,748Vezi pe 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
    Vezi pe GitHub↗3,748
  • iamseancheney/python_for_data_analysis_2nd_chinese_versionAvatar iamseancheney

    iamseancheney/python_for_data_analysis_2nd_chinese_version

    8,937Vezi pe GitHub↗

    This project is an educational resource and a collection of instructional materials for performing data manipulation and statistical analysis using Python. It provides a comprehensive set of guides and code examples for using the Pandas, NumPy, and Matplotlib libraries to analyze structured data. The resource includes a dedicated guide for reshaping, cleaning, and aggregating tabular data and time series via Pandas, alongside a reference for high-performance vectorized operations and linear algebra using NumPy. It also features tutorials for creating publication-quality charts, distribution p

    matplotlibnumpypandas
    Vezi pe GitHub↗8,937
  • torch/torch7Avatar torch

    torch/torch7

    9,127Vezi pe GitHub↗

    Torch7 is a scientific computing environment and tensor computation library used for deep learning research and numerical analysis. It functions as a Lua-based framework for training neural networks and learning agents, providing a toolkit for implementing architectures and training through reinforcement learning algorithms. The project is distinguished by its tight integration with C, utilizing a binding layer to map high-level scripting to low-level C structures for direct memory access. It supports hardware-accelerated computation by offloading linear algebra and convolution operations to

    C
    Vezi pe GitHub↗9,127
  • rust-ndarray/ndarrayAvatar rust-ndarray

    rust-ndarray/ndarray

    4,290Vezi pe GitHub↗

    ndarray is a multidimensional array library for Rust that serves as a linear algebra framework and scientific computing tool. It provides the core infrastructure for creating and manipulating n-dimensional arrays, functioning as both a parallel array processor and a toolkit for numerical data analysis. The library distinguishes itself by providing efficient slicing and memory views, allowing for data sharing without copying. It leverages optimized backend math libraries for high-speed matrix multiplication and distributes heavy mathematical iterations across multiple CPU threads to accelerate

    Rust
    Vezi pe GitHub↗4,290
Vezi toate cele 30 alternative pentru Arrayfire→

Întrebări frecvente

Ce face arrayfire/arrayfire?

ArrayFire este un framework de calcul hardware-agnostic și un motor de tensori compilat JIT, conceput pentru calcul numeric de înaltă performanță. Acesta servește ca bibliotecă de calcul numeric GPU și toolkit de procesare paralelă a semnalelor care abstractizează backend-urile hardware, permițând aceluiași cod să ruleze pe diverse arhitecturi GPU și CPU.

Care sunt principalele funcționalități ale arrayfire/arrayfire?

Principalele funcționalități ale arrayfire/arrayfire sunt: Compute Backend Abstractions, GPU-Accelerated Computation, Array Type Casting, Hardware Abstraction Layers, Hardware Acceleration Kernels, Hardware-Agnostic Accelerators, Numerical Computing Libraries, Tensor Indexing.

Care sunt câteva alternative open-source pentru arrayfire/arrayfire?

Alternativele open-source pentru arrayfire/arrayfire includ: xtensor-stack/xtensor — xtensor is a C++ multidimensional array library for numerical computing that provides N-dimensional containers with an… iamseancheney/python_for_data_analysis_2nd_chinese_version — This project is an educational resource and a collection of instructional materials for performing data manipulation… torch/torch7 — Torch7 is a scientific computing environment and tensor computation library used for deep learning research and… rust-ndarray/ndarray — ndarray is a multidimensional array library for Rust that serves as a linear algebra framework and scientific… morvanzhou/tutorials — This repository is a comprehensive collection of instructional guides and practical examples for Python development,… mrdbourke/zero-to-mastery-ml — This project is a machine learning educational curriculum and learning platform delivered through interactive Jupyter…