o
    Ơi                     @   sP   d dl Zd dlZddlmZ ddlmZmZ dd Zeej	j
jjdd	 ZdS )
    N   )tensorrt_converter   )extend_mod_attr_to_tuplemark_as_int8_layerc           	      C   sv   t |d|}t |d|}t |d|}| j|tjj|d}||_||_||_|jr-tj	j
|_|jr6t||j |dS )Nkernel_sizestridepadding)inputtypewindow_sizer   )r   add_poolingtrtPoolingTypeMAXr   r	   name	ceil_modePaddingModeEXPLICIT_ROUND_UPpadding_modedynamic_ranger   
get_output)	networkmod	dimension	input_val
layer_namer   r   r	   layer r   X/home/ubuntu/.local/lib/python3.10/site-packages/torch_tensorrt/fx/converters/maxpool.pycommon_maxpool
   s   


r    c                 C   sH   t |dksJ |d }t|tjjstd| dt| |d||dS )Nr   r
   zMaxPool2d received input z) that is not part of the TensorRT region!r   )r   r   r   )len
isinstancer   tensorrtITensorRuntimeErrorr    )r   submodargskwargsr   r   r   r   r   	maxpool2d    s   

r)   )r#   r   torchconverter_registryr   converter_utilsr   r   r    nnmodulespooling	MaxPool2dr)   r   r   r   r   <module>   s   