+
    –°³jR  ã                   ó¼   € ^ RI Ht ^ RIHtHt ^ RIt^ RIHt	 . ROt
R R lt]R R l4       t]R	 R
 l4       t]RR R ll4       t]R R l4       t]R R l4       tR# )é    )Ú	lru_cache)ÚOptionalÚTYPE_CHECKINGN)ÚLibraryc                ó$   € V ^8„  d   QhR\         /# ©é   Úreturn©Úbool)Úformats   "Ú\/home/luca/screen-checking/.venv/lib/python3.14/site-packages/torch/backends/mps/__init__.pyÚ__annotate__r      s   € ÷ ñ ”$ñ ó    c                 ó6   € \         P                  P                  # )zæReturn whether PyTorch is built with MPS support.

Note that this doesn't necessarily mean MPS is available; just that
if this PyTorch binary were run on a machine with working MPS drivers
and devices, we would be able to use it.
)ÚtorchÚ_CÚ_has_mps© r   r   Úis_builtr      s   € ô �8‰8×ÑÐr   c                ó$   € V ^8„  d   QhR\         /# r   r   )r   s   "r   r   r      s   € ÷ (ñ (”dñ (r   c                 ó>   € \         P                  P                  4       # )z7Return a bool indicating if MPS is currently available.)r   r   Ú_mps_is_availabler   r   r   Úis_availabler      s   € ô �8‰8×%Ñ%Ó'Ð'r   c                ó<   € V ^8„  d   QhR\         R\         R\        /# )r	   ÚmajorÚminorr
   ©Úintr   )r   s   "r   r   r   #   s!   € ÷ <ñ <œSð <¬ð <´ñ <r   c                ó@   € \         P                  P                  W4      # )zHReturn a bool indicating whether MPS is running on given MacOS or newer.©r   r   Ú_mps_is_on_macos_or_newer)r   r   s   &&r   Úis_macos_or_newerr#   "   s   € ô �8‰8×-Ñ-¨eÓ;Ð;r   c                ó0   € V ^8„  d   QhR\         R\        /# )r	   r   r
   r   )r   s   "r   r   r   )   s   € ÷ 9ñ 9œsð 9¬4ñ 9r   c                óB   € \         P                  P                  ^V 4      # )zEReturn a bool indicating whether MPS is running on MacOS 13 or newer.r!   )r   s   &r   Úis_macos13_or_newerr&   (   s   € ô �8‰8×-Ñ-¨b°%Ó8Ð8r   c                ó$   € V ^8„  d   QhR\         /# r   )Ústr)r   s   "r   r   r   /   s   € ÷ $ñ $”#ñ $r   c                 ó>   € \         P                  P                  4       # )zReturn Metal device name)r   r   Ú_mps_get_namer   r   r   Úget_namer+   .   s   € ô �8‰8×!Ñ!Ó#Ð#r   c                ó$   € V ^8„  d   QhR\         /# r   )r   )r   s   "r   r   r   5   s   € ÷ *ñ *œñ *r   c                 ó>   € \         P                  P                  4       # )zåReturn GPU core count.

According to the documentation, one core is comprised of 16 Execution Units.
One execution Unit has 8 ALUs.
And one ALU can run 24 threads, i.e. one core is capable of executing 3072 threads concurrently.
)r   r   Ú_mps_get_core_countr   r   r   Úget_core_countr/   4   s   € ô �8‰8×'Ñ'Ó)Ð)r   )r/   r+   r   r   r&   r#   )r   )Ú	functoolsr   Ú
_lru_cacheÚtypingr   r   r   Útorch.libraryr   Ú_LibraryÚ__all__r   r   r#   r&   r+   r/   r   r   r   Ú<module>r6      s�   ðÝ -ß *ã Ý -ò€õð ô(ó ð(ð
 ô<ó ð<ð
 ö9ó ð9ð
 ô$ó ð$ð
 ô*ó ò*r   