ttnn.unary_chain
- ttnn.unary_chain = Operation(python_fully_qualified_name='ttnn.unary_chain', function=<ttnn._ttnn.operations.unary.unary_chain_t object>, preprocess_golden_function_inputs=<function default_preprocess_golden_function_inputs>, golden_function=None, postprocess_golden_function_outputs=<function default_postprocess_golden_function_outputs>, is_cpp_operation=True, is_experimental=False)
-
Applies unary_chain to
input_tensor
element-wise.\[\mathrm{output\_tensor}_i = \verb|unary_chain|(\mathrm{input\_tensor}_i)\]- Parameters:
-
input_tensor (ttnn.Tensor) – the input tensor.
ops_chain (list[ttnn.UnaryWithParam]) – list of unary ops to be chained.
- Keyword Arguments:
-
memory_config (ttnn.MemoryConfig, optional) – memory configuration for the operation. Defaults to None.
output_tensor (ttnn.Tensor, optional) – preallocated output tensor. Defaults to None.
queue_id (int, optional) – command queue id. Defaults to 0.
- Returns:
-
ttnn.Tensor – the output tensor.
Note
Supported dtypes, layouts, and ranks:
Dtypes
Layouts
Ranks
BFLOAT16, BFLOAT8_B
TILE
2, 3, 4
Example
>>> tensor = ttnn.from_torch(torch.randn([32, 32], dtype=torch.bfloat16), layout=ttnn.TILE_LAYOUT, device=device) >>> ops_chain = [ttnn.UnaryWithParam(ttnn.UnaryOpType.RELU), ttnn.UnaryWithParam(ttnn.UnaryOpType.EXP, False), ttnn.UnaryWithParam(ttnn.UnaryOpType.POWER, 2)] >>> output = ttnn.unary_chain(tensor, ops_chain)