Ë
    »Ó^j­  ã                   ó@  — d dl Z i dd“dd“dd“dd	“d
d“dd“dd“dd“dd“dd“dd“dd“dd“dd“dd“d d!“d"d#“i d$d%“d&d'“d(d)“d*d+“d,d-“d.d/“d0d1“d2d3“d4d5“d6d7“d8d9“d:d;“d<d=“d>d?“d@dA“dBdC“dDdE“¥dFdGdHdIdJdKdLdMdNdOdPdQœ¥ZdRedSefdT„Z e j
                  dU«      ZdVedSefdW„Zy)Xé    Nz1.0)é   r   z1.1)r   r   z1.2)é   r   z1.3)r   r   z1.4)r   r   z2.0)é   r   z2.1)r   r   z2.2)r   r   z2.3)é   r   z3.0)r   r   z3.1)é   r   z3.2)r   r   z4.0)é   r   z4.1)r   r   z4.2)é   r   z4.3)r	   r   z5.0)é   r   z6.0)é	   r   z6.1)r   r   z6.2)r   r   z6.3)é
   r   z6.4)r   r   z6.5)r   r   z7.0)é   r   z7.1)r   r   z7.2)r   r   z7.3)r   r   z7.4)r   r   z7.5)r   r   z7.6)r   r   z7.7)r   r	   z7.8)r   r
   z8.0)é   r   z8.1)r   r   )r   r   )r   r   )r   r   )r   r   )r   r	   )r   r
   )r   r   )é   r   )r   r   )r   r   )r   r   )z8.2z8.3z8.4z8.5z8.6z8.7z8.8z9.0z9.1z9.2z9.3Úptx_versionÚreturnc                 ój   — 	 t         |    \  }}d|z  d|z  z   S # t        $ r t        d| › �«      d‚w xY w)a»  
    Maps the PTX ISA version to the minimal CUDA driver, nvPTXCompiler, or nvJitLink version
    that is needed to load a PTX of the given ISA version.

    Parameters
    ----------
    ptx_version : str
        PTX ISA version as a string, e.g. "8.8" for PTX ISA 8.8. This is the ``.version``
        directive in the PTX header.

    Returns
    -------
    int
        Minimal CUDA version as 1000 * major + 10 * minor, e.g. 12090 for CUDA 12.9.

    Raises
    ------
    ValueError
        If the PTX version is unknown.

    Examples
    --------
    >>> get_minimal_required_driver_ver_from_ptx_ver("8.8")
    12090
    >>> get_minimal_required_driver_ver_from_ptx_ver("7.0")
    11000
    iè  r   z(Unknown or unsupported PTX ISA version: N)Ú_ptx_to_cudaÚKeyErrorÚ
ValueError)r   ÚmajorÚminors      úi/var/www/ramen.bs-engineer-server.com/venv/lib/python3.12/site-packages/cuda/bindings/utils/_ptx_utils.pyÚ*get_minimal_required_cuda_ver_from_ptx_verr   9   sP   € ð8]Ü# KÑ0‰ˆˆuØ�e‰|˜b 5™jÑ(Ð(øÜò ]ÜÐCÀKÀ=ÐQÓRÐX\Ð\ð]ús   ‚ ™2z\.version\s+([0-9]+\.[0-9]+)Úptxc                 óh   — t         j                  | «      }|r|j                  d«      S t        d«      ‚)aO  
    Extract the PTX ISA version string from PTX source code.

    Parameters
    ----------
    ptx : str
        The PTX assembly source code as a string.

    Returns
    -------
    str
        The PTX ISA version string, e.g., "8.8".

    Raises
    ------
    ValueError
        If the .version directive is not found in the PTX source.

    Examples
    --------
    >>> ptx = r'''
    ... .version 8.8
    ... .target sm_86
    ... .address_size 64
    ...
    ... .visible .entry test_kernel()
    ... {
    ...     ret;
    ... }
    ... '''
    >>> get_ptx_ver(ptx)
    '8.8'
    r   z=No .version directive found in PTX source. Is it a valid PTX?)Ú_ptx_ver_patternÚsearchÚgroupr   )r   Úms     r   Úget_ptx_verr    a   s2   € ôD 	×Ñ Ó$€AÙØ�w‰w�q‹zÐäÐXÓYÐYó    )Úrer   ÚstrÚintr   Úcompiler   r    © r!   r   ú<module>r'      s  ðó 
ð.Ø	ˆ6ð.à	ˆ6ð.ð 
ˆ6ð.ð 
ˆ6ð	.ð
 
ˆ6ð.ð 
ˆ6ð.ð 
ˆ6ð.ð 
ˆ6ð.ð 
ˆ6ð.ð 
ˆ6ð.ð 
ˆ6ð.ð 
ˆ6ð.ð 
ˆ6ð.ð 
ˆ6ð.ð 
ˆ6ð.ð  
ˆ6ð!.ð" 
ˆ6ñ#.ð$ 
ˆ6ð%.ð& 
ˆ6ð'.ð( 
ˆ6ð).ð* 
ˆ7ð+.ð, 
ˆ7ð-.ð. 
ˆ7ð/.ð0 
ˆ7ð1.ð2 
ˆ7ð3.ð4 
ˆ7ð5.ð6 
ˆ7ð7.ð8 
ˆ7ð9.ð: 
ˆ7ð;.ð< 
ˆ7ð=.ð> 
ˆ7ð?.ð@ 
ˆ7ðA.ðB 
ˆ7ðC.ðD 
ˆ7ñE.ðF ØØØØØØØØØØò[.€ðb ]¸Cð  ]ÀCó  ]ðJ �2—:‘:Ð=Ó>Ð ð&Z�Sð &Z˜Sô &Zr!   