API Reference
Complete API documentation for Helion.
Kernel Creation and Control
Everything you need to create and configure Helion kernels using the helion.kernel()
decorator:
Language Constructs
The helion.language
module contains DSL constructs for authoring kernels:
Debugging and Utilities
- Exceptions
- Overview
- Exception Hierarchy
- Kernel Context Errors
- Loop and Control Flow Errors
- Tile and Indexing Errors
- Assignment and Variable Errors
- Type and Inference Errors
- Configuration Errors
- Tunable Parameter Errors
- Language and Syntax Errors
- Grid and Execution Errors
- Compilation and Runtime Errors
- Warning Classes
- See Also
Advanced Topics
Quick Reference
Main Functions
Decorator to create a Kernel object from a Python function. |
|
Settings can be passed to hl.kernel as kwargs and control the behavior of the compilation process. |
Language Functions
Break up an iteration space defined by a size or sequence of sizes into tiles. |
|
Iterate over individual indices of the given iteration space. |
|
Load a value from a tensor using a list of indices. |
|
Store a value to a tensor using a list of indices. |
|
Atomically add a value to a target tensor. |
|
Return a device-tensor filled with zeros. |
|
Create a device-tensor filled with a specified value. |
|
Same as torch.arange(), but defaults to same device as the current kernel. |
|
Applies a reduction operation along a specified dimension or all dimensions. |
|
Applies an associative scan operation along a specified dimension. |
|
Explicitly register a block size that should be autotuned and can be used for allocations and inside hl.tile(..., block_size=...). |
|
Explicitly register a reduction dimension that should be used for reduction operations. |
|
Register a tunable parameter for autotuning. |
|
alias of |
|
Turn a dynamic shape into a compile-time constant. |