
    `i(                     L   d dl Z d dlZd dlmZ d dlmZmZmZ dgZdZ	dZ
d Zg Z ee
d          D ]KZ ee
ez  d	          D ]9Zeez  Z ee
ez  d
          D ]"Zeez  Zee	k    re                    e           #:Le                                  G d dej                  ZdS )    N)	benchmark)FuzzedParameterFuzzedTensorParameterAliasSpectralOpFuzzer   i @  c           	          fdt          t          t          j        |                     dz             D             S )Nc              3   "   K   | ]	}|z  V  
d S )N ).0ibases     }/home/jaya/work/projects/VOICE-AGENT/VIET/agent-env/lib/python3.11/site-packages/torch/utils/benchmark/op_fuzzers/spectral.py	<genexpr>zpower_range.<locals>.<genexpr>   s'      KK!DAIKKKKKK       )rangeintmathlog)upper_boundr   s    `r   power_ranger      s>    KKKKuS+t)D)D%E%E%IJJKKKKr            c                   @     e Zd Zej        ddddededef fdZ xZ	S )r   F      ?)dtypecudaprobability_regularseedr   r    c                p   t                                          t          dddddd          d t          d          D             d	 t          d          D             fd
t          d          D             d t          d          D             gt	          dddddddd||
  
        g|           d S )Nndimg333333?g?)r   r   r   T)distributionstrictc                 N    g | ]"}t          d | t          t          d          #S )k_any_
loguniform)nameminvalmaxvalr$   )r   MIN_DIM_SIZEMAX_DIM_SIZEr   r   s     r   
<listcomp>z-SpectralOpFuzzer.__init__.<locals>.<listcomp>.   sK         $)a\\++%1	    r   r   c                 T    g | ]%}t          d | d t          D                       &S )
k_regular_c                 >    i | ]}|d t          t                    z  S )r   )lenREGULAR_SIZES)r   sizes     r   
<dictcomp>z8SpectralOpFuzzer.__init__.<locals>.<listcomp>.<dictcomp>9   s'    %^%^%^dB]1C1C,C%^%^%^r   r)   r$   )r   r4   r.   s     r   r/   z-SpectralOpFuzzer.__init__.<locals>.<listcomp>6   sV         $-!--%^%^P]%^%^%^    r   c                     g | ]>}t          d | t          d|           t          d|           dz
  id          ?S )kr1   r'   r   T)r)   r$   r%   )r   r   )r   r   r    s     r   r/   z-SpectralOpFuzzer.__init__.<locals>.<listcomp><   s}     	 	 	  $$WW*+;+;+;<<>Q*<A<<88!>Q:Q&  $  	 	 	r   c                 B    g | ]}t          d | dddddd          S )step_g?gQ?g{Gz?)r   r         r   r7   )r   r.   s     r   r/   z-SpectralOpFuzzer.__init__.<locals>.<listcomp>H   sS         $(Q[[),$4T%R%R    r   x)k0k1k2)step_0step_1step_2g      ?i   i   l        )
r)   r5   stepsprobability_contiguousmin_elementsmax_elementsmax_allocation_bytesdim_parameterr   r   )
parameterstensorsr!   )super__init__r   r   r   )selfr!   r   r   r    	__class__s       `r   rN   zSpectralOpFuzzer.__init__   s,     5M5MVZ[[[   %Qxx     %Qxx	  	 	 	 	  %Qxx	 	 	   %Qxx	  M,\ +8+/!)!/)4"(   y 	 =	
 =	
 =	
 =	
 =	
r   )
__name__
__module____qualname__torchfloat64r   boolfloatrN   __classcell__)rP   s   @r   r   r      sh        +0=##?
 ?
 ?
 ?
?
:??
 ?
 ?
 ?
 ?
 ?
 ?
 ?
 ?
 ?
r   )r   rT   torch.utilsr   torch.utils.benchmarkr   r   r   __all__r,   r-   r   r4   r   jijr9   ijkappendsortFuzzerr   r   r   r   <module>rb      s`     ! ! ! ! ! ! O O O O O O O O O O 
L L L 	\1	%	% * *A[*A.. * *U\R/33 	* 	*Aq&C\!!$$S)))	**      @
 @
 @
 @
 @
y' @
 @
 @
 @
 @
r   