CI AVX512环境下MKLML只能运行在AVX2的问题
Created by: yihuaxu
最初发现本地AVX512指令集的机器与CI 上运行PR#15226时结果表现不一致, 如果强行让本地机器上的MKLML通过设置MKL_CBWR=AVX2得到其结果与CI一致。 通过修改PadddlePaddle测试脚本(Patch)检查cpu的flag时,得知像AVX512DQ、AVX512BW、AVX512VL这样flag在CI 环境里都不存在, 从而导致MKLML在检查CPU类型时候不能认为可以支持AVX512。能否帮检查下CI里的cpu flag和真实机器里的区别?
1)PaddlePaddle版本:15444430 2)CPU: 本地: Intel(R) Xeon(R) Gold 6140 CPU @ 2.30GHz CI: Intel(R) Xeon(R) Gold 5117 CPU @ 2.00GHz / 集点: yq01-gpu-255-143-12-00 MKLML: mklml_lnx_2019.0.1.20181227 3)差异: a) lscpu 命令 本地: Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid dca sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch epb cat_l3 cdp_l3 intel_ppin intel_pt ssbd mba ibrs ibpb stibp tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 erms invpcid rtm cqm mpx rdt_a avx512f avx512dq rdseed adx smap clflushopt clwb avx512cd avx512bw avx512vl xsaveopt xsavec xgetbv1 cqm_llc cqm_occup_llc cqm_mbm_total cqm_mbm_local dtherm ida arat pln pts hwp hwp_act_window hwp_epp hwp_pkg_req pku ospke spec_ctrl intel_stibp CI: Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon rep_good nopl eagerfpu pni pclmulqdq ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch arat fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 erms invpcid rtm mpx avx512f rdseed adx smap avx512cd xsaveopt xsavec xgetbv1 b)leaf7_test 本地: leaf 07H: eax=0x0 ebx=0xd39ffffb ecx=0x8, edx=0x0 AVX2 1 AVX512F 1 AVX512DQ 1 AVX512CD 1 AVX512BW 1 AVX512VL 1 CI: [04:39:51]leaf 07H: eax=0x0 ebx=0x101d4fbb ecx=0x0, edx=0x0 [04:39:51]AVX2 1 [04:39:51]AVX512F 1 [04:39:51]AVX512DQ 0 [04:39:51]AVX512CD 1 [04:39:51]AVX512BW 0 [04:39:51]AVX512VL 0 4)Log: CI完整log: http://ci.paddlepaddle.org/viewLog.html?buildId=74563&buildTypeId=Paddle_PrCi&tab=buildLog&_focus=23466#_state=94 [Step 1/1] -- Performing Test AVX512F_FOUND [Step 1/1] -- Performing Test AVX512F_FOUND - Success <~snip~> MKL_VERBOSE Intel(R) MKL 2019.0 Update 1 Product build 20181227 for Intel(R) 64 architecture Intel(R) Advanced Vector Extensions 2 (Intel(R) AVX2) enabled processors, Lnx 2.00GHz lp64 intel_thread