/usr/local/lib64/python3.6/site-packages/torch/ao/ns/fx/__pycache__
Edit: /usr/local/lib64/python3.6/site-packages/torch/ao/ns/fx/__pycache__/utils.cpython-36.pyc (10942B)
3
Eg\D @ s d dl Z d dlZd dlZd dljZd dljjjZd dl jjZ
ejjZd dl
mZmZmZmZmZmZmZ d dlmZ d dlmZ d dlmZmZ d dlmZ d dlmZ dd l m!Z!m"Z" G d
d de j#Z$eeeee%ee! f ee$e$f dd
dZ&eeee%ee! f eeeej'e(f eej'e)f f dddZ*eeedddZ+eee)dddZ,eee) dddZ-eee%dddZ.e"e%e"dddZ/e"ddd d!Z0d"d# Z1e1ej'ej'ej'd$d%d&Z2e1ej'ej'ej'd$d'd(Z3e1ej'ej'ej'd$d)d*Z4dS )+ N)TupleCallableDictSetListOptionalUnion)GraphModule)Node)ObserverBaseFakeQuantizeBase)getattr_from_fqn)is_activation_post_process )NSNodeTargetType
NSResultsTypec @ s4 e Zd Zej Zej Zej Zej Zej Z dS )NodeInputOrOutputTypeN)
__name__
__module____qualname__enumautoFP32INT8FP16UNKNOWNFP32_OR_INT8 r r @/usr/local/lib64/python3.6/site-packages/torch/ao/ns/fx/utils.pyr s
r )nodegm
logger_clsnode_type_to_io_type_mapreturnc s |d }|d }|d }|d }|d }|d } |d }
|d }| j d kr| j|kr`tjtjfS | j|krvtjtjfS | j|krtjtjfS | j|krtjtjfS tjtjfS n| j d
kr| j d
kstt | jt
stt|| j t |tt
fr.| jd }t |tstt||||\}
}||fS t fdd
|D }t fdd
| D }t fdd
|
D }|rtjtjfS |rtjtjfS |rtjtjfS tjtjfS n| j dkr| jdkr| jd }t |tstt||||\}
}|tjfS | jdkrh| jd }t |ts(tt||||\}
}| jd }|tjks^t| d|tjfS | j|krtjtjfS tjtjfS tjtjfS d S )NZfuns_io_type_fp32Zfuns_io_type_fp16Zfuns_io_type_int8Zfuns_io_type_fp32_or_int8Zmods_io_type_fp32Zmods_io_type_int8mods_io_type_fp32_or_int8Zmeths_io_type_fp32_or_int8
call_functioncall_moduler c 3 s | ]}t |V qd S )N)
isinstance).0target_type)modr r
W s z7get_node_first_input_and_output_type..c 3 s | ]}t |V qd S )N)r' )r( r) )r* r r r+ Z s c 3 s | ]}t |V qd S )N)r' )r( r) )r* r r r+ ] s call_method
dequantizeZtor z handling needs to be added)optargetr r r r r r AssertionErrorr' strr
r r argsr
$get_node_first_input_and_output_typeanytorchZfloat16)r r r! r" ZFUNS_IO_TYPE_FP32ZFUNS_IO_TYPE_FP16ZFUNS_IO_TYPE_INT8ZFUNS_IO_TYPE_FP32_OR_INT8ZMODS_IO_TYPE_FP32ZMODS_IO_TYPE_INT8MODS_IO_TYPE_FP32_OR_INT8ZMETHS_IO_TYPE_FP32_OR_INT8Z first_argZ_prev_node_input_typeZprev_node_output_typeZis_known_fp32_input_moduleZis_known_int8_input_module"is_known_fp32_or_int8_input_module prev_nodeZcur_node_dtype_targetr )r* r r3 &