Warn on instructions that should have the same performance
characteristics according to the sched model but actually
differ in their benchmarks.
Next step: Make the display nicer to browse, I was thinking maybe html.
Paths
| Differential D46945
[llvm-exegesis] Analysis: detect clustering inconsistencies. ClosedPublic Authored by courbet on May 16 2018, 7:44 AM.
Details Summary Warn on instructions that should have the same performance Next step: Make the display nicer to browse, I was thinking maybe html.
Diff Detail
Event TimelineComment Actions Sample output: Sched Class MOVSX32rr16_MOVSX32rr8_MOVSX32rr8_NOREX_MOVSX64rr16_MOVSX64rr8_MOVZX32rr16_MOVZX32rr8_MOVZX32rr8_NOREX_MOVZX64rr16_MOVZX64rr8 contains instructions with distinct performance characteristics, falling into 2 clusters: 2,MOVSX32rr16,,1.01 3,MOVSX32rr8,,2.01 2,MOVSX32rr8_NOREX,,1.01 2,MOVSX64rr16,,1.01 2,MOVZX32rr16,,1.00 3,MOVZX32rr8,,2.01 3,MOVZX32rr8_NOREX,,2.01 2,MOVZX64rr16,,1.00 Sched Class ADC16ri_ADC16ri8_ADC32ri_ADC32ri8_ADC64ri32_ADC64ri8_ADC8ri_ADC8ri8_ADC16rr_ADC16rr_REV_ADC32rr_ADC32rr_REV_ADC64rr_ADC64rr_REV_ADC8rr_ADC8rr_REV_ADC16i16_ADC32i32_ADC64i32_ADC8i8_SBB16ri_SBB16ri8_SBB32ri_SBB32ri8_SBB64ri32_SBB64ri8_SBB8ri_SBB8ri8_SBB16rr_SBB16rr_REV_SBB32rr_SBB32rr_REV_SBB64rr_SBB64rr_REV_SBB8rr_SBB8rr_REV_SBB16i16_SBB32i32_SBB64i32_SBB8i8 contains instructions with distinct performance characteristics, falling into 2 clusters: 3,ADC8i8,,2.00 2,ADC8ri,,1.01 3,SBB8i8,,2.01 2,SBB8ri,,1.01 Sched Class EXTRACTPSrr_VEXTRACTPSrr contains instructions with distinct performance characteristics, falling into 2 clusters: 4,EXTRACTPSrr,,3.00 3,VEXTRACTPSrr,,2.01 Sched Class WriteVecExtract contains instructions with distinct performance characteristics, falling into 2 clusters: 9,VPEXTRBrr,,1.50 4,VPEXTRWrr,,3.01 Sched Class WriteCRC32 contains instructions with distinct performance characteristics, falling into 2 clusters: 4,CRC32r32r16,,3.01 4,CRC32r32r32,,3.00 11,CRC32r32r8,,4.01 4,CRC32r64r64,,3.01 4,CRC32r64r8,,3.00 Sched Class WritePMULLD contains instructions with distinct performance characteristics, falling into 2 clusters: 13,PMULLDrr,,10.01 14,VPMULLDrr,,11.01 This revision is now accepted and ready to land.May 17 2018, 2:54 AM Closed by commit rL332601: [llvm-exegesis] Analysis: detect clustering inconsistencies. (authored by courbet). · Explain WhyMay 17 2018, 5:29 AM This revision was automatically updated to reflect the committed changes.
Revision Contents
Diff 147299 llvm/trunk/tools/llvm-exegesis/lib/Analysis.h
llvm/trunk/tools/llvm-exegesis/lib/Analysis.cpp
llvm/trunk/tools/llvm-exegesis/llvm-exegesis.cpp
|