Coverage for src/flag_gems/runtime/backend/_sunrise/ops/logical_or.py: 0%
19 statements
« prev ^ index » next coverage.py v7.6.9, created at 2026-05-27 08:02 +0800
« prev ^ index » next coverage.py v7.6.9, created at 2026-05-27 08:02 +0800
1import logging
3import triton
4import triton.language as tl
6from flag_gems.utils import pointwise_dynamic
7from flag_gems.utils.pointwise_dynamic import CodeGenConfig
9logger = logging.getLogger("flag_gems").getChild(__name__.lstrip("."))
11MAX_GRID_SIZES = (65535, 65535, 65535)
12config = CodeGenConfig(
13 max_tile_size=1024,
14 max_grid_size=MAX_GRID_SIZES,
15 max_num_warps_per_cta=8,
16 prefer_block_pointer=True,
17 prefer_1d_tile=False,
18)
21@pointwise_dynamic(promotion_methods=[(0, 1, "ALWAYS_BOOL")], config=config)
22@triton.jit
23def logical_or_func(x, y):
24 return x.to(tl.int1).logical_or(y.to(tl.int1))
27def logical_or(A, B):
28 logger.debug("GEMS LOGICAL_OR")
29 return logical_or_func(A, B)
32def logical_or_(A, B):
33 logger.debug("GEMS LOGICAL_OR_")
34 logical_or_func(A, B, out0=A)
35 return A