Introduction (original) (raw)

00Introduction

01 Getting started with Funcs, Vars, and Exprs

02 Processing images

03 Inspecting the generated code

04 Debugging with tracing, print, and print_when

05 Vectorize, parallelize, unroll and tile your code

06 Realizing Funcs over arbitrary domains

07 Multi-stage pipelines

08 Scheduling multi-stage pipelines

09 Multi-pass Funcs, update definitions, and reductions

10 AOT compilation part 1

10 AOT compilation part 2

11 Cross-compilation

12 Using the GPU

13 Tuples

14 The Halide type system

15 Generators part 1

15 Generators part 2

16 RGB images and memory layouts part 1

16 RGB images and memory layouts part 2

17 Reductions over non-rectangular domains

18 Factoring an associative reduction using rfactor

19 Wrapper Funcs

20 Cloning Funcs

21 Auto-Scheduler

21 Auto-Scheduler

Halide releases come with a set of tutorials in the form of commented source code. We recommend you learn Halide by reading, compiling, and running them, and by making your own modifications to them. Get your hands dirty! The tutorials can also be browsed here, using the links on the right. In their online form they contain figures and output snippets. For questions or comments, email halide-dev@lists.csail.mit.edu.