+
    "Ý³jo>  ã                   óø  € ^ RI t ^ RIt^ RIt^ RIt^ RIt^ RIt^ RIHtHtH	t	H
t
 ^ RIHt ]P                  P                  4       ;'       d    ]P                  P                  t]P                  P                  4       ;'       d    ]P                  P"                  t^ RIHtHtHt ^ RIHtHtHt ^ RIHt  ! R R]4      t]	! ]4       ]P<                  P?                  ]'       * R	R
7      R 4       t . R Ot!. R!Ot". R"Ot#]PH                  ]PJ                  .t&]'! ] PP                  ! ]!]"]#]&4      4      t)]PT                  3R lt+]P<                  P?                  R]PX                  P[                  R4      9  RR
7      ]P<                  P                  R])].R7      ]P<                  P                  R]PT                  ]P^                  .4      R 4       4       4       t0]P<                  P?                  R]PX                  P[                  R4      9  RR
7      ]P<                  P                  R])].R7      ]P<                  P                  R]PT                  ]Pb                  .4      R 4       4       4       t2]P<                  P?                  R]PX                  P[                  R4      9  ;'       g    R]PX                  P[                  R4      9  RR
7      ]P<                  P                  RR#R$.4      ]P<                  P                  R^^ .4      ]P<                  P                  R]PT                  ]Pf                  ]Ph                  .4      ]P<                  P                  RRR.4      ]P<                  P                  R]! 4       ]! 4       ]! ^€4      .4      ]P<                  P                  R]! 4       ]! 4       ]! ^€4      .4      R 4       4       4       4       4       4       4       t5]6R8X  d   ]Pn                  ! ]Pp                  4       R# R# )%é    N)ÚIS_LINUXÚTestCaseÚinstantiate_parametrized_testsÚparametrize)Úopcheck)ÚPerGroupÚPerRowÚ	PerTensor)Ú_choose_scale_float8Ú_dequantize_affine_float8Ú_quantize_affine_float8)Úget_block_sizec                   óÎ  a € ] tR t^#t o RR ltRR lt]P                  ! ]'       * R4      ]P                  ! R]	P                  P                  R4      9  R4      ]! R]	P                  ]	P                  .4      ]! R	^8^x.4      ]! R
^^.4      ]! R^^Y.4      ]! R^d^ý.4      ]! R^ ^@.4      ]! RR]	P                  ]	P                   .4      R 4       4       4       4       4       4       4       4       4       t]P                  ! ]'       * R4      ]P                  ! R]	P                  P                  R4      9  R4      ]! R]	P                  ]	P                  .4      R 4       4       4       tRtV tR# )ÚTestOpsNc                ó  € VP                  \        P                  4      V,
          V,          pVP                  \        P                  4      V
,
          V	,          pVP                  \        P                  4      V,
          V,          p^\        P                  ! VP                  R4      4      ,          pWP                  RR4      ,          pVV,          pVe'   VVP                  \        P                  4      ,           pVP                  RRR7      P                  pVV,
          p\        P                  ! V4      p\        P                  ! VRRR7      pVV,          p\        P                  ! \        P                  ! VV,          4      V,           ^ ^ÿR7      pVV,
          V,          pVV,          p\        P                  ! \        P                  ! VV,          4      V,           ^ ^ÿR7      pVP                  \        P                  4      # )é   T©ÚdimÚkeepdim©ÚminÚmaxéÿÿÿÿéþÿÿÿ)ÚtoÚtorchÚfloatÚmathÚsqrtÚsizeÚ	transposer   ÚvaluesÚexpÚsumÚclampÚroundÚuint8)ÚselfÚqÚkÚvÚ	attn_maskÚ	dropout_pÚ	is_causalÚq_scaleÚq_zpÚk_scaleÚk_zpÚv_scaleÚv_zpÚa_scaleÚa_zpÚo_scaleÚo_zpÚscale_factorÚattnÚattn_maxÚattn_sumÚouts   &&&&&&&&&&&&&&&&&     ÚN/home/luca/screen-checking/.venv/lib/python3.14/site-packages/test/test_ops.pyÚ_scaled_dot_product_int8_op_refÚ'TestOps._scaled_dot_product_int8_op_ref$   sh  € ð& �T‰T”%—+‘+Ó Õ%¨Õ0ˆØ�T‰T”%—+‘+Ó Õ%¨Õ0ˆØ�T‰T”%—+‘+Ó Õ%¨Õ0ˆØœ4Ÿ9š9 Q§V¡V¨B£ZÓ0Õ0ˆØ—;‘;˜r 2Ó&Õ&ˆØ�lÕ"ˆØÒ Ø˜)Ÿ,™,¤u§{¡{Ó3Õ3ˆDØ—8‘8 ¨D�8Ó1×8Ñ8ˆØ�h�ˆÜ�yŠy˜‹ˆÜ—9’9˜T r°4Ô8ˆØ�h�ˆÜ�{Š{œ5Ÿ;š; t¨g¥~Ó6¸Õ=À1È#ÔNˆØ�t•˜wÕ&ˆØ�Q�hˆÜ�kŠkœ%Ÿ+š+ c¨G¥mÓ4°tÕ;ÀÈÔLˆØ�v‰v”e—k‘kÓ"Ð"ó    c                óÜ  € VP                  \        P                  4      V,          pVP                  \        P                  4      V,          pVP                  \        P                  4      V	,          p^\        P                  ! VP                  R4      4      ,          pWP                  RR4      ,          pWÜ,          pVe&   WÔP                  \        P                  4      ,           pVP                  RRR7      P                  pWÞ,
          p\        P                  ! V4      p\        P                  ! VRRR7      pWß,          p\        P                  ! WÚ,          RRR7      pVP                  \        P                  4      P                  \        P                  4      pWÚ,          pWÓ,          p\        P                  ! VV,          RRR7      pVP                  \        P                  4      # )r   Tr   éÀ  r   r   r   é@þÿÿ)r   r   r   r   r   r    r!   r   r"   r#   r$   r%   Úfloat8_e4m3fn)r(   r)   r*   r+   r,   r-   r.   r/   r1   r3   r5   r7   r9   r:   r;   r<   r=   s   &&&&&&&&&&&&     r>   Ú_scaled_dot_product_fp8_op_refÚ&TestOps._scaled_dot_product_fp8_op_refJ   sO  € ð �D‰D”—‘Ó Õ'ˆØ�D‰D”—‘Ó Õ'ˆØ�D‰D”—‘Ó Õ'ˆØœ4Ÿ9š9 Q§V¡V¨B£ZÓ0Õ0ˆØ—;‘;˜r 2Ó&Õ&ˆàÕ"ˆØÒ ØŸ,™,¤u§{¡{Ó3Õ3ˆDØ—8‘8 ¨D�8Ó1×8Ñ8ˆØ�ˆÜ�yŠy˜‹ˆÜ—9’9˜T r°4Ô8ˆØ�ˆÜ�{Š{˜4�>¨t¸Ô=ˆØ�w‰w”u×*Ñ*Ó+×.Ñ.¬u¯{©{Ó;ˆØ�~ˆØ�hˆÜ�kŠk˜# �-¨T°sÔ;ˆØ�v‰v”e×)Ñ)Ó*Ð*rA   zonly support on linuxÚCPUztorchao::qscaled_dot_productúcpp kernels not builtÚinput_dtypeÚ
batch_sizeÚn_headÚ	q_seq_lenÚ
kv_seq_lenÚhead_dimÚ
mask_dtypec           
     óT  a€ \         P                  ! R 4       RpS\         P                  8X  dt   \        R4      \        R4      \        R4      rºp	\        R4      \        R4      rÜ\	        ^4      \	        ^}4      \	        ^4      \	        ^x4      \	        ^€4      3w  rïpppRRppM9\        R	4      \        R
4      \        R4      rºp	\        R4      \        R4      rÜRRppW$W6.pW%W6.pV^^V.p\         P
                  ! V\         P                  VR7      P                  ^^4      p\         P
                  ! V\         P                  VR7      P                  ^^4      p\         P
                  ! V\         P                  VR7      P                  ^^4      pS\         P                  8X  d   R VVV3 4       w  pppV3R lVVV3 4       w  pppVe   \         P
                  ! VWxR7      MRpVP                  4       VP                  4       VP                  4       Ve   VP                  4       MR3w  pppp\        RRV	V
VVVR7      p S\         P                  8X  d^   V P                  XXXXXR7       V P                  ! VVV3RV/V B p!\         P                  P                  P                  ! VVV3RV/V B p"MFV P                  ! VVV3RV/V B p!\         P                  P                  P                  ! VVV3RV/V B p"V P                  V"P                  4       V!P                  4       VVR7       R# )éÒ  Úcpuç    Î¦ü?ç   àÝü?ç    �lý?ç    p?ç   `Pý?ç      ð?çñhãˆµøÔ>ç     à@ç      @ç     `ï?ç     `@ç     `	@ç      À?©ÚdtypeÚdevicec              3   ó2   "  € T F  q^d,          x € K  	  R# 5i©éd   N© ©Ú.0Úts   & r>   Ú	<genexpr>Ú?TestOps.test_quantized_scaled_dot_product_op.<locals>.<genexpr>£   ó   é € Ð2©	 1˜3—w’w«	ùó   ‚c              3   óD   <"  € T F  qP                  S4      x € K  	  R # 5i©N©r   ©ri   rj   rJ   s   & €r>   rk   rl   ¤   ó   øé € Ð8©i¨—4‘4˜×$Ð$«iùó   ƒ Nç        F)r-   r.   r/   r1   r3   r5   r7   ©r0   r2   r4   r6   r8   r,   ©ÚatolÚrtol)r   Úmanual_seedr'   r   ÚintÚrandnr!   ÚcloneÚdictÚupdater?   ÚopsÚtorchaoÚqscaled_dot_productrF   ÚassertEqual)#r(   rJ   rK   rL   rM   rN   rO   rP   rc   r/   r1   r3   r5   r7   r0   r2   r4   r6   r8   rx   ry   Úq_shapeÚkv_shapeÚ
mask_shaper)   r*   r+   r,   Úq2Úk2Úv2Úattn_mask_2Úcommon_kwargsÚmath_refÚactuals#   &f&&&&&&                           r>   Ú$test_quantized_scaled_dot_product_opÚ,TestOps.test_quantized_scaled_dot_product_opm   s  ø€ ô, 	×Ò˜$ÔØˆØœ%Ÿ+™+Ô%äÐ(Ó)ÜÐ(Ó)ÜÐ'Ó(ð &ˆGô
  %Ð%9Ó:¼EÐBTÓ<U�Wä�C“Ü�C“Ü�C“Ü�C“Ü�C“ð,Ñ(ˆD˜˜d Dð ˜d�$ˆD�$ô �g“Ü�g“Ü�jÓ!ð &ˆGô
  % W›~¬u°X«�WØ �$ˆDØ¨&Ð;ˆØ¨FÐ=ˆØ  ! Q¨
Ð3ˆ
Ü�KŠK˜¤u§{¡{¸6ÔB×LÑLÈQÐPQÓRˆÜ�KŠK˜¬¯©¸FÔC×MÑMÈaÐQRÓSˆÜ�KŠK˜¬¯©¸FÔC×MÑMÈaÐQRÓSˆØœ%Ÿ+™+Ô%Ù2¨¨A¨q©	Ó2‰GˆAˆq�!Ü8¨q°!°Q©iÓ8‰ˆˆ1ˆað Ò%ô �KŠK˜
¨*ÕDàð 	ð �G‰G‹IØ�G‰G‹IØ�G‰G‹IØ!+Ò!7ˆI�O‰OÔ¸Tð	#
ÑˆˆB��Kô ØØØØØØØô
ˆð œ%Ÿ+™+Ô%Ø× Ñ  d°¸DÀtÐRVÐ ÔWØ×;Ò;Ø�B˜ñØ&/ðØ3@ñˆHô —Y‘Y×&Ñ&×:Ò:Ø�1�añØ#.ðØ2?ñ‰Fð ×:Ò:Ø�B˜ñØ&/ðØ3@ñˆHô —Y‘Y×&Ñ&×:Ò:Ø�1�añØ#.ðØ2?ñˆFð 	×Ñ˜Ÿ™›¨¯©Ó)9ÀÈ4ÐÖPrA   c                óÚ  aa!€ \         P                  ! R 4       RpS\         P                  8X  dr   \        R4      \        R4      \        R4      rTp\        R4      \        R4      rv\	        ^4      \	        ^}4      \	        ^4      \	        ^x4      \	        ^€4      3w  r‰r«pRRríM8\        R	4      \        R
4      \        R4      rTp\        R4      \        R4      rvRRríRw  ppppVV,          p\         P
                  P                  V^V,          RR7      pVVVV,          3pVVVV3o!\         P                  ! V\         P                  VR7      pV! V4      p\         P                  ! VVRR7      w  pppV!3R lVVV3 4       w  pppS\         P                  8X  d   R VVV3 4       w  pppV3R lVVV3 4       w  pppR VVV3 4       w  ppp\        RRRVVVVVR7      pS\         P                  8X  dZ   VP                  XX	X
XXR7       V P                  ! VVV3/ VB p\         P                  P                  P                  ! VVV3/ VB p MBV P                  ! VVV3/ VB p\         P                  P                  P                  ! VVV3/ VB p V P!                  ^^4      P#                  4       '       g   Q R4       hV P%                  V P                  4       VP                  4       WÞR7       R# )rR   rS   rT   rU   rV   rW   rX   rY   rZ   r[   r\   r]   r^   r_   r`   F©Úbiasra   )r   c              3   ób   <"  € T F$  qP                   ! S!  P                  ^^4      x € K&  	  R# 5i)r   N)Úviewr!   )ri   rj   Ú	qkv_shapes   & €r>   rk   ÚSTestOps.test_quantized_scaled_dot_product_op_with_strided_inputs.<locals>.<genexpr>÷   s(   øé € ÐI¹y¸!—6’6˜9Ñ%×/Ñ/°°1×5Ð5»yùs   ƒ,/c              3   ó2   "  € T F  q^d,          x € K  	  R# 5ire   rg   rh   s   & r>   rk   r–   ù   rm   rn   c              3   óD   <"  € T F  qP                  S4      x € K  	  R # 5irp   rq   rr   s   & €r>   rk   r–   ú   rs   rt   c              3   ó@   "  € T F  qP                  4       x € K  	  R # 5irp   )r}   rh   s   & r>   rk   r–   û   s   é € Ð3© A—g‘g—i�i«ùs   ‚Nru   )r,   r-   r.   r/   r1   r3   r5   r7   rv   zOutput is not contiguous!rw   )é8   rf   é   é    r   )r   rz   r'   r   r{   ÚnnÚLinearr|   Úsplitr~   r   r?   r€   r�   r‚   rF   r!   Úis_contiguousrƒ   )"r(   rJ   rc   r/   r1   r3   r5   r7   r0   r2   r4   r6   r8   rx   ry   rK   Úseq_lenÚnum_headrO   Úhidden_sizeÚprojÚinput_shapeÚinput_tensorÚhidden_stater)   r*   r+   r‡   rˆ   r‰   r‹   rŒ   r�   r•   s"   &f                               @r>   Ú8test_quantized_scaled_dot_product_op_with_strided_inputsÚ@TestOps.test_quantized_scaled_dot_product_op_with_strided_inputsÌ   sÇ  ù€ ô 	×Ò˜$ÔØˆØœ%Ÿ+™+Ô%äÐ(Ó)ÜÐ(Ó)ÜÐ'Ó(ð &ˆGô
  %Ð%9Ó:¼EÐBTÓ<U�Wä�C“Ü�C“Ü�C“Ü�C“Ü�C“ð,Ñ(ˆD˜ Dð ˜d‘$ô �g“Ü�g“Ü�jÓ!ð &ˆGô
  % W›~¬u°X«�WØ �$Ø2AÑ/ˆ
�G˜X xØ Õ)ˆÜ�x‰x�‰˜{¨A°­OÀ%ˆÓHˆØ! 7¨H°xÕ,?Ð@ˆØ ¨(°HÐ=ˆ	Ü—{’{ ;´e·k±kÈ&ÔQˆÙ˜LÓ)ˆÜ—+’+˜l¨K¸RÔ@‰ˆˆ1ˆaÜIÀÀ1Àa¹yÓI‰ˆˆ1ˆaØœ%Ÿ+™+Ô%Ù2¨¨A¨q©	Ó2‰GˆAˆq�!Ü8¨q°!°Q©iÓ8‰ˆˆ1ˆaÙ3¨!¨Q°©Ó3‰
ˆˆB�äØØØØØØØØô	
ˆð œ%Ÿ+™+Ô%Ø× Ñ  d°¸DÀtÐRVÐ ÔWØ×;Ò;¸BÀÀBÑXÈ-ÑXˆHÜ—Y‘Y×&Ñ&×:Ò:¸1¸aÀÑTÀmÑT‰Fà×:Ò:¸2¸rÀ2ÑWÈÑWˆHÜ—Y‘Y×&Ñ&×:Ò:¸1¸aÀÑTÀmÑTˆFØ×Ñ  1Ó%×3Ñ3×5Ò5ÐRÐ7RÓRÐ5Ø×Ñ˜Ÿ™›¨¯©Ó)9ÀÐÖPrA   rg   )Nr   FrY   r   rY   r   rY   r   rY   r   rY   r   )Nr   FrY   rY   rY   rY   rY   )Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r?   rF   ÚunittestÚskipIfr   r   Ú_CÚ_dispatch_dumpr   r'   rE   Úfloat32Úbfloat16rŽ   r¨   Ú__static_attributes__Ú__classdictcell__)Ú__classdict__s   @r>   r   r   #   st  ø‡ € ô$#ôL!+ðF ‡_‚_˜”\Ð#:Ó;Ø‡_‚_Ø�U—X‘X×,Ñ,Ð-KÓLÑLØóñ � §¡¨e×.AÑ.AÐ BÓCÙ�  C˜yÓ)Ù�˜A˜r˜7Ó#Ù�˜r 2˜hÓ'Ù�  S˜zÓ*Ù�˜b "˜XÓ&Ù�  e§m¡m°U·^±^ÐDÓEñQQó Fó 'ó +ó (ó $ó *ó Dó	ó <ðQQðf ‡_‚_˜”\Ð#:Ó;Ø‡_‚_Ø�U—X‘X×,Ñ,Ð-KÓLÑLØóñ � §¡¨e×.AÑ.AÐ BÓCñ=Qó Dó	ó <ö=QrA   r   zROCm not available)Úreasonc                  ó:  € . ROp V P                  R4       \        P                  ! ^ ^\        P                  RRR7      p\        P                  ! ^ ^\        P                  R	RR7      p\	        \        P
                  P                  P                  WRR3V R7       R# )
Útest_schemaÚtest_aot_dispatch_dynamicÚcuda)rb   r    rc   F)Ú
test_utilsN)r¹   Útest_autograd_registrationÚtest_faketensor)r›   rœ   )rœ   r›   )Úappendr   Úrandintr   r   r€   r�   Ú
swizzle_mm)r¼   Úmat1Úmat2s      r>   Útest_swizzle_mmrÄ     sv   € ò€Jð ×ÑÐ1Ô2ä�=Š=˜˜B¤e§k¡k¸ÈÔP€DÜ�=Š=˜˜B¤e§k¡k¸ÈÔP€DäÜ�	‰	×Ñ×$Ñ$Ø	�U˜EÐ"Ø÷rA   c                 ól  € V\         P                  \         P                  \         P                  39   g   Q hR pRpVR8X  d   ^ pMVR8X  d   ^pM	VR8X  d   ^p\         P                  ! RW,          34      P                  V4      p	\         P                  ! ^ V^,           V ,          V 4      P                  V4      p
\         P                  P                  RVV\         P                  VR7      pV\         P                  8X  dg   RVP                  P                  P                  4       P                  4       ,          pVP                  P                  V,          P                  V4      pM<\         P                  ! R.4      pVP                  P                  P                  V4      pVP                  VP                  P                  4      VP                  n
        RpV\         P                  \         P                  39   d   Rp\         P                  ! 4       ;_uu_ 4        VP!                  Wš4      V,          pV\         P                  8X  d   \         P"                  ! Wþ,          4      P                  \         P$                  4      p\         P&                  ! VR^4      P                  V4      P                  \         P                  4      pM_V\         P                  8X  dK   \         P&                  ! Wþ,          RR	4      P                  V4      P                  \         P                  4      p\         P(                  P*                  P-                  VV	V
VVXVV4      P                  \         P                  4      p\         P.                  P1                  VVR
R
R7       RRR4       R#   + '       g   i     R# ; i)Tr$   Úmeanr   iè  )Úmoderb   Úinclude_last_offsetg     À_@g       @rY   rC   gñhãˆµøä>rw   Ni€ÿÿÿrD   )r   r   Úint8rE   rÀ   r   Úaranger�   ÚEmbeddingBagÚweightÚdataÚabsr   Útensorrb   Úno_gradÚforwardr&   Úint32r%   r€   r�   Ú_scaled_embedding_bagÚtestingÚassert_close)Ú	multi_hotrK   Úvector_sizeÚ
index_typeÚqtypeÚ	out_dtyperÈ   rÇ   Ú	mode_enumÚindicesÚoffsetsÚmÚweight_scaleÚqweightÚ	out_scaleÚrefe_outÚtest_outs   &&&&&&           r>   Ú%_test_scaled_embedding_bag_cpu_helperrä   8  s¦  € ð œŸ™¤e§j¡j´%×2EÑ2EÐFÔFÐFÐFàÐØ€Dàˆu„}Ø‰	Ø	�ŒØ‰	Ø	�ŒØˆ	Ü�mŠm˜D :Õ#9Ð";Ó<×?Ñ?À
ÓK€GÜ�lŠl˜1˜z¨A�~°Õ:¸IÓF×IÑIÈ*ÓU€Gä�‰×ÑØØØÜ�k‰kØ/ð 	ó 	€Að ”—
‘
ÔØ˜qŸx™xŸ}™}×0Ñ0Ó2×6Ñ6Ó8Õ8ˆØ—8‘8—=‘= <Õ/×3Ñ3°EÓ:‰ä—|’| S EÓ*ˆØ—(‘(—-‘-×"Ñ" 5Ó)ˆØ—J‘J˜qŸx™xŸ~™~Ó.€A‡H�H„Mà€IØ”U—Z‘Z¤×!4Ñ!4Ð5Ô5Øˆ	ä	�Š��Ø—9‘9˜WÓ.°Õ=ˆØœŸ
™
Ô"Ü—{’{ 8Õ#7Ó8×;Ñ;¼E¿K¹KÓHˆHÜ—{’{ 8¨T°3Ó7×:Ñ:¸9ÓE×HÑHÌÏÉÓU‰HØœ%×-Ñ-Ô-ä—’˜HÕ0°$¸Ó<ß‘�I“ß‘”E—K‘K“ð ô
 —9‘9×$Ñ$×:Ñ:ØØØØØØØØó	
÷ ‰"ŒU�[‰[‹/ð 	ô 	�‰×"Ñ"ØØØØð	 	#ô 	
÷+ 
��Šús   ÈE;N"Î"N3	rH   ztorchao::_scaled_embedding_bagrI   z.multi_hot, batch_size, vector_size, index_type)ÚidsrÚ   c                 óB   € \        V VVV\        P                  V4       R # rp   )rä   r   rÉ   ©rÖ   rK   r×   rØ   rÚ   s   &&&&&r>   Ú"test_scaled_embedding_bag_int8_cpurè   ~  s"   € ô *ØØØØÜ�
‰
ØörA   c                 óB   € \        V VVV\        P                  V4       R # rp   )rä   r   rE   rç   s   &&&&&r>   Ú!test_scaled_embedding_bag_fp8_cpurê   •  s$   € ô *ØØØØÜ×ÑØörA   z"torchao::float8_linear_prepack_cpuztorchao::float8_linear_cpuÚshapeÚbsr’   TFÚx_granularityÚw_granularityc                 ó„  € V w  rg\        V\        4      '       d,   VP                  V8¼  d   R # \        V\        4      '       g   R # \        V\        4      '       d   VP                  V8¼  d   R # \        P                  P                  WgVR7      P                  4       pVP                  p	\        P                  ! W4      p
\        V
P                  V4      p\        V
\        P                  VR7      p\        W¬\        P                  4      pVP                  P                  4       p\        VP                  V4      p\        V\        P                  VR7      p\        VV\        P                  4      p\!        WÜ4      p\!        VV4      p\        P                  P"                  P%                  VVV	4      P'                  V4      p\        P(                  P*                  P-                  VV4      w  pp\        P(                  P*                  P/                  WÜVVW’4      p\        P0                  P3                  VVRRR7       R # )Nr‘   )Úfloat8_dtypeÚ
block_sizeg{®Gáz„?rw   )Ú
isinstancer   Ú
group_sizer   r�   rž   Úevalr’   r|   r   rë   r   rE   r   rÌ   Údetachr   Ú
functionalÚlinearr   r€   r�   Úfloat8_linear_prepack_cpuÚfloat8_linear_cpurÔ   rÕ   )rë   rì   rÚ   r’   rí   rî   Ú
in_featureÚout_featurerÞ   ÚbÚxÚx_block_sizeÚx_scaleÚx_fp8ÚwÚw_block_sizeÚw_scaleÚw_fp8Úx_dqÚw_dqÚrefÚpacked_wÚpacked_scaleÚys   &&&&&&                  r>   Útest_float8_linear_cpur  ¬  s»  € ð $Ñ€JÜ�-¤×*Ò*Ø×#Ñ# zÔ1ÙÜ˜-¬×2Ò2ÙÜ�-¤×*Ò*Ø×#Ñ# zÔ1ÙÜ�‰�‰˜
°dˆÓ;×@Ñ@ÓB€AØ	�‰€AÜ�Š�BÓ#€AÜ! !§'¡'¨=Ó9€LÜ"Ø	Ü×(Ñ(Øô€Gô
 $ A´×0CÑ0CÓD€Eà	�‰�‰Ó€AÜ! !§'¡'¨=Ó9€LÜ"Ø	Ü×(Ñ(Øô€Gô
 $ A w´×0CÑ0CÓD€Eä$ UÓ4€DÜ$ U¨GÓ4€DÜ
�(‰(×
Ñ
×
$Ñ
$ T¨4°Ó
3×
6Ñ
6°yÓ
A€Cä"ŸY™Y×.Ñ.×HÑHÈÐPWÓXÑ€HˆlÜ�	‰	×Ñ×+Ñ+Ø˜ ,°ó	€Aô 
‡M�M×Ñ˜q #¨D°tÐÖ<rA   Ú__main__)r   é   é   é
   )r   r  é€   i   )r   r  i   )é@   r  )é   r  )9Ú	itertoolsr   Úsysr®   Úpytestr   Ú$torch.testing._internal.common_utilsr   r   r   r   Útorch.testing._internal.optestsr   r»   Úis_availableÚversionÚIS_CUDAÚhipÚIS_ROCMÚtorchao.quantizationr   r	   r
   Ú%torchao.quantization.quant_primitivesr   r   r   Útorchao.quantization.utilsr   r   ÚmarkÚskipifrÄ   ÚEMBEDINGBAG_MULTIHOT_SIZESÚEMBEDINGBAG_BAG_SIZESÚEMBEDINGBAG_VECTOR_SIZESÚint64rÒ   ÚEMBEDINGBAG_INDEX_DTYPESÚlistÚproductÚEMBEDINGBAG_TEST_PARAMSr   rä   r°   r±   ÚstrrÉ   rè   rE   rê   r³   Úhalfr  rª   ÚmainÚargvrg   rA   r>   Ú<module>r.     s¯  ðó Û Û 
Û ã Û ÷ó õ 4à
�*‰*×
!Ñ
!Ó
#×
:Ð
:¨¯©×(:Ñ(:€Ø
�*‰*×
!Ñ
!Ó
#×
9Ð
9¨¯©×(9Ñ(9€ç <Ñ <÷ñ õ
ô
lQˆhô lQñ^ ˜wÔ 'ð ‡�×Ñ˜”KÐ(<ÐÓ=ñó >ðò& +Ð Ú)Ð Ú(Ð Ø!ŸK™K¨¯©Ð5Ð áØ×ÒØ"ØØ Ø ó	óÐ ð  �k‰kôC
ðL ‡�×ÑØ	�—‘×(Ñ(Ð)IÓJÑJØ"ð ó ð ‡�×ÑØ4ØØð ó ð
 ‡�×Ñ˜ u§{¡{°E·J±JÐ&?Ó@ñ
ó Aóó	ð
ð ‡�×ÑØ	�—‘×(Ñ(Ð)IÓJÑJØ"ð ó ð ‡�×ÑØ4ØØð ó ð
 ‡�×Ñ˜ u§{¡{°E×4GÑ4GÐ&HÓIñ
ó Jóó	ð
ð ‡�×ÑØ	�—‘×(Ñ(Ð)MÓNÑN÷ Jð JØ�E—H‘H×+Ñ+Ð,HÓIÑIØ"ð ó ð
 ‡�×Ñ˜ 8¨ZÐ"8Ó9Ø‡�×Ñ˜  3˜xÓ(Ø‡�×Ñ˜ u§{¡{°E·N±NÀEÇJÁJÐ&OÓPØ‡�×Ñ˜ $¨ Ó/Ø‡�×Ñ˜©9«;¹»Á(È3Ã-Ð*PÓQØ‡�×Ñ˜©9«;¹»Á(È3Ã-Ð*PÓQñ'=ó Ró Ró 0ó Qó )ó :óð'=ðT ˆzÔØ
‡K‚K�—‘Öñ rA   