o
    0i                     @   s   d dl Z d dlZd dlZd dlZd dlZd dlZd dlZd dlm	Z
 d dlmZmZ ddlmZmZmZmZmZ dddZdd	 Zd
efddZedkrQee dS )    N)__version__)default_config_fileload_config_from_file   )is_mlu_availableis_musa_availableis_npu_availableis_sdaa_availableis_xpu_availablec                 C   sF   | d ur
|  d}ntd}|jdd dd | d ur!|jtd |S )NenvzAccelerate env commandz--config_filezFThe config file to use for the default values in the launching script.)defaulthelp)func)
add_parserargparseArgumentParseradd_argumentset_defaultsenv_command)
subparsersparser r   Y/sda-disk/www/egybert/egybert_env/lib/python3.10/site-packages/accelerate/commands/env.pyenv_command_parser    s   
r   c              	   C   s  t j}t j }t }t }t }t }t }d}|rd}n|r#d}n|r(d}n|r-d}n	|r2d}n|r6d}d}	| j	d usCt
jtrJt| j	 }	d }
d}t
jd	krXd
dg}
n	t
jdkraddg}
|
d urptj|
dtjd }tt |t tj| |t jd ddd}|rt j |d< n0|rt j |d< n&|rt j |d< n|rt j |d< n|rt j  |d< n|rt jj!|d< t"d t"d#dd |$ D  t"| j	d u rdnd t%|	t&rd#d d |	$ D nd!|	 }t"| |	|d"< |S )#NzN/ACUDAXPUMLUSDAAMUSANPUz	Not foundntwhere
accelerateposixwhichT)textstderri   @z.2fz GB)z`Accelerate` versionPlatformz`accelerate` bash locationzPython versionzNumpy versionzPyTorch versionzPyTorch acceleratorz
System RAMzGPU typezXPU typezMLU typez	SDAA typez	MUSA typezCANN versionz4
Copy-and-paste the text below in your GitHub issue

c                 S       g | ]\}}d | d| qS )z- : r   .0propvalr   r   r   
<listcomp>l        zenv_command.<locals>.<listcomp>z- `Accelerate` default config:z- `Accelerate` config passed:c                 S   r)   )z	- r*   r   r+   r   r   r   r/   p   r0   	z`Accelerate` configs)'torchr   cudais_availabler
   r   r	   r   r   config_fileospathisfiler   r   to_dictname
subprocesscheck_outputSTDOUTstripversionplatformpython_versionnppsutilvirtual_memorytotalget_device_namexpumlusdaamusacannprintjoinitems
isinstancedict)args
pt_versionpt_cuda_availablept_xpu_availablept_mlu_availablept_sdaa_availablept_musa_availablept_npu_availableacceleratoraccelerate_configcommandbash_locationinfoaccelerate_config_strr   r   r   r   /   s|   




r   returnc                  C   s   t  } |  }t| dS )Nr   )r   
parse_argsr   )r   rQ   r   r   r   main{   s   ra   __main__)N)r   r6   r@   r;   numpyrB   rC   r2   r"   r   r?   accelerate.commands.configr   r   utilsr   r   r   r	   r
   r   r   intra   __name__
SystemExitr   r   r   r   <module>   s    
L
