+ <div class="entry">
+ <div class="title"><a href="http://people.skolelinux.org/pere/blog/Coz_profiler_for_multi_threaded_software_is_now_in_Debian.html">Coz profiler for multi-threaded software is now in Debian</a></div>
+ <div class="date">13th November 2016</div>
+ <div class="body"><p><a href="http://coz-profiler.org/">The Coz profiler</a>, a nice
+profiler able to run benchmarking experiments on the instrumented
+multi-threaded program, finally
+<a href="https://tracker.debian.org/pkg/coz-profiler">made it into
+Debian unstable yesterday</A>. LluĂs Vilanova and I have spent many
+months since
+<a href="http://people.skolelinux.org/pere/blog/Coz_can_help_you_find_bottlenecks_in_multi_threaded_software___nice_free_software.html">I
+blogged about the coz tool</a> in August working with upstream to make
+it suitable for Debian. There are still issues with clang
+compatibility, inline assembly only working x86 and minimized
+JavaScript libraries.</p>
+
+<p>To test it, install 'coz-profiler' using apt and run it like this:</p>
+
+<p><blockquote>
+<tt>coz run --- /path/to/binary-with-debug-info</tt>
+</blockquote></p>
+
+<p>This will produce a profile.coz file in the current working
+directory with the profiling information. This is then given to a
+JavaScript application provided in the package and available from
+<a href="http://plasma-umass.github.io/coz/">a project web page</a>.
+To start the local copy, invoke it in a browser like this:</p>
+
+<p><blockquote>
+<tt>sensible-browser /usr/share/coz-profiler/viewer/index.htm</tt>
+</blockquote></p>
+
+<p>See the project home page and the
+<a href="https://www.usenix.org/publications/login/summer2016/curtsinger">USENIX
+;login: article on Coz</a> for more information on how it is
+working.</p>
+</div>
+ <div class="tags">
+
+
+ Tags: <a href="http://people.skolelinux.org/pere/blog/tags/debian">debian</a>, <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>.
+
+
+ </div>
+ </div>
+ <div class="padding"></div>
+
<div class="entry">
<div class="title"><a href="http://people.skolelinux.org/pere/blog/How_to_talk_with_your_loved_ones_in_private.html">How to talk with your loved ones in private</a></div>
<div class="date"> 7th November 2016</div>
</div>
<div class="padding"></div>
- <div class="entry">
- <div class="title"><a href="http://people.skolelinux.org/pere/blog/Coz_can_help_you_find_bottlenecks_in_multi_threaded_software___nice_free_software.html">Coz can help you find bottlenecks in multi-threaded software - nice free software</a></div>
- <div class="date">11th August 2016</div>
- <div class="body"><p>This summer, I read a great article
-"<a href="https://www.usenix.org/publications/login/summer2016/curtsinger">coz:
-This Is the Profiler You're Looking For</a>" in USENIX ;login: about
-how to profile multi-threaded programs. It presented a system for
-profiling software by running experiences in the running program,
-testing how run time performance is affected by "speeding up" parts of
-the code to various degrees compared to a normal run. It does this by
-slowing down parallel threads while the "faster up" code is running
-and measure how this affect processing time. The processing time is
-measured using probes inserted into the code, either using progress
-counters (COZ_PROGRESS) or as latency meters (COZ_BEGIN/COZ_END). It
-can also measure unmodified code by measuring complete the program
-runtime and running the program several times instead.</p>
-
-<p>The project and presentation was so inspiring that I would like to
-get the system into Debian. I
-<a href="https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=830708">created
-a WNPP request for it</a> and contacted upstream to try to make the
-system ready for Debian by sending patches. The build process need to
-be changed a bit to avoid running 'git clone' to get dependencies, and
-to include the JavaScript web page used to visualize the collected
-profiling information included in the source package.
-But I expect that should work out fairly soon.</p>
-
-<p>The way the system work is fairly simple. To run an coz experiment
-on a binary with debug symbols available, start the program like this:
-
-<p><blockquote><pre>
-coz run --- program-to-run
-</pre></blockquote></p>
-
-<p>This will create a text file profile.coz with the instrumentation
-information. To show what part of the code affect the performance
-most, use a web browser and either point it to
-<a href="http://plasma-umass.github.io/coz/">http://plasma-umass.github.io/coz/</a>
-or use the copy from git (in the gh-pages branch). Check out this web
-site to have a look at several example profiling runs and get an idea what the end result from the profile runs look like. To make the
-profiling more useful you include <coz.h> and insert the
-COZ_PROGRESS or COZ_BEGIN and COZ_END at appropriate places in the
-code, rebuild and run the profiler. This allow coz to do more
-targeted experiments.</p>
-
-<p>A video published by ACM
-<a href="https://www.youtube.com/watch?v=jE0V-p1odPg">presenting the
-Coz profiler</a> is available from Youtube. There is also a paper
-from the 25th Symposium on Operating Systems Principles available
-titled
-<a href="https://www.usenix.org/conference/atc16/technical-sessions/presentation/curtsinger">Coz:
-finding code that counts with causal profiling</a>.</p>
-
-<p><a href="https://github.com/plasma-umass/coz">The source code</a>
-for Coz is available from github. It will only build with clang
-because it uses a
-<a href="https://gcc.gnu.org/bugzilla/show_bug.cgi?id=55606">C++
-feature missing in GCC</a>, but I've submitted
-<a href="https://github.com/plasma-umass/coz/pull/67">a patch to solve
-it</a> and hope it will be included in the upstream source soon.</p>
-
-<p>Please get in touch if you, like me, would like to see this piece
-of software in Debian. I would very much like some help with the
-packaging effort, as I lack the in depth knowledge on how to package
-C++ libraries.</p>
-</div>
- <div class="tags">
-
-
- Tags: <a href="http://people.skolelinux.org/pere/blog/tags/debian">debian</a>, <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/nice free software">nice free software</a>.
-
-
- </div>
- </div>
- <div class="padding"></div>
-
<p style="text-align: right;"><a href="index.rss"><img src="http://people.skolelinux.org/pere/blog/xml.gif" alt="RSS feed" width="36" height="14" /></a></p>
<div id="sidebar">
<li><a href="http://people.skolelinux.org/pere/blog/archive/2016/10/">October (3)</a></li>
-<li><a href="http://people.skolelinux.org/pere/blog/archive/2016/11/">November (3)</a></li>
+<li><a href="http://people.skolelinux.org/pere/blog/archive/2016/11/">November (4)</a></li>
</ul></li>
<li><a href="http://people.skolelinux.org/pere/blog/tags/chrpath">chrpath (2)</a></li>
- <li><a href="http://people.skolelinux.org/pere/blog/tags/debian">debian (138)</a></li>
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/debian">debian (139)</a></li>
<li><a href="http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu (157)</a></li>
<li><a href="http://people.skolelinux.org/pere/blog/tags/drivstoffpriser">drivstoffpriser (4)</a></li>
- <li><a href="http://people.skolelinux.org/pere/blog/tags/english">english (331)</a></li>
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/english">english (332)</a></li>
<li><a href="http://people.skolelinux.org/pere/blog/tags/fiksgatami">fiksgatami (23)</a></li>