Skip to content

Latest commit

 

History

History
99 lines (53 loc) · 4.09 KB

File metadata and controls

99 lines (53 loc) · 4.09 KB
graph LR
    JIT_Compiler["JIT Compiler"]
    Scheduler["Scheduler"]
    Kernel_Optimizer["Kernel Optimizer"]
    Graph_Linearizer["Graph Linearizer"]
    LLVM_IR_Renderer["LLVM IR Renderer"]
    C_Style_Renderer["C-Style Renderer"]
    PTX_Renderer["PTX Renderer"]
    WGSL_Renderer["WGSL Renderer"]
    JIT_Compiler -- "passes computation graph to" --> Scheduler
    Kernel_Optimizer -- "feeds optimized graph to" --> Graph_Linearizer
    Graph_Linearizer -- "dispatches UOps to" --> LLVM_IR_Renderer
    Graph_Linearizer -- "dispatches UOps to" --> C_Style_Renderer
    Graph_Linearizer -- "dispatches UOps to" --> PTX_Renderer
    Graph_Linearizer -- "dispatches UOps to" --> WGSL_Renderer
Loading

CodeBoardingDemoContact

Details

The Graph Compiler & Optimizer subsystem is the core compilation pipeline responsible for transforming, optimizing, and generating low-level code from the Computation Graph. This includes graph optimization passes, scheduling, linearization, and device-specific code generation, along with the JIT system for runtime optimization.

JIT Compiler

Manages Just-In-Time compilation, capturing computation graphs, handling symbolic dimensions, and initiating the compilation and execution process.

Related Classes/Methods:

Scheduler

Creates an ordered sequence of operations (a schedule) from the computation graph, optimizing the execution flow.

Related Classes/Methods:

Kernel Optimizer

Applies various graph optimization passes (e.g., dimension simplification, merging, tensor core optimizations) to improve kernel performance.

Related Classes/Methods:

Graph Linearizer

Transforms the optimized computation graph into a linear sequence of micro-operations (UOps), serving as a crucial intermediate representation for code generation.

Related Classes/Methods:

LLVM IR Renderer

Generates LLVM Intermediate Representation (IR) code from linearized UOps for LLVM-compatible targets.

Related Classes/Methods:

C-Style Renderer

Generates C-style source code from linearized UOps for C-compatible targets.

Related Classes/Methods:

PTX Renderer

Generates PTX (Parallel Thread Execution) assembly code from linearized UOps for NVIDIA GPUs.

Related Classes/Methods:

WGSL Renderer

Generates WGSL (WebGPU Shading Language) code from linearized UOps for WebGPU targets.

Related Classes/Methods: