Hi Victor,
Sorry for the late reply. Thanks for the interest!
I'm not sure what's happened to the talk video, but my assumption at
this
late stage is that it's not going to appear.
I've now linked to the slides from the conference page, as well as the
poster I presented:
slides:
http://llvm.org/devmtg/2018-04/slides/Bedwell-Measuring_the_User_Debugging_Experience.pdf
poster:
http://llvm.org/devmtg/2018-04/slides/Bedwell-Measuring_the_User_Debugging_Experience_poster.png
The idea behind the DExTer project is similar in some respects to that of
the debuginfo-tests project in that it's a way of performing an integration
test between the compiler and debugger. The difference is the focus on
attempting to heuristically apply a 'score' to the user debug experience
rather than providing a pass/fail result so that we can use it to provide a
somewhat 'independent' measure of how good that experience is.
I've been using dexter in conjunction with debugify [
http://llvm.org/docs/SourceLevelDebugging.html#testing-debug-info-preservation-in-optimizations
] and what I'm finding is that they are nicely complementary approaches to
each other. Debugify is really nice for finding clear cases of IR->IR
transformations that are clearly doing the wrong thing, and it's a really
easy workflow for automatically generating simple testcases and creating
lit tests. Dexter has been really useful for verifying that any fixes
actually made a positive impact on the actual experience of debugging as
well as finding optimized debugging issues in the back-end of the compiler
at machine level.
A few relevant bug reports where I've made use of the analysis:
https://bugs.llvm.org/show_bug.cgi?id=37234 - regression in the optimized
debugging experience (now fixed)
https://bugs.llvm.org/show_bug.cgi?id=37741 - instcombine losing track of a
variable
https://bugs.llvm.org/show_bug.cgi?id=37682 - LICM makes debugging worse
The last one is interesting because it's a case where the general consensus
is that the compiler is doing everything correctly, but the debugging is
clearly worse and we don't appear to have the expressive capability to
explain to the user what's happening and so dexter scores it down. This
probably means that this a prime candidate to assess the performance impact
of disabling for Og [ https://bugs.llvm.org/show_bug.cgi?id=20765 ], which
is something I'm keen to look at once we've got O2/O3 debugging as good
as
it's reasonably going to get in the near future.
I'm now almost clear of the very final hurdle in terms of being able to
make dexter open source (no matter how complicated you think the internal
review process is going to be, it seems it's always slightly more
complicated than that), so hopefully I'll be able to post an update on that
very shortly.
Thanks,
-Greg
On 30 July 2018 at 06:59, Victor Leschuk <vleschuk at gmail.com> wrote:
> Hello Greg, according to llvm.org you conducted tech "Measuring the
User
> Debugging Experience" at the last EuroLLVM meeting. I wasn't
present at the
> conference however I find the description of this topic very interesting (I
> am currently involved in development of LVLM DebugInfo subsystem).
> Unfortunately materials (slides or video) of your speech are not present at
> llvm.org web-site. Do you have any links/files/articles on this? Maybe
> you could share them?
>
> --
> Best Regards,
> Victor
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
<http://lists.llvm.org/pipermail/llvm-dev/attachments/20180803/ad697e2a/attachment.html>