Coverage for src/flag_gems/runtime/backend/_sunrise/ops/logical_and.py: 0%
15 statements
« prev ^ index » next coverage.py v7.6.9, created at 2026-06-04 09:03 +0800
« prev ^ index » next coverage.py v7.6.9, created at 2026-06-04 09:03 +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("."))
12MAX_GRID_SIZES = (65535, 65535, 65535)
13config = CodeGenConfig(
14 max_tile_size=2048,
15 max_grid_size=MAX_GRID_SIZES,
16 max_num_warps_per_cta=32,
17 prefer_block_pointer=True,
18 prefer_1d_tile=True,
19)
22@pointwise_dynamic(promotion_methods=[(0, 1, "ALWAYS_BOOL")], config=config)
23@triton.jit
24def logical_and_func(x, y):
25 return x.to(tl.int1).logical_and(y.to(tl.int1))
28def logical_and(A, B):
29 logger.debug("GEMS LOGICAL_AND")
30 return logical_and_func(A, B)