Revision 4c63f1befa1063184c5982b11b6a2cc17d4e5815 authored by Steven Johnson on 06 April 2023, 23:34:59 UTC, committed by GitHub on 06 April 2023, 23:34:59 UTC
The Halide 15.0.0 release inadvertently omitted all of these tools from the packaging. They are being re-added for 15.0.1. While we're doing this, let's go ahead and have the names match those proposed for Halide 16.
1 parent 3172169
Raw File
todo.txt
High priority:
- the device memory model (dirty flags, copy behavior)
- extern functions and extern stages, including scheduling their loops, extern sources and sinks. Also include bounds proxy exprs when exposed in the front-end.
- multi-output pipelines
- overriding the runtime
- cmake (JIT and AOT)

Nice to have:
- debug_to_file
- the bounds query interface
- lambdas
  useful tricks, e.g., `Buffer<float> image_buf = lambda(x, y, (sin(x+y)+1)/2).realize(10 * tile_size, 10 * tile_size);`
- common scheduling patterns
- scheduling rvars
- tail strategies
- wrapping existing memory in a Halide::Buffer
- scatter/gather intrinsics 
- prefetch
- compute_with
- RDom::where, including the pattern where we use r.x == 0, r.x == 1, r.x == 2 in the algorithm or where clause... then explicitly unrolling r.x to get an inner loop to do a sequence of things
- the debugging loop (point to existing video?)
- autodiff
- using "require" to add runtime checks
- common parallel algorithms (e.g. parallel sum-scan, parallel reductions using atomic vectorize, atomic scatters)
- passing complex parameters into Halide, including single structs, arrays of structs.
back to top