Patterns like this are starting to show up, starting with PyTorch 2.12. Presumably this is some thing similar to x[0:-2]. However, one of the values is a symbolic shape now.
2026-06-08 22:50:23 - torch_tensorrt.dynamo.conversion._TRTInterpreter - INFO - Converted node /neg [<built-in function neg>] (Inputs: (add_176: (((s65 - 1)//8)) + 1@SymInt) | Outputs: (neg: -(((s65 - 1)//8)) - 1@SymInt))
2026-06-08 22:50:23 - torch_tensorrt.dynamo.conversion._TRTInterpreter - DEBUG - Converting node /slice_2 (kind: aten.slice.Tensor, args: ('full <Node>', '2 <int>', 'neg <Node>'))
2026-06-08 22:50:23 - torch_tensorrt.dynamo.conversion._ConverterRegistry - DEBUG - Converter options for aten.slice.Tensor: 1
2026-06-08 22:50:23 - torch_tensorrt.dynamo.conversion._ConverterRegistry - DEBUG - Selecting converter option 0 for converting aten.slice.Tensor
2026-06-08 22:50:23 - torch_tensorrt.dynamo.conversion.impl.elementwise.base - INFO - skip broadcast for /slice_2_shape
2026-06-08 22:50:23 - torch_tensorrt.dynamo.conversion.impl.elementwise.base - INFO - skip broadcast for /slice_2_sub_stop
2026-06-08 22:50:23 - torch_tensorrt.dynamo.conversion.impl.elementwise.base - INFO - skip broadcast for /slice_2_sub_num
2026-06-08 22:50:23 - torch_tensorrt.dynamo.conversion.impl.elementwise.base - INFO - skip broadcast for /slice_2_div
2026-06-08 22:50:23 - torch_tensorrt.dynamo.conversion.impl.elementwise.base - INFO - skip broadcast for /slice_2_prod
2026-06-08 22:50:23 - root - DEBUG - add_slice(input=[ELEMENTWISE]-[aten_ops.full.default]-[/full_add]_output_full.default, start=(), shape=(), stride=())
2026-06-08 22:50:23 - root - DEBUG - (Unnamed Layer* 246) [Slice]
2026-06-08 22:50:23 - torch_tensorrt.dynamo.conversion._TRTInterpreter - INFO - Converted node /slice_2 [aten.slice.Tensor] (Inputs: (full: (s79, (((s65 - 1)//8)) + 1, (((s65 - 1)//8)) + 1)@torch.bool, 2, neg: -(((s65 - 1)//8)) - 1@SymInt) | Outputs: (slice_2: (s79, (((s65 - 1)//8)) + 1, (((s65 - 1)//8)) + 1)@torch.bool))
2026-06-08 22:50:23 - torch_tensorrt.dynamo.conversion._TRTInterpreter - DEBUG - Converting node /unsqueeze_21 (kind: aten.unsqueeze.default, args: ('gt_9 <Node>', '1 <int>'))
2026-06-08 22:50:23 - torch_tensorrt.dynamo.conversion._ConverterRegistry - DEBUG - Converter options for aten.unsqueeze.default: 1
2026-06-08 22:50:23 - torch_tensorrt.dynamo.conversion._ConverterRegistry - DEBUG - Selecting converter option 0 for converting aten.unsqueeze.default
2026-06-08 22:50:23 - torch_tensorrt.dynamo.conversion._TRTInterpreter - INFO - Converted node /unsqueeze_21 [aten.unsqueeze.default] (Inputs: (gt_9: (s79, (((s65 - 1)//8)) + 1)@torch.bool, 1) | Outputs: (unsqueeze_21: (s79, 1, (((s65 - 1)//8)) + 1)@torch.bool))
2026-06-08 22:50:23 - torch_tensorrt.dynamo.conversion._TRTInterpreter - DEBUG - Converting node /bitwise_and (kind: aten.bitwise_and.Tensor, args: ('slice_2 <Node>', 'unsqueeze_21 <Node>'))
2026-06-08 22:50:23 - torch_tensorrt.dynamo.conversion._ConverterRegistry - DEBUG - Converter options for aten.bitwise_and.Tensor: 1
2026-06-08 22:50:23 - torch_tensorrt.dynamo.conversion._ConverterRegistry - DEBUG - Selecting converter option 0 for converting aten.bitwise_and.Tensor
2026-06-08 22:50:23 - torch_tensorrt.dynamo.conversion.impl.elementwise.base - INFO - skip broadcast for /bitwise_and_logical_and
2026-06-08 22:50:23 - torch_tensorrt.dynamo.conversion._TRTInterpreter - INFO - Converted node /bitwise_and [aten.bitwise_and.Tensor] (Inputs: (slice_2: (s79, (((s65 - 1)//8)) + 1, (((s65 - 1)//8)) + 1)@torch.bool, unsqueeze_21: (s79, 1, (((s65 - 1)//8)) + 1)@torch.bool) | Outputs: (bitwise_and: (s79, (((s65 - 1)//8)) + 1, (((s65 - 1)//8)) + 1)@torch.bool))
Is your feature request related to a problem? Please describe.
Patterns like this are starting to show up, starting with PyTorch 2.12. Presumably this is some thing similar to
x[0:-2]. However, one of the values is a symbolic shape now.Describe the solution you'd like
Detect these cases and insert the math to calculate the correct ending dimension
Describe alternatives you've considered
Additional context