1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
U
O±dºã@sLddlZddlZddlZddlZddlmZdd„ZGdd„dƒZej d¡Z    ej d¡Z
e  ¡Z e  d    e ej ¡Zejje    p~e
p†e d
d Gd d „d eƒƒZe  de ej ¡Zejje     p¾e dd Gdd„deƒƒZe  de ej ¡Zejje     pöe dd Gdd„deƒƒZe  de ej ¡Zejje     p0e dd Gdd„deƒƒZdS)éN)Ú__cpu_features__c
Csd}t|ƒt|ƒ}}||kr"dSttƒ dd¡}z$tddƒ}| d¡}W5QRXWn*tk
r€}z t|ƒ}W5d}~XYnXz*ddl}|jdgtd    d
d }    |         ¡}    Wn*tk
rÖ}z t|ƒ}    W5d}~XYnXddl
}
|
j d |||    fd d} t d|||| fƒ‚dS)NTú'Úú /proc/cpuinfoÚrirú    /bin/trueÚ1©Z LD_SHOW_AUXV©ÚenvaÄ
###########################################
### Extra debugging information
###########################################
-------------------------------------------
--- NumPy Detections
-------------------------------------------
%s
-------------------------------------------
--- SYS / CPUINFO
-------------------------------------------
%s....
-------------------------------------------
--- SYS / AUXV
-------------------------------------------
%s
ú )Úprefixz9Failure Detection
 NAME: '%s'
 ACTUAL: %s
 DESIRED: %s
%s) ÚstrrÚreplaceÚopenÚreadÚ    ExceptionÚ
subprocessÚ check_outputÚdictÚdecodeÚtextwrapÚindentÚAssertionError) ÚactualZdesiredÚfnameZ__tracebackhide__ZdetectedÚfdZcpuinfoÚerrrÚauxvrZ error_report©rúYd:\z\workplace\vscode\pyvenv\venv\Lib\site-packages\numpy/core/tests/test_cpu_features.pyÚassert_features_equals6  ðï
úr!c@sNeZdZgZiZiZeƒZdd„Zdd„Z    dd„Z
dd„Z d    d
„Z d d „Z d S)Ú AbstractTestcCsdS©Nr©Úselfrrr Ú
load_flags9szAbstractTest.load_flagscstˆ ¡ˆj ¡D]0\}}‡fdd„|Dƒ}tt |¡t|ƒ|ƒqˆjD]$}ˆ |¡}t |¡}t|||ƒqJdS)Ncsg|]}ˆ |¡‘qSr)Úcpu_have)Ú.0Úfr$rr Ú
<listcomp>?sz.AbstractTest.test_features.<locals>.<listcomp>)    r&Úfeatures_groupsÚitemsr!rÚgetÚallÚfeaturesr')r%Úgnamer/Ú test_featuresÚ feature_namer'Znpy_haverr$r r1<s
 
 
zAbstractTest.test_featurescCs@|j ||¡}t|tƒr"||jkS|D]}||jkr&dSq&dS)NTF)Ú features_mapr-Ú
isinstancerÚfeatures_flags)r%r2Z    map_namesr)rrr r'Gs
 
 
zAbstractTest.cpu_havecCs| |¡|_dSr#)Úget_cpuinfo_itemr5)r%Ú    magic_keyrrr Úload_flags_cpuinfoPszAbstractTest.load_flags_cpuinfoc    Csltƒ}tdƒT}|D]H}| |¡s$qdd„| dd¡Dƒ}t|ƒdkr| |d ¡ ¡¡}qW5QRX|S)NrcSsg|] }| ¡‘qSr©Ústrip©r(Úsrrr r*Ysz1AbstractTest.get_cpuinfo_item.<locals>.<listcomp>ú:éé)ÚsetrÚ
startswithÚsplitÚlenÚunionÚupper)r%r7ÚvaluesrÚlineZ flags_valuerrr r6Ss
 
 "zAbstractTest.get_cpuinfo_itemcCs~ddl}|jdgtddd}| d¡D]P}| d¡s8q(dd    „| d
d ¡Dƒ}t|ƒd kr(|j |d  ¡     ¡ ¡¡|_q(dS) Nrrrr    r
ó
sAT_HWCAPcSsg|] }| ¡‘qSrr9r;rrr r*dsz0AbstractTest.load_flags_auxv.<locals>.<listcomp>ó:r>r?)
rrrrBrArCr5rDrEr)r%rrÚatZ hwcap_valuerrr Úload_flags_auxv^s
 ÿzAbstractTest.load_flags_auxvN)Ú__name__Ú
__module__Ú __qualname__r/r+r3r@r5r&r1r'r8r6rKrrrr r"3s      r"ÚlinuxÚcygwinz^(amd64|x86|i386|i686)zOnly for Linux and x86)Úreasonc@sÒeZdZddddddddd    d
d d d ddddddddddddddddgZeddddgdddddddgdddddgddddddgdddddddgdddddddddddg dZedd d!d"d#d$d%d&d'd(d)
Zd*d+„Zd,S)-ÚTest_X86_FeaturesZMMXZSSEZSSE2ÚSSE3ZSSSE3ÚSSE41ZPOPCNTÚSSE42ZAVXZF16CZXOPZFMA4ÚFMA3ZAVX2ZAVX512FZAVX512CDZAVX512ERZAVX512PFÚ AVX5124FMAPSÚ AVX5124VNNIWÚAVX512VPOPCNTDQZAVX512VLZAVX512BWZAVX512DQÚ
AVX512VNNIZ
AVX512IFMAZ
AVX512VBMIÚ AVX512VBMI2Ú AVX512BITALG)Z
AVX512_KNLZ
AVX512_KNMZ
AVX512_SKXZ
AVX512_CLXZ
AVX512_CNLZ
AVX512_ICLZPNIZSSE4_1ZSSE4_2ZFMAZ AVX512_VNNIZ AVX512_BITALGZ AVX512_VBMI2Z AVX512_4FMAPSZ AVX512_4VNNIWZAVX512_VPOPCNTDQ)
rSrTrUrVrZr\r[rWrXrYcCs| d¡dS)NÚflags)r8r$rrr r&‰szTest_X86_Features.load_flagsN)rLrMrNr/rr+r3r&rrrr rRns|û
 
ÿ  ÿ ÿø ýrRz^(powerpc|ppc)64zOnly for Linux and Powerc@s.eZdZddddgZeddddZd    d
„Zd S) ÚTest_POWER_FeaturesZVSXÚVSX2ÚVSX3ÚVSX4Z    ARCH_2_07Z    ARCH_3_00ZARCH_3_1)r_r`racCs | ¡dSr#©rKr$rrr r&’szTest_POWER_Features.load_flagsN)rLrMrNr/rr3r&rrrr r^s r^z^(s390x)zOnly for Linux and IBM Zc@seZdZdddgZdd„ZdS)ÚTest_ZARCH_FeaturesZVXZVXEZVXE2cCs | ¡dSr#rbr$rrr r&œszTest_ZARCH_Features.load_flagsN)rLrMrNr/r&rrrr rc—s
rcz^(arm|aarch64)zOnly for Linux and ARMc@s8eZdZddddddgZeddgddgd    Zd
d „Zd S) ÚTest_ARM_FeaturesÚNEONÚASIMDZFPHPZASIMDHPZASIMDDPZASIMDFHMÚHALFÚVFPV4)Z    NEON_FP16Z
NEON_VFPV4cCsf| d¡| d¡}|r0tdtt|ƒƒƒdknd}t dt¡sD|rVtdddd|_    n td    d
|_    dS) NZFeatureszCPU architectureÚ0érz^(aarch64|AARCH64)rf)rergrh)ZAESÚSHA1ZSHA2ZPMULLZCRC32)rf)
r8r6ÚintÚnextÚiterÚreÚmatchÚmachinerr3)r%ÚarchZ is_rootfs_v8rrr r&ªs
 
 ÿ
üzTest_ARM_Features.load_flagsN)rLrMrNr/rr+r&rrrr rd¡sÿþrd)ÚsysÚplatformroZpytestZnumpy.core._multiarray_umathrr!r"rAZis_linuxZ    is_cygwinrqrpÚ
IGNORECASEZis_x86ÚmarkZskipifrRZis_powerr^Zis_zarchrcZis_armrdrrrr Ú<module>s.  /7  ÿÿ