<html>
<head>
<meta http-equiv="Content-Type" content="text/html;
charset=windows-1252">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<div class="moz-cite-prefix">On 6/19/2017 7:29 PM, Vedant Kumar
wrote:<br>
</div>
<blockquote type="cite"
cite="mid:3FC228D0-E27E-4AE2-AB49-E1A36EA7D335@apple.com"><br
class="">
<div>
<blockquote type="cite" class="">
<div class="">
<div text="#000000" bgcolor="#FFFFFF" class="">
<blockquote type="cite"
cite="mid:622B38E5-4A1F-449E-AFF4-BEC1DE0CF2CA@apple.com"
class="">
<div class="">
<div class="">
<div class="">We can reduce testing time by *not*
instrumented basic tools like count, not,
FileCheck etc. I filed: <a
href="http://llvm.org/PR33501" class=""
moz-do-not-send="true">llvm.org/PR33501</a>.</div>
<div class=""><br class="">
</div>
<blockquote type="cite" class="">
<div class="">
<div class="">3. The generated profile
information takes up a lot of space: llc
generates a 90MB profraw file.<br class="">
</div>
</div>
</blockquote>
<div class=""><br class="">
</div>
<div class="">I don't have any ideas about how to
fix this. You can decrease the space overhead for
raw profiles by altering <span class="">LLVM_PROFILE_</span><span
class="">MERGE_P</span><span class="">OOL_SIZE
from 4 to a lower value.</span></div>
</div>
</div>
</blockquote>
<br class="">
Disk space is cheap, but the I/O takes a long time. I
guess it's specifically bad for LLVM's "make check", maybe
not so bad for other cases.<br class="">
</div>
</div>
</blockquote>
<div><br class="">
</div>
<div>You can speed up "make check" a bit by using
non-instrumented versions of count, not, FileCheck, etc.</div>
</div>
</blockquote>
<br>
I tried looking into this a bit more. It looks like the profile
data file generated by llc contains approximately 5MB of counters
(__llvm_prf_cnts), 10MB of "data" (__llvm_prf_data), and 70MB of
__llvm_prf_names. __llvm_prf_data and __llvm_prf_names contain
which can be read from the original binary, as far as I can tell.
The 80MB of data wouldn't be a big deal if it were just sitting on
disk... but we also erase the whole file and rewrite it from scratch
after we merge profile counters.<br>
<br>
Can we do better here?<br>
<br>
-Eli<br>
<pre class="moz-signature" cols="72">--
Employee of Qualcomm Innovation Center, Inc.
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, a Linux Foundation Collaborative Project</pre>
</body>
</html>