This is an archive of the discontinued LLVM Phabricator instance.

[llvm-exegesis] Analysis: Show inconsistencies between checked-in and measured data.
ClosedPublic

Authored by courbet on Jun 1 2018, 8:35 AM.

Details

Summary

We now highlight any sched classes whose measurements do not match the
LLVM SchedModel. "bad" clusters are marked in red.

Screenshot in phabricator diff.

Diff Detail

Repository
rL LLVM

Event Timeline

courbet created this revision.Jun 1 2018, 8:35 AM
gchatelet requested changes to this revision.Jun 4 2018, 1:32 AM
gchatelet added inline comments.
tools/llvm-exegesis/lib/Analysis.cpp
178 ↗(On Diff #149481)

Can you assert(!Clusters.empty());

305 ↗(On Diff #149481)

Can you assert(!Clustering.getPoints().empty());?

314 ↗(On Diff #149481)

I would just return an error here and not let the user think the tool ran correctly.

337 ↗(On Diff #149481)

Add an error msg

476 ↗(On Diff #149481)

Can you create variables for SchedClassAndPoints.first and SchedClassAndPoints.second?

tools/llvm-exegesis/lib/Analysis.h
45 ↗(On Diff #149481)

line feed

63 ↗(On Diff #149481)

doc?

72 ↗(On Diff #149481)

Put the definition out of the declaration?

107 ↗(On Diff #149481)

What is this doc for?

This revision now requires changes to proceed.Jun 4 2018, 1:32 AM
courbet updated this revision to Diff 149690.Jun 4 2018, 2:19 AM
courbet marked 4 inline comments as done.
  • Address review comments
  • Implement latency matching.
courbet marked an inline comment as done.Jun 4 2018, 2:20 AM

Thanks PTAL.

tools/llvm-exegesis/lib/Analysis.cpp
314 ↗(On Diff #149481)

Even better: implement it ! :)

courbet updated this revision to Diff 149695.Jun 4 2018, 2:34 AM
courbet marked an inline comment as done.

more doc

courbet updated this revision to Diff 149696.Jun 4 2018, 2:38 AM

more review comments

gchatelet accepted this revision.Jun 4 2018, 2:40 AM
This revision is now accepted and ready to land.Jun 4 2018, 2:40 AM
This revision was automatically updated to reflect the committed changes.