U PhK( @sddlmZddlZddlZddlZddlZddlZddlmZddl m Z ddl Z ddl Z ddlZddlmZmZmZz$ed\ZZeoeddd kZWn"eeefk rd ZZYnXejd dd kZed \ZZerejnd Zdddddddd dg Z ddZ!ddZ"ej#fddZ$ddZ%ddddZ&ej#fd d!d"d#dZ'ddd$dZ(ej#fd d!d"d%dZ)ej#fd d!d"d&dZ*Gd'ddZ+e,d(kre*dS))) annotationsN) OrderedDict)TextIO)OptionalImportErrorget_package_versionoptional_importzmonai._CZ BUILD_MONAI01F USE_META_DICTpsutilz!NOT INSTALLED or UNKNOWN VERSION. print_configget_system_infoprint_system_info get_gpu_infoprint_gpu_infoprint_debug_info USE_COMPILED IgniteInfocCs*t}tj|d<tjj|d<tj|d<|S)z6 Read the package versions into a dictionary. ZMONAIZNumpyZPytorch)rmonai __version__npversion full_versiontorchoutputrN/home/dell461/cl/sdc2/HISourceFinder-master-l/src/monai/config/deviceconfig.pyget_config_values4s    rcCst}td|d<td|d<td|d<td|d<td |d <td |d <td |d <td|d<td|d<td|d<td|d<t|d<td|d<td|d<td|d<td|d<td|d<td|d<|S)z? Read the optional package versions into a dictionary. ignitezPytorch IgniteZitkZITKZnibabelZNibabelZskimagez scikit-imagescipyPILZPillow tensorboardZ TensorboardZgdown torchvisionZ TorchVisiontqdmZlmdbr pandasZeinopsZ transformersZmlflowZnrrdZpynrrdZclearml)rrpsutil_versionrrrrget_optional_config_valuesAs(                 r'cCstD] \}}t|d||ddq tdtdtdttdtjt }t |dtj }td ||ddtd |ddt D] \}}t|d||ddqtd |ddtd |ddd S)z~ Print the package versions to `file`. Args: file: `print()` text stream file. Defaults to `sys.stdout`. z version: TfileflushzMONAI flags: HAS_EXT = z, USE_COMPILED = z, USE_META_DICT = zMONAI rev id: z zMONAI __file__: z Optional dependencies:zF For details about installing the optional dependencies, please visit:z^ https://docs.monai.io/en/latest/installation.html#installing-the-recommended-dependencies N)ritemsprintHAS_EXTrr r__revision_id__getpassZgetuserresub__file__r')r)kvusernameZmasked_file_pathrrrr ]s cCs<zt|r|n|||<Wntk r6d||<YnXdS)NzUNKNOWN for given OS)callable BaseException)in_dictkeyfnrrr _dict_appendvsr;r)returnc st}t|dtj|ddkrHt|dtjttdrt|dtjnZ|ddkrft|ddd nz!get_system_info..z/etc/os-releasezPRETTY_NAME="(.*)"z Linux versioncs dS)N)groupr) linux_verrrrCrDPlatformZ ProcessorZMachinezPython versionz`psutil` missingcSsdS)Nzrun `pip install monai[psutil]`rrrrrrCrDz Process nameCommandz Open fileszNum physical CPUscSs tjddS)NFlogicalr cpu_countrrrrrCrDzNum logical CPUscSs tjddS)NTrJrLrrrrrCrDzNum usable CPUscSsttSN)lenr ProcessZ cpu_affinityrrrrrCrDz CPU usage (%)cSs tjddS)NTZpercpu)r Z cpu_percentrrrrrCrDzCPU freq. (MHz)cSsttjdddS)NFrQr)roundr Zcpu_freqrrrrrCrDz#Load avg. in last 1, 5, 15 mins (%)cSsddtDS)NcSs"g|]}t|tddqS)drE)rRr rM).0xrrr s5get_system_info....)r getloadavgrrrrrCrDzDisk usage (%)cSsttjSrN)r disk_usageosgetcwdpercentrrrrrCrDzAvg. sensor temp. (Celsius)cSs$ttddtDdS)NcSsg|]}|D] }|jq qSr)current)rTsublistitemrrrrVsrWrE)rrRmeanr Zsensors_temperaturesvaluesrrrrrCszTotal physical memory (GB)cstjddSN@rE)rRtotalrmemrrrCrDzAvailable memory (GB)cstjddSrb)rR availablerrerrrCrDzUsed memory (GB)cstjddSrb)rRusedrrerrrCrD)rr;rAsystem win32_verhasattrr?openr0searchread processormachinepython_version has_psutilr rPZoneshotnameZcmdline open_filesvirtual_memory)rZrel_fpr)rGrfrr }sX     rNone)r)r<cCsDtstd|ddn,tD] \}}t|d||ddqdS)z Print system info to `file`. Requires the optional library, `psutil`. Args: file: `print()` text stream file. Defaults to `sys.stdout`. z)`psutil` required for `print_system_info`Tr(: N)rrr,r r+r)r3r4rrrrscst}tjt|dfddt|ddd|drLt|dddtjjt|dfd dt|d tj d t|d tj d rt|d fd ddkrt|dtjj t|dtjj t D]}tj|}t|d|d|jt|d|dt|jt|d|dt|jt|d|d|jt|d|dt|jddt|d|d|jd|jq|S)NzNum GPUscsSrNrr)num_gpusrrrCrDzget_gpu_info..zHas CUDAcSsttjSrN)boolrcuda is_availablerrrrrCrDz CUDA versioncSstjjSrN)rrr|rrrrrCrDz cuDNN enabledcstSrN)r{r cudnn_verrrrCrDZNVIDIA_TF32_OVERRIDEZ TORCH_ALLOW_TF32_CUBLAS_OVERRIDEz cuDNN versioncsSrNrrr~rrrCrDrzCurrent devicez'Library compiled for CUDA architectureszGPU z Namez Is integratedz Is multi GPU boardz Multi processor countz Total memory (GB)rcrEz CUDA capability (maj.min).)rrr| device_countr;backendscudnnrrZenvirongetcurrent_device get_arch_listrangeget_device_propertiesrsr{ is_integratedis_multi_gpu_boardmulti_processor_countrR total_memorymajorminor)rgpuZgpu_infor)rrzrrs0     $cCs0tD] \}}t|d||ddq dS)zr Print GPU info to `file`. Args: file: `print()` text stream file. Defaults to `sys.stdout`. rxTr(N)rr+r,ryrrrrscCstd|ddtd|ddtd|ddt|td|ddtdtd|ddt|td|ddtdtd|ddt|dS) z Print config (installed dependencies, etc.) and system info for debugging. Args: file: `print()` text stream file. Defaults to `sys.stdout`. z ================================Tr(zPrinting MONAI config...z! ================================zPrinting system config...zPrinting GPU config...N)r,r rr)r)rrrrsc@seZdZdZdZdS)rz< Config information of the PyTorch ignite package. z0.4.4N)__name__ __module__ __qualname____doc__OPT_IMPORT_VERSIONrrrrrs__main__)- __future__rr/rZrAr0sys collectionsrtypingrnumpyrrrmonai.utils.modulerrr_r-getenvr ImportErrorAttributeErrorrrr r rrrr&__all__rr'stdoutr r;r rrrrrrrrrr sR       ;"