tilelang.carver.template.gemv¶

Classes¶

GEMVTemplate

A template for Generalized Matrix-Vector Multiplication (GEMV).

Module Contents¶

class tilelang.carver.template.gemv.GEMVTemplate¶

Bases: tilelang.carver.template.base.BaseTemplate

A template for Generalized Matrix-Vector Multiplication (GEMV).

This template defines the computation for a matrix-vector multiplication with configurable parameters such as transposition, data types, and bias addition.

N: int = None¶
K: int = None¶
trans_B: bool = True¶
in_dtype: str = 'float16'¶
out_dtype: str = 'float16'¶
accum_dtype: str = 'float16'¶
with_bias: bool = False¶
get_hardware_aware_configs(arch=None, topk=10)¶

Retrieves optimized hardware-aware configurations.

Parameters:
  • arch (TileDevice, optional) – The target hardware architecture.

  • topk (int, optional) – Number of top configurations to consider.

Returns:

A list of optimization hints for hardware acceleration.

Return type:

List[Hint]

initialize_function()¶

Defines and initializes the GEMV computation function.

This method sets up placeholders for input matrices, computes the matrix-vector multiplication using TVM’s compute API, and optionally applies bias and type casting.

Return type:

None

params_as_dict()¶

Returns the template parameters as a dictionary.

Returns:

Dictionary containing template parameter values.

Return type:

dict

property class_attributes¶

Returns the class attributes in dictionary form.

Returns:

Dictionary of class attributes.

Return type:

dict

__repr__()¶

Returns a string representation of the class instance.

Returns:

A formatted string representation of the class.

Return type:

str