X-Git-Url: http://pere.pagekite.me/gitweb/homepage.git/blobdiff_plain/c8233dad2dd7e42afdd9c0cd89d53f5c4af25f58..c377f7290d89b193518b495fc8e9e639ebf3e849:/blog/index.html diff --git a/blog/index.html b/blog/index.html index 98b5491edb..c223fd2eb9 100644 --- a/blog/index.html +++ b/blog/index.html @@ -19,6 +19,52 @@ +
+
Coz profiler for multi-threaded software is now in Debian
+
13th November 2016
+

The Coz profiler, a nice +profiler able to run benchmarking experiments on the instrumented +multi-threaded program, finally +made it into +Debian unstable yesterday. Lluís Vilanova and I have spent many +months since +I +blogged about the coz tool 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.

+ +

To test it, install 'coz-profiler' using apt and run it like this:

+ +

+coz run --- /path/to/binary-with-debug-info +

+ +

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 project web page. +To start the local copy, invoke it in a browser like this:

+ +

+sensible-browser /usr/share/coz-profiler/viewer/index.htm +

+ +

See the project home page and the +USENIX +;login: article on Coz for more information on how it is +working.

+
+
+ + + Tags: debian, english. + + +
+
+
+
How to talk with your loved ones in private
7th November 2016
@@ -962,82 +1008,6 @@ electronic form.

-
-
Coz can help you find bottlenecks in multi-threaded software - nice free software
-
11th August 2016
-

This summer, I read a great article -"coz: -This Is the Profiler You're Looking For" 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.

- -

The project and presentation was so inspiring that I would like to -get the system into Debian. I -created -a WNPP request for it 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.

- -

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: - -

-coz run --- program-to-run
-

- -

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 -http://plasma-umass.github.io/coz/ -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.

- -

A video published by ACM -presenting the -Coz profiler is available from Youtube. There is also a paper -from the 25th Symposium on Operating Systems Principles available -titled -Coz: -finding code that counts with causal profiling.

- -

The source code -for Coz is available from github. It will only build with clang -because it uses a -C++ -feature missing in GCC, but I've submitted -a patch to solve -it and hope it will be included in the upstream source soon.

- -

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.

-
-
- - - Tags: debian, english, nice free software. - - -
-
-
-

RSS feed