o
    1Îj'  ã                   @   sT   d dl mZmZ d dlmZmZ dd„ Zdd„ Zdd„ Zd	d
„ Z	dd„ Z
dd„ ZdS )é   )Úis_dep_availableÚrequire_deps)Úimport_paddleÚimport_paddle_modulec                  C   s   t ƒ } |  ¡ }| d¡d S )Nú:é    )r   Z
get_deviceÚsplit)ÚpaddleZ
device_str© r
   úR/var/www/html/Deteccion_Ine/venv/lib/python3.10/site-packages/paddlex/utils/env.pyÚget_device_type   s   r   c                  C   sn   t ƒ } | j}d|v r| d¡\}}nd }| d¡}t|ƒdks!J ‚tt|ƒ\}}}|r1||||fS |||d fS )Nú-Ú.é   )r   Ú__version__r   ÚlenÚmapÚint)r	   ÚversionÚtagZmajor_vZminor_vZpatch_vr
   r
   r   Úget_paddle_version   s   
r   c                  C   ó0   t dƒ} |  ¡ }|dkrd S ttt| d¡ƒƒS ©Nzpaddle.versionÚFalser   )r   ÚcudaÚtupler   r   r   )Úpaddle_versionZcuda_versionr
   r
   r   Úget_paddle_cuda_version+   ó
   r   c                  C   r   r   )r   Zcudnnr   r   r   r   )r   Zcudnn_versionr
   r
   r   Úget_paddle_cudnn_version4   r   r   c                  C   sL   t dƒrtƒ } | j ¡ o|  ¡  S tdƒ dd l}dd l}|j 	¡ o%|j
jS ©NZpaddlepaddleÚtorchr   )r   r   ÚdeviceZis_compiled_with_cudaZis_compiled_with_rocmr   Ú
torch.cudaZtorch.versionr   Zis_availabler   )r	   r!   r
   r
   r   Úis_cuda_available@   s   ÿr$   c                  C   sF   d } t ƒ r!tdƒrtƒ }|jj ¡ } | S tdƒ dd l}|j ¡ } | S r    )r$   r   r   r"   r   Zget_device_capabilityr   r#   )Úcapr	   r!   r
   r
   r   Úget_gpu_compute_capabilityS   s   	ú
r&   N)Údepsr   r   Zimport_guardr   r   r   r   r   r   r$   r&   r
   r
   r
   r   Ú<module>   s   	