<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <p><br>
    </p>
    <div class="moz-cite-prefix">On 4/3/20 11:56 AM, Ehud Katz via
      llvm-dev wrote:<br>
    </div>
    <blockquote type="cite"
cite="mid:CALnD+Ro6an=drTsdZ-JqBQxX_ReSCF7CfKzskwZ8KxXK4JG=SA@mail.gmail.com">
      <pre class="moz-quote-pre" wrap="">I'm in favor for this change.

I've also done some testing myself and noticed only about 1-2% increase of
memory, in exchange for about 1-3% increase of speed.
I can't say that a speedup of 3% (at most, and usually 1%), worth working
for, this is a simple change, that give a lot more than this; especially
simpler code path (also easier debugging).

As part of my measurements, while compiling "deal.II", the maximum number
of simultaneous `Use` instances was 2,728,963 (and in most cases, about
half of it).
In a 64-bit process (Clang for that matter), we will have roughly 21 MB of
memory spent on the extra pointer (of 8 bytes size).
On a 16-core machine, for which, in many cases, a build will trigger that
many simultaneous Clang processes, we will reach, in the worst case, 336 MB
more memory spent on compilation.

Is it worth it? I think it is. But I am not sure I see the whole picture -
are there low-memory systems that need to run LLVM on?

I am not sure what needs to be done to approve such a fundamental change;
especially when we can't prove the Waymarking was needed at all.</pre>
    </blockquote>
    <p>I guess if no-one brings forth arguments (= results) for keeping
      it and</p>
    <p>people continue to support replacing it, we will replace it.
      There should</p>
    <p>be a grace period in which people have the chance to do their
      benchmarking</p>
    <p> (basically what is happening), but I don't recall a problem
      being reported yet.</p>
    <p><br>
    </p>
    <p>Cheers,</p>
    <p>  Johannes</p>
    <p><br>
    </p>
    <p>P.S. Thanks for sharing your findings!<br>
    </p>
    <p><br>
    </p>
    <blockquote type="cite"
cite="mid:CALnD+Ro6an=drTsdZ-JqBQxX_ReSCF7CfKzskwZ8KxXK4JG=SA@mail.gmail.com">
      <pre class="moz-quote-pre" wrap="">
On Thu, Apr 2, 2020 at 8:10 PM Chris Lattner via llvm-dev <
<a class="moz-txt-link-abbreviated" href="mailto:llvm-dev@lists.llvm.org">llvm-dev@lists.llvm.org</a>> wrote:

</pre>
      <blockquote type="cite">
        <pre class="moz-quote-pre" wrap="">On Apr 1, 2020, at 5:51 AM, <a class="moz-txt-link-abbreviated" href="mailto:Tyker1@outlook.com">Tyker1@outlook.com</a> via llvm-dev <
<a class="moz-txt-link-abbreviated" href="mailto:llvm-dev@lists.llvm.org">llvm-dev@lists.llvm.org</a>> wrote:


Hi llvm-dev,

I have a patch open for review that removes waymarking
<a class="moz-txt-link-freetext" href="https://reviews.llvm.org/D77144">https://reviews.llvm.org/D77144</a>.

This patch removes waymarking and replaces it with storing a pointer to
the User in the Use.
 when compiling the CTMark tests of the test suite, this give an average
of +1.8% max memory use and -1.1% compile time.

Removing Waymarking also simplifies the code of Use and User.


Waymarking is very complicated, and I’d be generally +1 on removing it if
it is not paying for itself.  It is also nice to see compiler speedups!

I’m curious about kimwitu++ though - when waymarking initially landed, it
was a significant memory size win for that.  Do you have any idea why
you’re not seeing the same difference?  Is it possible that different
things were being measured back then?

-Chris
_______________________________________________
LLVM Developers mailing list
<a class="moz-txt-link-abbreviated" href="mailto:llvm-dev@lists.llvm.org">llvm-dev@lists.llvm.org</a>
<a class="moz-txt-link-freetext" href="https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev">https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev</a>

</pre>
      </blockquote>
      <pre class="moz-quote-pre" wrap="">
</pre>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <pre class="moz-quote-pre" wrap="">_______________________________________________
LLVM Developers mailing list
<a class="moz-txt-link-abbreviated" href="mailto:llvm-dev@lists.llvm.org">llvm-dev@lists.llvm.org</a>
<a class="moz-txt-link-freetext" href="https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev">https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev</a>
</pre>
    </blockquote>
  </body>
</html>