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

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

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

halide/Halide

0
View on GitHub↗
6,572 星标·1,093 分支·C++·other·3 次浏览halide-lang.org↗

Halide

Features

  • High-Performance Image - Provides a C++ DSL for writing image processing algorithms that separate algorithm from schedule.
  • Schedule Optimization via Learned Cost Models - Ships an automatic scheduler that uses a learned cost model and beam search to optimize pipeline performance.
  • Pipeline - Offloads pipeline stages to GPU compute APIs such as CUDA, Metal, or DirectX 12.
  • Heterogeneous Hardware Pipeline Compilation - Compiles pipelines to run on CPUs, GPUs, or accelerators without algorithm changes.
  • Multi-Backend Compilers - Compiles the same pipeline to run on CPUs and GPUs without changing the algorithm.
  • Image Pipeline Auto-Schedulers - Uses built-in heuristics to automatically choose performant schedules for image processing pipelines.
  • Image Processing Pipeline Schedulers - Provides explicit scheduling directives to control loop mapping, parallelism, and memory layout for image processing pipelines.
  • Pipeline Schedulers - Uses a learned cost model and beam search to automatically find high-performance schedules.
  • Non-Planar Layout Handlers - Provides native handling of interleaved, planar, and custom memory layouts without data copying.
  • Cross-Architecture Binary Compilation - Produces code for CPU or GPU architectures different from the host machine.
  • Cross-Compilation Tooling - Generates machine code for CPU or GPU architectures different from the host build system.
  • Pipeline Static Compilers - Generates standalone object files and headers from pipelines for deployment in larger applications.
  • Cross-Architecture Pipeline Code Generation - Compiles the same pipeline to run on different CPU and GPU architectures without algorithm changes.
  • Image Processing Stage Chains - Chains multiple image processing functions into sequential stages where each output feeds the next.
  • Image Processing - Controls computation order, parallelism, vectorization, and memory layout of image processing pipeline stages.
  • High-Performance Image Pipelines - Expresses image processing algorithms in a concise C++ DSL and compiles them to efficient machine code.
  • Learned Cost Model Schedulers - Finds high-performance schedules using a learned cost model and beam search without manual tuning.
  • Image Processing Pipelines - Declares image processing pipelines as directed acyclic graphs of functions, variables, and expressions.
  • In-Memory Image Buffers - Stores and manipulates multi-dimensional pixel data with typed containers integrated with pipelines.
  • Pipeline GPU Execution - Offloads pipeline stages to GPU compute APIs such as CUDA, Metal, or DirectX 12.
  • Pipeline GPU Compilers - Compiles and runs pipeline stages on a GPU using the appropriate compute API.
  • Ahead-Of-Time Compilation - Generates standalone object files or shared libraries from pipelines for use in external programs.
  • Ahead-Of-Time Compilers - Compiles pipelines into standalone object files or static libraries for deployment.
  • Image Processing DSLs - Provides an embedded C++ DSL for defining image processing pipelines as directed acyclic graphs.
  • JIT Compilation Engines - Compiles pipelines into machine code at runtime for fast iteration and debugging.
  • Image Processing Loop Transformations - Applies SIMD vectorization, multi-core parallelization, loop unrolling, and tiling to accelerate image processing pipelines.
  • Cross-Architecture Code Generators - Compiles the same pipeline to run on CPUs and GPUs without algorithm changes.
  • Multi-Stage Image Pipeline Compilation - Compiles multi-stage image processing pipelines as directed acyclic graphs into efficient machine code.
  • Image Pipeline - Compiles image processing pipelines to optimized code for x86, ARM, CUDA, OpenCL, and Metal.
  • Image Processing Performance Schedulers - Applies vectorization, parallelization, tiling, and unrolling strategies to optimize image processing pipeline execution.
  • Scheduling Algorithms - Decouples computation from execution to enable independent optimization of memory, parallelism, and vectorization.
  • Compile-Time Code Generation - Generates optimized machine code for CPUs and GPUs at compile time from a high-level DSL description.
  • Image Processing - Controls how image processing pipeline stages are vectorized, parallelized, unrolled, or tiled for target optimization.
  • Algorithm-Schedule Decoupling - Provides the core architectural principle of separating algorithm from schedule for independent optimization.
  • Algorithm-Schedule Separation - Separates algorithm logic from execution scheduling for independent optimization of each.
  • Runtime-Measured Schedule Optimizers - Refines schedules by measuring actual runtime on target hardware and iterating toward faster configurations.
  • Pipeline Data Type Control - Controls data types and bit widths for variables, expressions, and buffers in pipelines.
  • Pipeline Debugging and Profiling - Inspects generated code, traces intermediate values, and prints debug output during pipeline execution.
  • Pipeline Tracing - Traces intermediate values and prints variable contents to inspect pipeline behavior step by step.
  • Pipeline Value Tracing - Inserts trace statements and print calls into pipelines to inspect intermediate values during execution.
  • Pipeline Print-Based Debugging - Inserts tracing and print statements into pipelines to inspect intermediate values during execution.
  • Arbitrary Domain Evaluators - Evaluates pipelines over non-rectangular or user-defined sets of coordinates.
  • Domain Scatter Operations - Applies computations repeatedly over multi-dimensional ranges, supporting reductions and scattering.
  • Domain-Specific Reductions - Creates reduction operations that update function values over arbitrary or non-rectangular domains.
  • Iterative Update Reductions - Expresses iterative or reduction operations that modify function values over multiple passes.
  • Non-Rectangular Domain Reductions - Applies reduction operations over domains defined by arbitrary predicates, not just rectangles.
  • Tuple Output Compilation - Compiles functions that return multiple distinct outputs in a single pass without intermediate storage.
  • JIT Pipeline Compilation - Provides JIT compilation of pipelines for rapid prototyping and testing from C++.
  • Multiple Return Values - Defines functions that produce tuples of several distinct outputs in a single pass.
  • Multi-Domain Reductions - Defines iterative or reduction operations over arbitrary or non-rectangular domains.
  • Associative Reduction Factoring - Splits associative reductions into independent partial results that can be computed in parallel and combined.
  • Function Duplicators - Duplicates function definitions so the two copies can be scheduled independently.
  • Higher-Order Function Wrapping - Creates wrapper functions that transform or filter outputs of existing functions without modifying them.
  • Pipeline Generators - Wraps pipelines into reusable, parameterized generators for external compilation and invocation.
  • Pipeline Parameterization - Declares runtime-configurable scalar and image inputs that can be changed without recompilation.
  • C Geospatial Libraries - Language for high-performance image processing code.
  • Low Level Geospatial Libraries - Optimizes high-performance image processing code.

Star 历史

halide/halide 的 Star 历史图表halide/halide 的 Star 历史图表

AI 搜索

探索更多 awesome 仓库

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

Start searching with AI

常见问题解答

halide/halide 的主要功能有哪些?

halide/halide 的主要功能包括:High-Performance Image, Schedule Optimization via Learned Cost Models, Pipeline, Heterogeneous Hardware Pipeline Compilation, Multi-Backend Compilers, Image Pipeline Auto-Schedulers, Image Processing Pipeline Schedulers, Pipeline Schedulers。

halide/halide 有哪些开源替代品?

halide/halide 的开源替代品包括: libvips/libvips — Libvips is a C-based image processing library designed to manipulate large visual assets through a low-memory,… iree-org/iree — IREE is an MLIR-based compiler toolchain and runtime designed to translate machine learning models from various… rust-lang/rustup — rustup is a programming language toolchain manager that automates the installation, versioning, and configuration of… aosp-mirror/platform_frameworks_base — This project provides the core framework and system API layer for the Android operating system. It consists of the… facebook/hermes — Hermes is a mobile-optimized JavaScript runtime and engine designed for React Native. It functions as an ahead-of-time… janko/image_processing — This project is a modular image manipulation framework and processing pipeline library designed for Ruby applications.…

Halide 的开源替代方案

相似的开源项目,按与 Halide 的功能重合度排序。
  • libvips/libvipslibvips 的头像

    libvips/libvips

    11,085在 GitHub 上查看↗

    Libvips is a C-based image processing library designed to manipulate large visual assets through a low-memory, parallel processing pipeline. It functions as a streaming image processor that avoids loading entire files into system memory, enabling the handling of massive images in resource-constrained environments. The library distinguishes itself through a demand-driven architecture that constructs a deferred execution plan, computing only the necessary pixels for a final output. By utilizing a cache-friendly tiled processing model and memory-mapped file access, it minimizes latency and redun

    Cccppgif
    在 GitHub 上查看↗11,085
  • iree-org/ireeiree-org 的头像

    iree-org/iree

    3,819在 GitHub 上查看↗

    IREE is an MLIR-based compiler toolchain and runtime designed to translate machine learning models from various frameworks into optimized binaries for execution across diverse hardware targets. It provides a unified pipeline to ingest models from PyTorch, TensorFlow, JAX, and ONNX, lowering them into a common intermediate representation for deployment on CPUs, GPUs, and bare-metal embedded systems. The project distinguishes itself through a bytecode virtual machine and a hardware abstraction layer that decouple high-level model logic from specific hardware instruction sets. It supports sophis

    C++compilercudajax
    在 GitHub 上查看↗3,819
  • rust-lang/rustuprust-lang 的头像

    rust-lang/rustup

    6,940在 GitHub 上查看↗

    rustup is a programming language toolchain manager that automates the installation, versioning, and configuration of the Rust compiler and its associated build tools. It serves as a toolchain installer and version manager, enabling the deployment of the language ecosystem across different operating systems. The system manages multiple compiler versions across stable, beta, and nightly release channels, allowing users to switch between these versions to meet different environment requirements. It also functions as a cross-compilation manager by installing pre-compiled standard libraries to bui

    Rust
    在 GitHub 上查看↗6,940
  • aosp-mirror/platform_frameworks_baseaosp-mirror 的头像

    aosp-mirror/platform_frameworks_base

    10,812在 GitHub 上查看↗

    This project provides the core framework and system API layer for the Android operating system. It consists of the fundamental Java and C++ libraries that define system behavior and establish the interface contracts required for system applications and hardware abstraction. The project includes a runtime optimizer used to reduce startup time and improve execution speed by pre-compiling methods and configuring boot images. It also features a software quality toolchain that enforces code formatting, audits commit metadata, and manages API compatibility to ensure stable interface contracts acros

    Java
    在 GitHub 上查看↗10,812
  • 查看 Halide 的所有 30 个替代方案→