Uc@sdZdgZddlZddlZddlZddlZddlZddlZddlZd ddZ d!ddZ d"ddZ d#dd Z d e fd YZd efd YZdefdYZdefdYZdefdYZdefdYZejjdr>eZnejjdrYeZnoejdkrqeZnWejjdreZn<ejjdreZn!ejjdreZneZeZedkrejejejdGxeeD]qZeddkr eddkr eeedZer}edkrodedefGqzedGq}q q WHndS($s` cpuinfo Copyright 2002 Pearu Peterson all rights reserved, Pearu Peterson 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 tcpuiNiicCsytj|\}}Wn6tk rQ}tjt|td|t|fSXtj |rtj ||krt |fSt|fS(Nt stacklevel( tcommandstgetstatusoutputtEnvironmentErrortwarningstwarntstrt UserWarningtFalsetost WIFEXITEDt WEXITSTATUStTrue(tcmdtsuccessful_statusRtstatustoutputte((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt getoutputs $ cKsZi}xM|D]E}t||d|d|d\}}|r |j||LscSsdS(N(tNone(((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyR*Ns(t startswiththasattrtgetattrttypettypest MethodTypeR'tAttributeError(R%tnameR)((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt __getattr__Gs cCsdS(Ni((R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt _getNCPUsQscCs5tjd}tjdj|jd}|S(Nis(\d+)biti(tplatformt architecturetretcompiletsearchtgroup(R%tabitstnbits((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt __get_nbitsTs!cCs|jdkS(Nt32(t_CPUInfoBase__get_nbits(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt _is_32bitYscCs|jdkS(Nt64(R@(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt _is_64bit\s( t__name__t __module__t__doc__R'R4R5R@RARC(((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyR$<s    t LinuxCPUInfocBseZd.ZdZdZdZdZdZdZ dZ dZ dZ d Z d Zd Zd Zd ZdZdZdZdZeZdZdZdZdZdZdZdZdZdZdZ dZ!dZ"dZ#dZ$d Z%d!Z&d"Z'e'Z(d#Z)d$Z*d%Z+d&Z,d'Z-d(Z.d)Z/d*Z0d+Z1d,Z2d-Z3RS(/c Cs6|jdk rdSig}td\}}|rK|j|ddscCs |jdS(Ni(R(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt _is_r5000?scCs |jdS(Nip(R(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt _is_r6000@scCs |jdS(Ni@(R(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt _is_r8000AscCs |jdS(Ni'(R(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt _is_r10000BscCs |jdS(Ni.(R(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt _is_r12000CscCs |jdS(Ntorion(R(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt _is_rorionDscCs"y|jjdSWnnXdS(NtMACHINE(RR(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pytget_ipFscCs |jjdjd|kS(NRsip%s(RRR(R%R((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt __machineIscCs |jdS(Ni(t_IRIXCPUInfo__machine(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt_is_IP19KscCs |jdS(Ni(R(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt_is_IP20LscCs |jdS(Ni(R(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt_is_IP21MscCs |jdS(Ni(R(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt_is_IP22NscCs|jdo|jS(Ni(RR(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt _is_IP22_4kOscCs|jdo|jS(Ni(RR(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt _is_IP22_5kPscCs |jdS(Ni(R(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt_is_IP24QscCs |jdS(Ni(R(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt_is_IP25RscCs |jdS(Ni(R(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt_is_IP26SscCs |jdS(Ni(R(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt_is_IP27TscCs |jdS(Ni(R(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt_is_IP28UscCs |jdS(Ni(R(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt_is_IP30VscCs |jdS(Ni (R(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt_is_IP32WscCs|jdo|jS(Ni (RR(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt _is_IP32_5kXscCs|jdo|jS(Ni (RR(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt _is_IP32_10kYsN()RDRER+RRQRRRR5RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR(((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyR"sL                                    t DarwinCPUInfocBseZdZdZdZdZdZdZdZ dZ dZ dZ d Z d Zd Zd Zd ZdZdZdZdZdZdZdZdZdZdZdZRS(cCsN|jdk rdStdddd}tddd|d<||j_dS(Ntarchtmachines sysctl hwRt=t sysctl_hw(RR+RR#RM(R%R((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyRQ_s   cCsdS(N((R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyRRgscCst|jdjddS(NRshw.ncpui(RRR(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyR5iscCs|jdddkS(NRs hw.machinesPower Macintosh(R(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt_is_Power_MacintoshlscCs|jddkS(NRti386(R(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyRoscCs|jddkS(NRtppc(R(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt_is_ppcqscCs|jdd|kS(NRsppc%s(R(R%R((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyRtscCs |jdS(NiY(t_DarwinCPUInfo__machine(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt _is_ppc601vscCs |jdS(NiZ(R(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt _is_ppc602wscCs |jdS(Ni[(R(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt _is_ppc603xscCs |jdS(Nt603e(R(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt _is_ppc603eyscCs |jdS(Ni\(R(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt _is_ppc604zscCs |jdS(Nt604e(R(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt _is_ppc604e{scCs |jdS(Nil(R(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt _is_ppc620|scCs |jdS(Niv(R(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt _is_ppc630}scCs |jdS(Ni(R(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt _is_ppc740~scCs |jdS(Ni(R(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt _is_ppc7400scCs |jdS(Ni(R(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt _is_ppc7450scCs |jdS(Ni(R(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt _is_ppc750scCs |jdS(Ni(R(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt _is_ppc403scCs |jdS(Ni(R(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt _is_ppc505scCs |jdS(Ni!(R(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt _is_ppc801scCs |jdS(Ni5(R(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt _is_ppc821scCs |jdS(Ni7(R(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt _is_ppc823scCs |jdS(Ni\(R(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt _is_ppc860sN(RDRER+RRQRRR5RRRRRRRRRRRRRRRRRRRRRR(((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyR\s4                        t SunOSCPUInfocBseZdZdZdZdZdZdZdZ dZ dZ dZ d Z d Zd Zd Zd ZdZdZdZdZdZdZdZdZdZdZdZRS(c Cs|jdk rdStdddddddddd}tdd d |d [\w\d]+) processor operates attpt processor( RR+RR#RR8R[R;RM(R%RRtm((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyRQs  cCsdS(N((R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyRRscCs|jddkS(NRR(R(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyRscCs|jddkS(NRtsparc(R(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt _is_sparcscCs|jddkS(NRtsparcv9(R(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt _is_sparcv9scCst|jdjddS(NRtNumCPUi(RRR(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyR5scCs|jddkS(NRtsun4(R(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt_is_sun4scCstjd|jddk S(NtSUNWR(R8R[RR+(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt_is_SUNWscCstjd|jddk S(Ns.*SPARCstation-5R(R8R[RR+(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt_is_sparcstation5scCstjd|jddk S(Ns .*Ultra-1R(R8R[RR+(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt _is_ultra1scCstjd|jddk S(Ns .*Ultra-250R(R8R[RR+(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt _is_ultra250scCstjd|jddk S(Ns .*Ultra-2R(R8R[RR+(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt _is_ultra2scCstjd|jddk S(Ns .*Ultra-30R(R8R[RR+(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt _is_ultra30scCstjd|jddk S(Ns .*Ultra-4R(R8R[RR+(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt _is_ultra4scCstjd|jddk S(Ns .*Ultra-5_10R(R8R[RR+(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt _is_ultra5_10scCstjd|jddk S(Ns .*Ultra-5R(R8R[RR+(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt _is_ultra5scCstjd|jddk S(Ns .*Ultra-60R(R8R[RR+(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt _is_ultra60scCstjd|jddk S(Ns .*Ultra-80R(R8R[RR+(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt _is_ultra80scCstjd|jddk S(Ns.*Ultra-EnterpriseR(R8R[RR+(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt_is_ultraenterpricescCstjd|jddk S(Ns.*Ultra-Enterprise-10000R(R8R[RR+(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt_is_ultraenterprice10kscCstjd|jddk S(Ns .*Sun-FireR(R8R[RR+(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt _is_sunfirescCstjd|jddk S(Ns.*UltraR(R8R[RR+(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt _is_ultrascCs|jddkS(NRtsparcv7(R(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt_is_cpusparcv7scCs|jddkS(NRtsparcv8(R(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt_is_cpusparcv8scCs|jddkS(NRR(R(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt_is_cpusparcv9sN(RDRER+RRQRRRRRR5RRRRRRRRRRRRRRRR R R R(((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyRs4                        t Win32CPUInfocBs+eZd ZdZdZdZdZdZdZ dZ dZ dZ d Z d Zd Zd Zd ZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZ dZ!dZ"dZ#RS(!s,HARDWARE\DESCRIPTION\System\CentralProcessorc Cs|jdk rdSg}yddl}tjdtj}|j|j|j}d}xAy|j ||}Wn|j k rPq^X|d7}|j i|d6|j||}d}xt ry|j ||\} } } Wn|j k rPqX|d}| |d| <| dkr|j| } | rt| jd|dd\d+)\s+model\s+(?P\d+)\s+stepping\s+(?P\d+)iit Processort IdentifiertFMLtFamilytMDLtModeltSTPtSteppings (ignoring)(RR+t_winregR8R9RtOpenKeytHKEY_LOCAL_MACHINEtpkeytEnumKeyterrorRKR t EnumValueR:RR;tsyst exc_valueRM( R%RRtprgxtchndtpnumtproctphndtpidxR3RPtvtpetsrch((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyRQsD       .cCsdS(N((R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyRRscCs|jdddkS(NitVendorIdentifierRT(R(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyRUscCs!|jo |jdddkS(NiRi(RaR(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt _is_Am486 scCs!|jo |jdddkS(NiRi(RaR(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt _is_Am5x86 scCs8|jo7|jdddko7|jdddkS( NiRiRiii(iiii(RaR(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt _is_AMDK5s#cCs8|jo7|jdddko7|jdddkS(NiRiRii(ii(RaR(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt _is_AMDK6s#cCs8|jo7|jdddko7|jdddkS(NiRiRi(RaR(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt _is_AMDK6_2s#cCs8|jo7|jdddko7|jdddkS(NiRiRi (RaR(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt _is_AMDK6_3s#cCs!|jo |jdddkS(NiRi(RaR(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt _is_AMDK7 scCs!|jo |jdddkS(NiRi(RaR(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyRb'scCs|jdddkS(NiR)Rr(R(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyRs,scCs|jdddkS(NiRi(R(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyR/scCs|jdddkS(NiRi(R(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyRu2scCs!|jo |jdddkS(NiRi(RwR(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyRx5scCs!|jo |jdddkS(NiRi(RwR(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyRz8scCs!|jo |jdddkS(NiRi(RwR(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyR|;scCs8|jo7|jdddko7|jdddkS(NiRiRi(RwR(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyR>s#cCs8|jo7|jdddko7|jdddkS(NiRiRi(RwR(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyR~Bs#cCs8|jo7|jdddko7|jdddkS(NiRiRii(iii(RwR(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyR}Fs#cCs8|jo7|jdddko7|jddd kS( NiRiRiii i i (iii i i (RwR(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyRJs#cCs!|jo |jdddkS(NiRi(RwR(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyRNscCs8|jo7|jdddko7|jdddkS( NiRiRi i i(i i i(RwR(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyRQs#cCs8|jo7|jdddko7|jdddkS( NiRiRiii(iii(RwR(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyRUs#cCst|jdkS(Ni(RR(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyR[scCs t|jS(N(RR(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyR5^scCsx|jrO|jdddkr:|jdddkpN|jdddkS|jrp|jddd kStSdS( NiRiRiii(ii(iii(RwRRaR (R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyRas  . cCs|jrO|jdddkr:|jddd kpN|jddd kS|jr|jdddkr|jddd kp|jddd kStSdS( NiRiRiii i i i(iii i i (iiii (RwRRaR (R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyRjs  cCsL|jr.|jp-|jp-|jS|jrD|jStSdS(N(Rwt is_Pentium4t is_PentiumMtis_Core2Ratis_AMD64R (R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyRvs     cCs!|jo |jdddkS(NiRiii(iii(RaR(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyRscCs!|jo |jdddkS(NiRii(ii(RaR(R%((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyRsN($RDRER+RRRQRRRUR*R+R,R-R.R/R0RbRsRRuRxRzR|RR~R}RRRRRR5RRRRR(((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyRsB '                          tlinuxtirixtdarwintsunostwin32tcygwint__main__sCPU information:R(s%s=%s(i(i(i(i(RFt__all__RR8R0R RRR6RRRR#tobjectR$RGRRRRR,tcpuinfoRRDtis_blaaRwRjtdirR3R.tr(((s;/usr/lib/python2.7/site-packages/numpy/distutils/cpuinfo.pyt sX $       #:.J