<html>
  <head>
    <meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    Peter will have to answer that. But it seemed to me that it has been
    working fine all the time. I suppose it's just to resolve merge
    conflicts. There were some refactorings he wanted to do. In addition
    to this it will also be some packaging issues I suppose. I'm hoping
    Peter will answer in this mail thread soon, since he knows this much
    better.<br>
    <br>
    /Arash<br>
    <br>
    <div class="moz-cite-prefix">On 2014-08-13 20:01, Johan Tibell
      wrote:<br>
    </div>
    <blockquote
cite="mid:CAK-tuPZ0DX7BoO+M7CsRchKLL3AAiskyw_VRB2c7r1ua_Y=p=A@mail.gmail.com"
      type="cite">
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
      <div dir="ltr">What's the minimal amount of work we need to do to
        just get the dwarf data in the codegen by 7.10 (RC late
        december) so we can start using e.g. linux perf events to
        profile Haskell programs?</div>
      <div class="gmail_extra">
        <br>
        <br>
        <div class="gmail_quote">On Wed, Aug 13, 2014 at 7:31 PM, Arash
          Rouhani <span dir="ltr"><<a moz-do-not-send="true"
              href="mailto:rarash@student.chalmers.se" target="_blank">rarash@student.chalmers.se</a>></span>
          wrote:<br>
          <blockquote class="gmail_quote" style="margin:0 0 0
            .8ex;border-left:1px #ccc solid;padding-left:1ex">
            <div bgcolor="#FFFFFF" text="#000000"> Hi Johan!<br>
              <br>
              I haven't done much (just been lazy) lately, I've tried to
              benchmark my results but I don't get any sensible results
              at all yet.<br>
              <br>
              Last time Peter said he's working on a more portable way
              to read dwarf information that doesn't require Linux. But
              I'm sure he'll give a more acurate update than me soon in
              this mail thread.<br>
              <br>
              As for stack traces, I don't think there's any big tasks
              left, but I summarize what I have in mind:<br>
              <ul>
                <li>The haskell interface is done and I've iterated on
                  it a bit, so it's in a decent shape at least. Some
                  parts still need testing.</li>
                <li>I wish I could implement the `forceCaseContinuation`
                  that I've described in my thesis. If someone is good
                  with code generation (I just suck at it, it's probably
                  simple) and is willing to assist me a bit, please say
                  so. :)</li>
                <li>I tried benchmarking, I gave up after not getting
                  any useful results.<br>
                </li>
                <li>I'm unfortunately totally incapable to help out with
                  dwarf debug data generation, only Peter knows that
                  part, particularly I never grasped his theoretical
                  framework of causality in Haskell.</li>
                <li>Peter and I have finally agreed on a simple and
                  sensible way to implement `catchWithStack` that have
                  all most good properties you would like. I just need
                  to implement it and test it. I can definitely man up
                  and implement this. :)<br>
                </li>
              </ul>
              Here's my master thesis btw [1], it should answer Ömer's
              question of how we retrieve a stack from a language you
              think won't have a stack. :)<br>
              <br>
              Cheers,<br>
              Arash<br>
              <br>
              [1]: <a moz-do-not-send="true"
                href="http://arashrouhani.com/papers/master-thesis.pdf"
                target="_blank">http://arashrouhani.com/papers/master-thesis.pdf</a>
              <div>
                <div class="h5"><br>
                  <br>
                  <br>
                  <br>
                  <br>
                  <div>On 2014-08-13 17:02, Johan Tibell wrote:<br>
                  </div>
                </div>
              </div>
              <blockquote type="cite">
                <div>
                  <div class="h5">
                    <div dir="ltr">Hi,
                      <div><br>
                      </div>
                      <div>How's the integration of DWARF support coming
                        along? It's probably one of the most important
                        improvements to the runtime in quite some time
                        since unlocks *two* important features, namely</div>
                      <div><br>
                      </div>
                      <div> * trustworthy profiling (using e.g. Linux
                        perf events and other low-overhead, code
                        preserving, sampling profilers), and</div>
                      <div> * stack traces.</div>
                      <div><br>
                      </div>
                      <div>The former is really important to move our
                        core libraries performance up a notch. Right now
                        -prof is too invasive for it to be useful when
                        evaluating the hotspots in these libraries
                        (which are already often heavily tuned).</div>
                      <div><br>
                      </div>
                      <div>The latter one is really important for real
                        life Haskell on the server, where you can
                        sometimes can get some crash that only happens
                        once a day under very specific conditions.
                        Knowing where the crash happens is then *very*
                        useful.</div>
                      <div><br>
                      </div>
                      <div>-- Johan</div>
                      <div><br>
                      </div>
                    </div>
                    <br>
                    <fieldset></fieldset>
                    <br>
                  </div>
                </div>
                <div class="">
                  <pre>_______________________________________________
ghc-devs mailing list
<a moz-do-not-send="true" href="mailto:ghc-devs@haskell.org" target="_blank">ghc-devs@haskell.org</a>
<a moz-do-not-send="true" href="http://www.haskell.org/mailman/listinfo/ghc-devs" target="_blank">http://www.haskell.org/mailman/listinfo/ghc-devs</a>
</pre>
                </div>
              </blockquote>
              <br>
            </div>
            <br>
            _______________________________________________<br>
            ghc-devs mailing list<br>
            <a moz-do-not-send="true" href="mailto:ghc-devs@haskell.org">ghc-devs@haskell.org</a><br>
            <a moz-do-not-send="true"
              href="http://www.haskell.org/mailman/listinfo/ghc-devs"
              target="_blank">http://www.haskell.org/mailman/listinfo/ghc-devs</a><br>
            <br>
          </blockquote>
        </div>
        <br>
      </div>
    </blockquote>
    <br>
  </body>
</html>