/usr/local/lib64/python3.6/site-packages/torch/jit/__pycache__
NameSizeModeActions
annotations.cpython-36.pyc127740644editdlrm
frontend.cpython-36.pyc344800644editdlrm
quantized.cpython-36.pyc185170644editdlrm
supported_ops.cpython-36.pyc82240644editdlrm
unsupported_tensor_ops.cpython-36.pyc22950644editdlrm
_async.cpython-36.pyc40560644editdlrm
_builtins.cpython-36.pyc49660644editdlrm
_check.cpython-36.pyc61010644editdlrm
_freeze.cpython-36.pyc88310644editdlrm
_fuser.cpython-36.pyc27810644editdlrm
_logging.cpython-36.pyc3710644editdlrm
_monkeytype_config.cpython-36.pyc69840644editdlrm
_pickle.cpython-36.pyc8350644editdlrm
_recursive.cpython-36.pyc254780644editdlrm
_script.cpython-36.pyc485820644editdlrm
_serialization.cpython-36.pyc59120644editdlrm
_state.cpython-36.pyc37030644editdlrm
_trace.cpython-36.pyc352480644editdlrm
__init__.cpython-36.pyc65480644editdlrm
Edit: /usr/local/lib64/python3.6/site-packages/torch/jit/__pycache__/quantized.cpython-36.pyc (18517B)
3 Eg]@sddlmZmZddlmZddlZddlZddlmZmZm Z Gdddej j Z Gdddej j Z Gd d d ej j ZGd d d eZGd ddeZGdddeZd!eeeedddZGdddej j ZGdddeZGdddeZddZejfddZejfdd ZdS)")Tensor_VF)PackedSequenceN)ListOptionalTuplecs\eZdZddgZfddZejjddZejjddZ ejjd d Z d d Z Z S) QuantizedLinearscale zero_pointcstt|j|j|_|j|_tj|jjtj dj \|_|_ |_ |_ tjj|jdd|_tjj|j dd|_ |jdk stdtjj|jjtj dj dd|_|jdtj|jjtj ddS)N) memory_formatF) requires_gradzQuantizedLinear requires a biaspacked_tensor_ptr)superr__init__ in_features out_featurestorchfbgemm_linear_quantize_weightweightclonecontiguous_formatfloat col_offsetsr r nn ParameterbiasAssertionErrorregister_bufferfbgemm_pack_quantized_matrix)selfother) __class__?/usr/local/lib64/python3.6/site-packages/torch/jit/quantized.pyr s&"zQuantizedLinear.__init__cCs|jjtj|jdS)N)r set_rrr)rr"r"r#_unpackszQuantizedLinear._unpackcCs.|jjtjtjjttgtjdj dS)N)dtype) r r$rzerosjitannotaterintuint8detach)rr"r"r#_pack"szQuantizedLinear._packcCs2tj|j|j|j|j|j|j|j}|j |j S)N) rZ)fbgemm_linear_int8_weight_fp32_activationrrr rr r rZtor&)rinputoutr"r"r#forward'szQuantizedLinear.forwardcCsdjf|j}|S)Nz^in_features={in_features}, out_features={out_features}, scale={scale}, zero_point={zero_point})format__dict__)rreprr"r"r# extra_repr.szQuantizedLinear.extra_repr) __name__ __module__ __qualname__ __constants__rrr( script_methodr%r-r0r4 __classcell__r"r")r!r#r s  rcsTeZdZfddZejjddZejjddZejjddZ d d Z Z S) QuantizedLinearFP16cstt|j|j|_|j|_|j|_tj|jj tj dj |_|j dk sTt dtjj|j j tj dj dd|_ |jd|jdS)N)r z#QuantizedLinearFP16 requires a biasF)r packed_weight)rr;rrrroriginal_weightrfbgemm_pack_gemm_matrix_fp16rrrrrrrr)rr )r!r"r#r6s"zQuantizedLinearFP16.__init__cCs|jjtj|jdS)N)r<r$rr>r=)rr"r"r#r%AszQuantizedLinearFP16._unpackcCs.|jjtjtjjttgtjdj dS)N)r&) r<r$rr'r(r)rr*r+r,)rr"r"r#r-GszQuantizedLinearFP16._packcCstj|j|j|j}|S)N)rZ)fbgemm_linear_fp16_weight_fp32_activationrr<r)rr.r/r"r"r#r0LszQuantizedLinearFP16.forwardcCsdjf|j}|S)Nz8in_features={in_features}, out_features={out_features}, )r1r2)rr3r"r"r#r4RszQuantizedLinearFP16.extra_repr) r5r6r7rrr(r9r%r-r0r4r:r"r")r!r#r;4s  r;cseZdZdddddddgZfdd Zd d Zejjd d Z ejjde e e ddddZ ejjddZ ejjddZZS)QuantizedRNNCellBase input_size hidden_sizerscale_hhscale_ih zero_point_ih zero_point_hhcs(tt|j|j|_|j|_|j|_|js4tdtj|j j tj dj \}}|_ |_|jd||jd|tj|jj tj dj \}}|_|_|jd||jd|tj|j }|jd|tj|j}|jd|tjj|jj tj dj d d |_tjj|jj tj dj d d |_dS) Nz&Quantized RNN cells require bias terms)r weight_ihcol_offsets_ih weight_hhcol_offsets_hh packed_ih packed_hhF)r )rr?rr@rAr ValueErrorrrrFrrrrCrDrrHrBrErrrbias_ihbias_hh)rr rFrGrHrIrJrK)r!r"r#r[s$&  &      "zQuantizedRNNCellBase.__init__cCsJd}d|jkr |jdk r |d7}d|jkr<|jdkr<|d7}|jf|jS)Nz{input_size}, {hidden_size}rTz , bias={bias} nonlinearitytanhz, nonlinearity={nonlinearity})r2rrOr1)rsr"r"r#r4ts zQuantizedRNNCellBase.extra_reprcCs,|jd|jkr(tdj|jd|jdS)Nz6input has inconsistent input_size: got {}, expected {})sizer@ RuntimeErrorr1)rr.r"r"r#check_forward_input|sz(QuantizedRNNCellBase.check_forward_inputN)r.hx hidden_labelreturncCs`|jd|jdkr2tdj|jd||jd|jd|jkr\tdj||jd|jdS)Nrz8Input batch size {} doesn't match hidden{} batch size {}rRz:hidden{} has inconsistent hidden_size: got {}, expected {})rSrTr1rA)rr.rWrXr"r"r#check_forward_hiddensz)QuantizedRNNCellBase.check_forward_hiddencCs,|jjtj|j|jjtj|jdS)N)rJr$rrrFrKrH)rr"r"r#r%szQuantizedRNNCellBase._unpackcCsX|jjtjtjjttgtjdj |j jtjtjjttgtjdj dS)N)r&) rJr$rr'r(r)rr*r+r,rK)rr"r"r#r-s$zQuantizedRNNCellBase._pack)rV)r5r6r7r8rr4rr(r9rUrstrrZr%r-r:r"r")r!r#r?Ws  r?csPeZdZddddddddgZfd d Zejjdee eed d dZ Z S)QuantizedRNNCellr@rArrBrCrDrErOcstt|j||j|_dS)N)rr\rrO)rr )r!r"r#rszQuantizedRNNCell.__init__N)r.rWrYcCs|j||dkr0tj|jd|j|j|jd}|j||d|jdkrt j |||j |j |j |j|j|j|j|j|j|j|j|j}n\|jdkrt j|||j |j |j |j|j|j|j|j|j|j|j|j}n|}tdj|j|S)Nr)r&devicerVrPZreluzUnknown nonlinearity: {})rUrr'rSrAr&r]rZrOrZquantized_rnn_tanh_cellrFrHrMrNrJrKrGrIrCrBrDrEZquantized_rnn_relu_cellrTr1)rr.rWretr"r"r#r0s(     zQuantizedRNNCell.forward)N) r5r6r7r8rrr(r9rrr0r:r"r")r!r#r\s    r\csLeZdZfddZejjdeee eefe eefdddZ Z S)QuantizedLSTMCellcstt|j|dS)N)rr_r)rr )r!r"r#rszQuantizedLSTMCell.__init__N)r.rWrYcCs|j||dkr8tj|jd|j|j|jd}||f}|j||dd|j||ddtj |||j |j |j |j |j|j|j|j|j|j|j|jS)Nr)r&r]z[0]rRz[1])rUrr'rSrAr&r]rZrZquantized_lstm_cellrFrHrMrNrJrKrGrIrCrBrDrE)rr.rWr'r"r"r#r0s zQuantizedLSTMCell.forward)N) r5r6r7rrr(r9rrrr0r:r"r")r!r#r_s r_cs<eZdZfddZejjdeeeedddZ Z S)QuantizedGRUCellcstt|j|dS)N)rr`r)rr )r!r"r#rszQuantizedGRUCell.__init__N)r.rWrYcCsz|j||dkr0tj|jd|j|j|jd}|j||dtj |||j |j |j |j |j|j|j|j|j|j|j|jS)Nr)r&r]rV)rUrr'rSrAr&r]rZrZquantized_gru_cellrFrHrMrNrJrKrGrIrCrBrDrE)rr.rWr"r"r#r0s zQuantizedGRUCell.forward)N) r5r6r7rrr(r9rrr0r:r"r")r!r#r`s r`rR)tensor permutationdimrYcCs |j||S)N)Z index_select)rarbrcr"r"r#apply_permutationsrdc seZdZddddddddd g Zejffd d Zejje e e d d ddZ ejje e e e e e e fd ddZejjde e e e e fed dddZejje e e e d dddZejje e e e dddZZS)QuantizedRNNBasemoder@rA num_layersr batch_firstdropout bidirectionalr&cstt|jj|_j|_j|_j|_j|_j|_|jdkrT|j sTt j |_ j |_ |j rndnd}||_ |jst |jdkr|jdkrt d|tjkr|tjkrt dj|g|_xt|jD]xt|D]}dkr|jn|j|}|dkr dnd fd d }|d \}}|d \} } |tjkrXtjjj|| || } n8tjjj|j|} tjjj| j| } tjjj| | } t|dj| |jj| qWqWdS)NGRUrRLSTMz.Only LSTM or GRU is supported for QuantizedRNNzUnsupported dtype: {}rZ_reverserVcs8dj|}dj|}t|}t|}||fS)Nzweight_{}_l{}{}z bias_{}_l{}{})r1getattr)ZihhhZ weight_nameZ bias_namerr)layerr suffixr"r#get_weight_biass   z2QuantizedRNNBase.__init__..get_weight_biasZihhhzcell_params_{}_{})rrerrfr@rArgrrhrrirjr&rTrint8float16r1 all_weightsrangeopsZ quantizedZmake_quantized_cell_paramsZlinear_prepack_fp16rZmake_quantized_cell_params_fp16setattrappend)rr r&num_directions directionZlayer_input_sizerqrFrMrHrNZ cell_paramsrJrK)r!)ror rpr#rsJ        zQuantizedRNNBase.__init__N)r. batch_sizesrYcCs\|dk r dnd}|j|kr0tdj||j|j|jdkrXtdj|j|jddS)Nrlz%input must have {} dimensions, got {}rRz?input.size(-1) must be equal to input_size. Expected {}, got {}r~)rcrTr1r@rS)rr.r|Zexpected_input_dimr"r"r# check_input+s zQuantizedRNNBase.check_inputcCsT|dk rt|d}n|jr&|jdn|jd}|jr:dnd}|j|||jf}|S)NrrRrl)r*rhrSrjrgrA)rr.r|Z mini_batchrzexpected_hidden_sizer"r"r#get_expected_hidden_size7s z)QuantizedRNNBase.get_expected_hidden_sizeExpected hidden size {}, got {})rWrmsgrYcCs(|j|kr$t|j|t|jdS)N)rSrTr1list)rrWrrr"r"r#check_hidden_sizeBs z"QuantizedRNNBase.check_hidden_size)r.hiddenr|rYcCs,|j|||j||}|j||dddS)NzExpected hidden size {}, got {})r)rrr)rr.rr|rr"r"r#check_forward_argsHs  z#QuantizedRNNBase.check_forward_args)rWrbrYcCs|dkr |St||S)N)rd)rrWrbr"r"r#permute_hiddenNszQuantizedRNNBase.permute_hidden)r)r5r6r7r8rrsrr(r9rrrrr*rr[rrrr:r"r")r!r#res  9 " "rec s<eZdZdddgiZfddZejjee e eefe ee e ee ee eeffdddZ ejjdee e eefe ee eeffd d d Z ejjdee e eefe ee eeffd d dZejje eefe ee eefdddZejjee eefe ed dddZdddZZS) QuantizedLSTMr0forward_packedforward_tensorcstt|j||dS)N)rrr)rr r&)r!r"r#rXszQuantizedLSTM.__init__)r.rWr|max_batch_sizesorted_indicesrYc Cs|dkr@|jrdnd}tj|j|||j|j|jd}||f}n |j||}|j||||dksft tj |||j |j |jt |j|j|j|j|jdd }|d} |dd} | | fS)NrlrR)r&r]F)r&Z use_dynamicr)rjrr'rgrAr&r]rrrZquantized_lstmrurrritrainingrh) rr.rWr|rrrzr'resultoutputrr"r"r# forward_impl[s     zQuantizedLSTM.forward_implN)r.rWrYc CsLd}|jr|jdn|jd}d}d}|j|||||\}}||j||fS)NrrR)rhrSrr) rr.rWr|rrunsorted_indicesrrr"r"r#rss zQuantizedLSTM.forward_tensorc CsP|\}}}}|d}t|}|j|||||\}}t||||}||j||fS)Nr)r*rrr) rr.rWr|rrrrrr"r"r#r~s  zQuantizedLSTM.forward_packed)rWrbrYcCs(|dkr |St|d|t|d|fS)NrrR)rd)rrWrbr"r"r#rszQuantizedLSTM.permute_hidden)r.rr|rYcCs@|j|||j||}|j|d|d|j|d|ddS)Nrz"Expected hidden[0] size {}, got {}rRz"Expected hidden[1] size {}, got {})rrr)rr.rr|rr"r"r#rs     z QuantizedLSTM.check_forward_argscCs&t|tr|j||S|j||SdS)N) isinstancerrr)rr.rWr"r"r#r0s  zQuantizedLSTM.forward)N)N)N)r5r6r7 __overloads__rrr(r9rrrr*rrrrrrr0r:r"r")r!r#rUs  (2  (" rc @seZdZdddgiZejjeeeeee eee eefdddZ ejjdeeee eefdd d Z ejjde eee e efdd d Zdd dZdS) QuantizedGRUr0rr)r.rWr|rrrYc Cs|dkr8|jrdnd}tj|j|||j|j|jd}n |j||}|j||||dkrtj |||j |j |jt |j |j|j|j }n*tj ||||j |j |jt |j |j|j }|d}|d} || fS)NrlrR)r&r]r)rjrr'rgrAr&r]rrZ quantized_grururrrirrh) rr.rWr|rrrzrrrr"r"r#rs    zQuantizedGRU.forward_implN)r.rWrYc CsLd}|jr|jdn|jd}d}d}|j|||||\}}||j||fS)NrrR)rhrSrr) rr.rWr|rrrrrr"r"r#rs zQuantizedGRU.forward_tensorc CsP|\}}}}|d}t|}|j|||||\}}t||||}||j||fS)Nr)r*rrr) rr.rWr|rrrrrr"r"r#rs  zQuantizedGRU.forward_packedcCs&t|tr|j||S|j||SdS)N)rrrr)rr.rWr"r"r#r0s  zQuantizedGRU.forward)N)N)N)r5r6r7rrr(r9rrr*rrrrrr0r"r"r"r#rs " " rcCstjdi}x6|jD]*\}}||kr*qt|}||k r|||<qWx |jD]\}}t|||qPWt|tjj r~t |St|tjj rt |St|tjj rt|S|S)Nzsquantize_rnn_cell_modules function has been deprecated. Please use torch.quantization.quantize_dynamic API instead.)warningswarn named_modulesquantize_rnn_cell_modulesitemsrxrrrZLSTMCellr_ZGRUCellr`ZRNNCellr\)modulereassignnamemodnew_modr"r"r#rs"  rcCstjdi}x8|jD],\}}||kr*qt||}||k r|||<qWx |jD]\}}t|||qRWt|tjj r|tj krt |S|tj krt |Stdj||S)Nzqquantize_linear_modules function has been deprecated. Please use torch.quantization.quantize_dynamic API instead.zUnsupported dtype: {})rrrquantize_linear_modulesrrxrrrZLinearrsrrtr;rTr1)rr&rrrrr"r"r#rs$      rcCstjdi}x8|jD],\}}||kr*qt||}||k r|||<qWx |jD]\}}t|||qRWt|tjj r|tj kr|tj krt dj |t||St|tjjrt|S|S)Nznquantize_rnn_modules function has been deprecated. Please use torch.quantization.quantize_dynamic API instead.zUnsupported dtype: {})rrrquantize_rnn_modulesrrxrrrrmrsrtrTr1rrkr)rr&rrrrr"r"r#r s"    r)rR)rrrZtorch.nn.utils.rnnrrtypingrrrr(Z ScriptModulerr;r?r\r_r`r*rdrerrrrsrrr"r"r"r#s" *#J#gM: