aboutsummaryrefslogtreecommitdiff
blob: c7ae49dd04fa9748aa1eb8d5649ae7f4877a677f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
	<maintainer type="person">
		<email>lssndrbarbieri@gmail.com</email>
		<name>Alessandro Barbieri</name>
	</maintainer>
	<use>
		<flag name="unix">Adds a Unix backend collector</flag>
		<!--<flag name="xen">Adds a Xen MirageOS backend collector</flag>-->
	</use>
	<longdescription lang="en">This library can be used to trace execution of OCaml/Lwt programs (such as
Mirage unikernels) at the level of Lwt threads.	The traces can be viewed using
JavaScript or GTK viewers provided by [mirage-trace-viewer][] or processed by
tools supporting the [Common Trace Format (CTF)][ctf].	Some example traces can
be found in the blog post [Visualising an Asynchronous
Monad](http://roscidus.com/blog/blog/2014/10/27/visualising-an-asynchronous-monad/).

Libraries can use the functions mirage-profile provides to annotate the traces
with extra information.	When compiled against a normal version of Lwt,
mirage-profile's functions are null-ops (or call the underlying untraced
operation, as appropriate) and OCaml's cross-module inlining will optimise
these calls away, meaning there should be no overhead in the non-profiling
case.</longdescription>
	<upstream>
		<doc>https://mirage.github.io/mirage-profile/</doc>
		<bugs-to>https://github.com/mirage/mirage-profile/issues</bugs-to>
		<remote-id type="github">mirage/mirage-profile</remote-id>
		<maintainer>
			<name>Thomas Leonard</name>
			<email>talex5@gmail.com</email>
		</maintainer>
	</upstream>
</pkgmetadata>