https://t.me/RX1948
Server : Apache
System : Linux iad1-shared-b8-43 6.6.49-grsec-jammy+ #10 SMP Thu Sep 12 23:23:08 UTC 2024 x86_64
User : dh_edsupp ( 6597262)
PHP Version : 8.2.26
Disable Function : NONE
Directory :  /lib/python3/dist-packages/numpy/distutils/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //lib/python3/dist-packages/numpy/distutils/__pycache__/cpuinfo.cpython-310.pyc
o

6��a�X�@sHdZdgZddlZddlZddlZddlZddlZddlZddlm	Z	d!dd�Z
d!d	d
�Zd!dd�Z		d!d
d�Z
Gdd�d�ZGdd�de�ZGdd�de�ZGdd�de�ZGdd�de�ZGdd�de�Zej�d�rqeZn.ej�d�rzeZn%ejdkr�eZnej�d�r�eZnej�d�r�eZnej�d �r�eZneZe�ZdS)"aa
cpuinfo

Copyright 2002 Pearu Peterson all rights reserved,
Pearu Peterson <pearu@cens.ioc.ee>
Permission to use, modify, and distribute this software is given under the
terms of the NumPy (BSD style) license.  See LICENSE.txt that came with
this distribution for specifics.

NO WARRANTY IS EXPRESSED OR IMPLIED.  USE AT YOUR OWN RISK.
Pearu Peterson

�cpu�N)�getstatusoutput�r�c
Cstzt|�\}}Wnty%}ztjt|�t|d�WYd}~dSd}~wwt�|�r6t�|�|vr6d|fSd|fS)N��
stacklevel)F�TF)	r�EnvironmentError�warnings�warn�str�UserWarning�os�	WIFEXITED�WEXITSTATUS)�cmd�successful_statusr�status�output�e�r�9/usr/lib/python3/dist-packages/numpy/distutils/cpuinfo.py�	getoutputs��rcKs<i}|D]}t||||dd�\}}|r|��||<q|S�Nr�rr)r�strip)rr�kw�info�key�okrrrr�command_info%s

��r ccs<�t|||dd�\}}|sdS|��D]}|��VqdSr)r�
splitlinesr)rrrrr�linerrr�command_by_line.s�
��r#cCsRi}t|||dd�D]}dd�|�|d�D�}t|�dkr&|d||d<q|S)NrrcS�g|]}|���qSr�r��.0�srrr�
<listcomp>;�z*key_value_from_command.<locals>.<listcomp>�r)r#�split�len)r�seprr�dr"�lrrr�key_value_from_command6s
��r1c@s@eZdZdZdd�Zdd�Zdd�Zdd	�Zd
d�Zdd
�Z	dS)�CPUInfoBasezkHolds CPU information and provides methods for requiring
    the availability of various CPU features.
    cCsz|�WStyYdSw�N)�	Exception)�self�funcrrr�	_try_callEs
�zCPUInfoBase._try_callcCsZ|�d�s)t|d|�r%t|d|�}t|tj�r!|j|fdd�St|��dd�St|��)N�_cSs||�Sr3r)r6�attrrrr�<lambda>Psz)CPUInfoBase.__getattr__.<locals>.<lambda>cS�dSr3rrrrrr:R�)�
startswith�hasattr�getattr�
isinstance�types�
MethodTyper7�AttributeError)r5�namer9rrr�__getattr__Ks
�zCPUInfoBase.__getattr__cCsdS�Nrr�r5rrr�	_getNCPUsUszCPUInfoBase._getNCPUscCs&t��d}t�d��|��d�}|S)Nrz(\d+)bitr)�platform�architecture�re�compile�search�group)r5�abits�nbitsrrr�__get_nbitsXszCPUInfoBase.__get_nbitscC�|��dkS)N�32��_CPUInfoBase__get_nbitsrGrrr�	_is_32bit]�zCPUInfoBase._is_32bitcCrR)N�64rTrGrrr�	_is_64bit`rWzCPUInfoBase._is_64bitN)
�__name__�
__module__�__qualname__�__doc__r7rErHrUrVrYrrrrr2@s
r2c@s�eZdZdZdd�Zdd�Zdd�Zdd	�Zd
d�Zdd
�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd�Zdd�Zd d!�Zd"d#�Zd$d%�ZeZd&d'�Zd(d)�Zd*d+�Zd,d-�Zd.d/�Zd0d1�Zd2d3�Zd4d5�Zd6d7�Zd8d9�Z d:d;�Z!d<d=�Z"d>d?�Z#d@dA�Z$dBdC�Z%dDdE�Z&dFdG�Z'e'Z(dHdI�Z)dJdK�Z*dLdM�Z+dNdO�Z,dPdQ�Z-dRdS�Z.dTdU�Z/dVdW�Z0dXdY�Z1dZd[�Z2d\d]�Z3dS)^�LinuxCPUInfoNc

Cs�|jdurdSig}td�\}}|r|��|dd<ztd�}Wnty<}ztjt|�tdd�WYd}~n7d}~ww|D]+}dd�|�	d	d
�D�}t
|�dkrSq?|\}}	|r_||dvrd|�i�|	|d|<q?|��||j
_dS)Nzuname -mr�uname_mz
/proc/cpuinfor+rcSr$rr%r&rrrr)tr*z)LinuxCPUInfo.__init__.<locals>.<listcomp>�:r���)rrr�openr	r
rrr
r,r-�append�close�	__class__)
r5rrr�forr"�
name_valuerD�valuerrr�__init__gs,
 ��
zLinuxCPUInfo.__init__cCr;r3rrGrrr�	_not_impl~r<zLinuxCPUInfo._not_implcC�|jdddkS)Nr�	vendor_id�AuthenticAMD�rrGrrr�_is_AMD��zLinuxCPUInfo._is_AMDcC�|��o|jdddkS)Nr�model�2�rorrGrrr�_is_AthlonK6_2��zLinuxCPUInfo._is_AthlonK6_2cCrq)Nrrr�3rtrGrrr�_is_AthlonK6_3�rvzLinuxCPUInfo._is_AthlonK6_3cC�t�d|jdd�duS)Nz	.*?AMD-K6r�
model name�rK�matchrrGrrr�_is_AthlonK6�rvzLinuxCPUInfo._is_AthlonK6cCry)Nz	.*?AMD-K7rrzr{rGrrr�_is_AthlonK7�rvzLinuxCPUInfo._is_AthlonK7cCry)Nz.*?Athlon\(tm\) MP\brrzr{rGrrr�_is_AthlonMP��
��zLinuxCPUInfo._is_AthlonMPcCrq)Nr�family�15��is_AMDrrGrrr�	_is_AMD64�rvzLinuxCPUInfo._is_AMD64cCry)Nz.*?Athlon\(tm\) 64\brrzr{rGrrr�_is_Athlon64�r�zLinuxCPUInfo._is_Athlon64cCry)Nz.*?Athlon HX\brrzr{rGrrr�_is_AthlonHX�r�zLinuxCPUInfo._is_AthlonHXcCry)Nz.*?Opteron\brrzr{rGrrr�_is_Opteron�r�zLinuxCPUInfo._is_OpteroncCry)Nz.*?Hammer\brrzr{rGrrr�
_is_Hammer�r�zLinuxCPUInfo._is_HammercCrk)Nrr�AlpharnrGrrr�	_is_Alpha�rpzLinuxCPUInfo._is_AlphacCrq)Nr�	cpu model�EV4��is_AlpharrGrrr�_is_EV4�rvzLinuxCPUInfo._is_EV4cCrq)Nrr��EV5r�rGrrr�_is_EV5�rvzLinuxCPUInfo._is_EV5cCrq)Nrr��EV56r�rGrrr�_is_EV56�rvzLinuxCPUInfo._is_EV56cCrq)Nrr��PCA56r�rGrrr�	_is_PCA56�rvzLinuxCPUInfo._is_PCA56cCrk)Nrrl�GenuineIntelrnrGrrr�	_is_Intel�rpzLinuxCPUInfo._is_IntelcCrk)Nrr�i486rnrGrrr�_is_i486�rpzLinuxCPUInfo._is_i486cCrq)Nr�
cpu family�5��is_IntelrrGrrr�_is_i586�rvzLinuxCPUInfo._is_i586cCrq)Nrr��6r�rGrrr�_is_i686�rvzLinuxCPUInfo._is_i686cCry)Nz
.*?Celeronrrzr{rGrrr�_is_Celeron�r�zLinuxCPUInfo._is_CeleroncCry)Nz
.*?Pentiumrrzr{rGrrr�_is_Pentium�r�zLinuxCPUInfo._is_PentiumcCry)Nz.*?Pentium.*?II\brrzr{rGrrr�
_is_PentiumII�r�zLinuxCPUInfo._is_PentiumIIcCry)Nz.*?PentiumPro\brrzr{rGrrr�_is_PentiumPro�r�zLinuxCPUInfo._is_PentiumProcCry)Nz.*?Pentium.*?MMX\brrzr{rGrrr�_is_PentiumMMX�r�zLinuxCPUInfo._is_PentiumMMXcCry)Nz.*?Pentium.*?III\brrzr{rGrrr�_is_PentiumIII�r�zLinuxCPUInfo._is_PentiumIIIcCry)Nz.*?Pentium.*?(IV|4)\brrzr{rGrrr�
_is_PentiumIV�r�zLinuxCPUInfo._is_PentiumIVcCry)Nz.*?Pentium.*?M\brrzr{rGrrr�_is_PentiumM�r�zLinuxCPUInfo._is_PentiumMcCs|��o|��Sr3)�is_PentiumIV�has_sse3rGrrr�_is_Prescott��zLinuxCPUInfo._is_PrescottcCsX|��o+|jdddkp|jdddko+|��o|��o+t�d|jdd�duS)Nrr�r�r�z	.*?\blm\b�flags)r�rr��	has_ssse3rKr|rGrrr�
_is_Nocona�s���zLinuxCPUInfo._is_NoconacCs*|��o|��ot�d|jdd�duS)Nz.*?Core\(TM\)2\brrz)�is_64bitr�rKr|rrGrrr�	_is_Core2�s���zLinuxCPUInfo._is_Core2cCry)Nz.*?Itanium\brr�r{rGrrr�_is_Itanium�r�zLinuxCPUInfo._is_ItaniumcCst�d|jddtj�duS)Nz	.*?XEON\brrz)rKr|r�
IGNORECASErGrrr�_is_XEON�s
��zLinuxCPUInfo._is_XEONcC�t|j�dkSrF�r-rrGrrr�
_is_singleCPU�zLinuxCPUInfo._is_singleCPUcC�
t|j�Sr3r�rGrrrrH�
zLinuxCPUInfo._getNCPUscCrk)Nr�fdiv_bug�yesrnrGrrr�
_has_fdiv_bugrpzLinuxCPUInfo._has_fdiv_bugcCrk)Nr�f00f_bugr�rnrGrrr�
_has_f00f_bugrpzLinuxCPUInfo._has_f00f_bugcCry)Nz
.*?\bmmx\brr�r{rGrrr�_has_mmxrvzLinuxCPUInfo._has_mmxcCry)Nz
.*?\bsse\brr�r{rGrrr�_has_sservzLinuxCPUInfo._has_ssecCry)Nz.*?\bsse2\brr�r{rGrrr�	_has_sse2rvzLinuxCPUInfo._has_sse2cCry)Nz
.*?\bpni\brr�r{rGrrr�	_has_sse3rvzLinuxCPUInfo._has_sse3cCry)Nz.*?\bssse3\brr�r{rGrrr�
_has_ssse3rvzLinuxCPUInfo._has_ssse3cCry)Nz.*?\b3dnow\brr�r{rGrrr�
_has_3dnow rvzLinuxCPUInfo._has_3dnowcCry)Nz.*?\b3dnowext\brr�r{rGrrr�
_has_3dnowext#rvzLinuxCPUInfo._has_3dnowext)4rZr[r\rrirjrorurxr}r~rr�r�r�r�r�r�r�r�r�r��_is_i386r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r��_is_Xeonr�rHr�r�r�r�r�r�r�r�r�rrrrr^csdr^c@s8eZdZdZdd�Zdd�Zdd�Zdd	�Zd
d�Zdd
�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd�Zdd�Zd d!�Zd"d#�Zd$d%�Zd&d'�Zd(d)�Zd*d+�Zd,d-�Zd.d/�Zd0d1�Zd2d3�Zd4d5�Zd6d7�Zd8d9�Zd:d;�Z d<d=�Z!d>d?�Z"d@dA�Z#dBdC�Z$dDdE�Z%dFdG�Z&dHdI�Z'dJdK�Z(dS)L�IRIXCPUInfoNcCs(|jdurdStdddd�}||j_dS)N�sysconf� )rr)r.r)rr1re�r5rrrrri)s
�zIRIXCPUInfo.__init__cCr;r3rrGrrrrj0r<zIRIXCPUInfo._not_implcCs|j�d�dkS)N�NUM_PROCESSORS�1)r�getrGrrrr�2r�zIRIXCPUInfo._is_singleCPUcCst|j�dd��S)Nr�r��intrr�rGrrrrH5rpzIRIXCPUInfo._getNCPUscCs |j�d���d��d|kS)N�
PROCESSORSrzr%s)rr�r,�lower�r5�nrrr�	__cputype8s zIRIXCPUInfo.__cputypecC�
|�d�S)Ni���_IRIXCPUInfo__cputyperGrrr�	_is_r2000:�
zIRIXCPUInfo._is_r2000cCr�)Ni�r�rGrrr�	_is_r3000;r�zIRIXCPUInfo._is_r3000cCr�)Ni<r�rGrrr�	_is_r3900<r�zIRIXCPUInfo._is_r3900cCr�)Ni�r�rGrrr�	_is_r4000=r�zIRIXCPUInfo._is_r4000cCr�)Nir�rGrrr�	_is_r4100>r�zIRIXCPUInfo._is_r4100cCr�)Ni�r�rGrrr�	_is_r4300?r�zIRIXCPUInfo._is_r4300cCr�)Ni0r�rGrrr�	_is_r4400@r�zIRIXCPUInfo._is_r4400cCr�)Ni�r�rGrrr�	_is_r4600Ar�zIRIXCPUInfo._is_r4600cCr�)Ni*r�rGrrr�	_is_r4650Br�zIRIXCPUInfo._is_r4650cCr�)Ni�r�rGrrr�	_is_r5000Cr�zIRIXCPUInfo._is_r5000cCr�)Nipr�rGrrr�	_is_r6000Dr�zIRIXCPUInfo._is_r6000cCr�)Ni@r�rGrrr�	_is_r8000Er�zIRIXCPUInfo._is_r8000cCr�)Ni'r�rGrrr�
_is_r10000Fr�zIRIXCPUInfo._is_r10000cCr�)Ni�.r�rGrrr�
_is_r12000Gr�zIRIXCPUInfo._is_r12000cCr�)N�orionr�rGrrr�
_is_rorionHr�zIRIXCPUInfo._is_rorioncCs$z|j�d�WStyYdSw)N�MACHINE)rr�r4rGrrr�get_ipJszIRIXCPUInfo.get_ipcCs|j�d���d|kS)Nr�zip%s)rr�r�r�rrr�	__machineMszIRIXCPUInfo.__machinecCr�)N���_IRIXCPUInfo__machinerGrrr�_is_IP19Or�zIRIXCPUInfo._is_IP19cCr�)N�r�rGrrr�_is_IP20Pr�zIRIXCPUInfo._is_IP20cCr�)N�r�rGrrr�_is_IP21Qr�zIRIXCPUInfo._is_IP21cCr��N�r�rGrrr�_is_IP22Rr�zIRIXCPUInfo._is_IP22cC�|�d�o|��Sr�)r�r�rGrrr�_is_IP22_4kS�zIRIXCPUInfo._is_IP22_4kcCr�r��r�r�rGrrr�_is_IP22_5kTr�zIRIXCPUInfo._is_IP22_5kcCr�)N�r�rGrrr�_is_IP24Ur�zIRIXCPUInfo._is_IP24cCr�)N�r�rGrrr�_is_IP25Vr�zIRIXCPUInfo._is_IP25cCr�)N�r�rGrrr�_is_IP26Wr�zIRIXCPUInfo._is_IP26cCr�)N�r�rGrrr�_is_IP27Xr�zIRIXCPUInfo._is_IP27cCr�)N�r�rGrrr�_is_IP28Yr�zIRIXCPUInfo._is_IP28cCr�)N�r�rGrrr�_is_IP30Zr�zIRIXCPUInfo._is_IP30cCr��N� r�rGrrr�_is_IP32[r�zIRIXCPUInfo._is_IP32cCr�rr�rGrrr�_is_IP32_5k\r�zIRIXCPUInfo._is_IP32_5kcCr�r)r�r�rGrrr�_is_IP32_10k]r�zIRIXCPUInfo._is_IP32_10k))rZr[r\rrirjr�rHr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�rrrrrr
r
rrrrrrr�&sNr�c@��eZdZdZdd�Zdd�Zdd�Zdd	�Zd
d�Zdd
�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd�Zdd�Zd d!�Zd"d#�Zd$d%�Zd&d'�Zd(d)�Zd*d+�Zd,d-�Zd.d/�Zd0d1�Zd2d3�ZdS)4�
DarwinCPUInfoNcCs6|jdurdStddd�}tddd�|d<||j_dS)N�arch�machine)rrz	sysctl hw�=�r.�	sysctl_hw)rr r1rer�rrrrics
�zDarwinCPUInfo.__init__cCr;r3rrGrrrrjkr<zDarwinCPUInfo._not_implcC�t|jd�dd��S)Nrzhw.ncpurr�rGrrrrHm�zDarwinCPUInfo._getNCPUscCrk)Nrz
hw.machinezPower MacintoshrnrGrrr�_is_Power_Macintoshprpz!DarwinCPUInfo._is_Power_MacintoshcC�|jddkS)Nr�i386rnrGrrrr�sr�zDarwinCPUInfo._is_i386cCr)Nr�ppcrnrGrrr�_is_ppcur�zDarwinCPUInfo._is_ppccCs|jdd|kS)Nrzppc%srnr�rrrr�xrpzDarwinCPUInfo.__machinecCr�)NiY��_DarwinCPUInfo__machinerGrrr�
_is_ppc601zr�zDarwinCPUInfo._is_ppc601cCr�)NiZrrGrrr�
_is_ppc602{r�zDarwinCPUInfo._is_ppc602cCr�)Ni[rrGrrr�
_is_ppc603|r�zDarwinCPUInfo._is_ppc603cCr�)N�603errGrrr�_is_ppc603e}r�zDarwinCPUInfo._is_ppc603ecCr�)Ni\rrGrrr�
_is_ppc604~r�zDarwinCPUInfo._is_ppc604cCr�)N�604errGrrr�_is_ppc604er�zDarwinCPUInfo._is_ppc604ecCr�)NilrrGrrr�
_is_ppc620�r�zDarwinCPUInfo._is_ppc620cCr�)NivrrGrrr�
_is_ppc630�r�zDarwinCPUInfo._is_ppc630cCr�)Ni�rrGrrr�
_is_ppc740�r�zDarwinCPUInfo._is_ppc740cCr�)Ni�rrGrrr�_is_ppc7400�r�zDarwinCPUInfo._is_ppc7400cCr�)NirrGrrr�_is_ppc7450�r�zDarwinCPUInfo._is_ppc7450cCr�)Ni�rrGrrr�
_is_ppc750�r�zDarwinCPUInfo._is_ppc750cCr�)Ni�rrGrrr�
_is_ppc403�r�zDarwinCPUInfo._is_ppc403cCr�)Ni�rrGrrr�
_is_ppc505�r�zDarwinCPUInfo._is_ppc505cCr�)Ni!rrGrrr�
_is_ppc801�r�zDarwinCPUInfo._is_ppc801cCr�)Ni5rrGrrr�
_is_ppc821�r�zDarwinCPUInfo._is_ppc821cCr�)Ni7rrGrrr�
_is_ppc823�r�zDarwinCPUInfo._is_ppc823cCr�)Ni\rrGrrr�
_is_ppc860�r�zDarwinCPUInfo._is_ppc860)rZr[r\rrirjrHrr�rrr r!r"r$r%r'r(r)r*r+r,r-r.r/r0r1r2r3rrrrr`s6rc@r)4�SunOSCPUInfoNcCsl|jdurdStdddddd�}tddd	�|d
<td�D]}t�d|�}|r/|�d
�|d<nq||j_dS)Nr�mach�uname_iz
isainfo -bz
isainfo -n)rr5r6�	isainfo_b�	isainfo_nzuname -Xrr�uname_Xzpsrinfo -v 0z+\s*The (?P<p>[\w\d]+) processor operates at�p�	processor)rr r1r#rKr|rNre)r5rr"�mrrrri�s 
��zSunOSCPUInfo.__init__cCr;r3rrGrrrrj�r<zSunOSCPUInfo._not_implcCr)Nr8rrnrGrrrr��r�zSunOSCPUInfo._is_i386cCr)Nr8�sparcrnrGrrr�	_is_sparc�r�zSunOSCPUInfo._is_sparccCr)Nr8�sparcv9rnrGrrr�_is_sparcv9�r�zSunOSCPUInfo._is_sparcv9cCr)Nr9�NumCPUrr�rGrrrrH�rzSunOSCPUInfo._getNCPUscCr)Nr�sun4rnrGrrr�_is_sun4�r�zSunOSCPUInfo._is_sun4cC�t�d|jd�duS)N�SUNWr6r{rGrrr�_is_SUNW�rzSunOSCPUInfo._is_SUNWcCrD)Nz.*SPARCstation-5r6r{rGrrr�_is_sparcstation5�rzSunOSCPUInfo._is_sparcstation5cCrD)Nz	.*Ultra-1r6r{rGrrr�
_is_ultra1�rzSunOSCPUInfo._is_ultra1cCrD)Nz.*Ultra-250r6r{rGrrr�_is_ultra250�rzSunOSCPUInfo._is_ultra250cCrD)Nz	.*Ultra-2r6r{rGrrr�
_is_ultra2�rzSunOSCPUInfo._is_ultra2cCrD)Nz
.*Ultra-30r6r{rGrrr�_is_ultra30�rzSunOSCPUInfo._is_ultra30cCrD)Nz	.*Ultra-4r6r{rGrrr�
_is_ultra4�rzSunOSCPUInfo._is_ultra4cCrD)Nz.*Ultra-5_10r6r{rGrrr�
_is_ultra5_10�rzSunOSCPUInfo._is_ultra5_10cCrD)Nz	.*Ultra-5r6r{rGrrr�
_is_ultra5�rzSunOSCPUInfo._is_ultra5cCrD)Nz
.*Ultra-60r6r{rGrrr�_is_ultra60�rzSunOSCPUInfo._is_ultra60cCrD)Nz
.*Ultra-80r6r{rGrrr�_is_ultra80�rzSunOSCPUInfo._is_ultra80cCrD)Nz.*Ultra-Enterpriser6r{rGrrr�_is_ultraenterprice�rz SunOSCPUInfo._is_ultraenterpricecCrD)Nz.*Ultra-Enterprise-10000r6r{rGrrr�_is_ultraenterprice10k�rz#SunOSCPUInfo._is_ultraenterprice10kcCrD)Nz
.*Sun-Firer6r{rGrrr�_is_sunfire�rzSunOSCPUInfo._is_sunfirecCrD)Nz.*Ultrar6r{rGrrr�	_is_ultra�rzSunOSCPUInfo._is_ultracCr)Nr;�sparcv7rnrGrrr�_is_cpusparcv7�r�zSunOSCPUInfo._is_cpusparcv7cCr)Nr;�sparcv8rnrGrrr�_is_cpusparcv8�r�zSunOSCPUInfo._is_cpusparcv8cCr)Nr;r?rnrGrrr�_is_cpusparcv9�r�zSunOSCPUInfo._is_cpusparcv9)rZr[r\rrirjr�r>r@rHrCrFrGrHrIrJrKrLrMrNrOrPrQrRrSrTrVrXrYrrrrr4�s6r4c@seZdZdZdZdd�Zdd�Zdd�Zd	d
�Zdd�Z	d
d�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd�Zdd�Zdd �Zd!d"�Zd#d$�Zd%d&�Zd'd(�Zd)d*�Zd+d,�Zd-d.�Zd/d0�Zd1d2�Zd3d4�Zd5d6�Zd7d8�Zd9d:�Z d;d<�Z!d=d>�Z"d?d@�Z#dS)A�Win32CPUInfoNz,HARDWARE\DESCRIPTION\System\CentralProcessorc
Csh|jdurdSg}z�ddl}t�dtj�}|�|j|j�}d}	z|�||�}Wn
|j	y2Yncw|d7}|�
d|i�|�||�}d}	z|�||�\}	}
}Wn
|j	y\Yn8w|d}|
|d|	<|	dkr�|�|
�}|r�t
|�d��|dd	<t
|�d
��|dd<t
|�d��|dd
<qGq Wnty�}
zt|
d�WYd}
~
nd}
~
ww||j_dS)NrzFfamily\s+(?P<FML>\d+)\s+model\s+(?P<MDL>\d+)\s+stepping\s+(?P<STP>\d+)Tr�	Processorra�
Identifier�FML�Family�MDL�Model�STP�Steppingz
(ignoring))r�winregrKrLr��OpenKey�HKEY_LOCAL_MACHINE�pkey�EnumKey�errorrc�	EnumValuerMr�rNr4�printre)r5rrc�prgx�chnd�pnum�proc�phnd�pidxrDrh�vtpe�srchrrrrri�sT
���
����zWin32CPUInfo.__init__cCr;r3rrGrrrrjr<zWin32CPUInfo._not_implcCrk)Nr�VendorIdentifierrmrnrGrrrrorpzWin32CPUInfo._is_AMDcCrq�Nrr^�r�rGrrr�	_is_Am486rvzWin32CPUInfo._is_Am486cCrqrtr�rGrrr�
_is_Am5x86rvzWin32CPUInfo._is_Am5x86cC�,|��o|jdddko|jdddvS)Nrr^�r`)rrr+�r�rGrrr�	_is_AMDK5��zWin32CPUInfo._is_AMDK5cCrx)Nrr^ryr`)��r�rGrrr�	_is_AMDK6r|zWin32CPUInfo._is_AMDK6cC�,|��o|jdddko|jdddkS)Nrr^ryr`�r�rGrrr�_is_AMDK6_2r|zWin32CPUInfo._is_AMDK6_2cCr�)Nrr^ryr`�	r�rGrrr�_is_AMDK6_3!r|zWin32CPUInfo._is_AMDK6_3cCrq�Nrr^r}r�rGrrr�	_is_AMDK7%rvzWin32CPUInfo._is_AMDK7cCrq�Nrr^�r�rGrrrr�,rvzWin32CPUInfo._is_AMD64cCrk)Nrrsr�rnrGrrrr�1rpzWin32CPUInfo._is_IntelcCrk)Nrr^rzrnrGrrrr�4rpzWin32CPUInfo._is_i386cCrkrtrnrGrrrr�7rpzWin32CPUInfo._is_i486cCrq�Nrr^ryr�rGrrrr�:rvzWin32CPUInfo._is_i586cCrqr�r�rGrrrr�=rvzWin32CPUInfo._is_i686cCrqr�r�rGrrrr�@rvzWin32CPUInfo._is_PentiumcCr�)Nrr^ryr`rur�rGrrrr�Cr|zWin32CPUInfo._is_PentiumMMXcCr�)Nrr^r}r`rr�rGrrrr�Gr|zWin32CPUInfo._is_PentiumProcCrx)Nrr^r}r`)rzryr}r�rGrrrr�Kr|zWin32CPUInfo._is_PentiumIIcCrx)Nrr^r}r`�r~r�r��
�r�rGrrrr�Or|zWin32CPUInfo._is_PentiumIIIcCrqr�r�rGrrrr�SrvzWin32CPUInfo._is_PentiumIVcCrx)Nrr^r}r`)r��
�r�rGrrrr�Vr|zWin32CPUInfo._is_PentiumMcCrx)Nrr^r}r`)r���r�rGrrrr�Zr|zWin32CPUInfo._is_Core2cCr�rFr�rGrrrr�`r�zWin32CPUInfo._is_singleCPUcCr�r3r�rGrrrrHcr�zWin32CPUInfo._getNCPUscCs\|��r|jdddkr|jdddkp|jdddvS|��r,|jdddvSdS)	Nrr^ryr`ru�r}r��ryr}r�F�r�rr�rGrrrr�fs$�zWin32CPUInfo._has_mmxcCs�|��r|jdddkr|jdddvp|jdddkS|��r>|jdddkr5|jdddvp=|jdddkSdS)	Nrr^r}r`r�r�)r}r~r�r�Fr�rGrrrr�os����zWin32CPUInfo._has_ssecCs4|��r|��p|��p|��S|��r|��SdS)NF)r��is_Pentium4�is_PentiumM�is_Core2r��is_AMD64rGrrrr�{s�zWin32CPUInfo._has_sse2cC�|��o|jdddvS)Nrr^r�r�rGrrrr��rvzWin32CPUInfo._has_3dnowcCr�)Nrr^r�r�rGrrrr��rvzWin32CPUInfo._has_3dnowext)$rZr[r\rrfrirjrorvrwr{rr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�rHr�r�r�r�r�rrrrrZ�sD(		rZ�linux�irix�darwin�sunos�win32�cygwin)rr)r]�__all__rrIrK�sysrAr
�
subprocessrrr r#r1r2r^r�rr4rZr=�cpuinforrrrr�<module>sJ




	
�
#D:.J3



https://t.me/RX1948 - 2025