Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 2 Apr 2017 01:06:26 +0000 (UTC)
From:      Johannes M Dieterich <jmd@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r437514 - in head/benchmarks: . flamegraph
Message-ID:  <201704020106.v3216QHH078606@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: jmd
Date: Sun Apr  2 01:06:25 2017
New Revision: 437514
URL: https://svnweb.freebsd.org/changeset/ports/437514

Log:
  new port: benchmarks/flamegraph
  
  A trivial port of Brendan Gregg's collection of flamegraph scripts (a lot of shebang-fixes). This will allow developers to visually profile output from, e.g., ljp and dtrace to locate CPU and memory hogs in workloads.
  
  Reviewed by:	swills (mentor)
  Approved by:	swills (mentor)
  Differential Revision:	https://reviews.freebsd.org/D10233

Added:
  head/benchmarks/flamegraph/
  head/benchmarks/flamegraph/Makefile   (contents, props changed)
  head/benchmarks/flamegraph/distinfo   (contents, props changed)
  head/benchmarks/flamegraph/pkg-descr   (contents, props changed)
  head/benchmarks/flamegraph/pkg-plist   (contents, props changed)
Modified:
  head/benchmarks/Makefile

Modified: head/benchmarks/Makefile
==============================================================================
--- head/benchmarks/Makefile	Sun Apr  2 00:38:40 2017	(r437513)
+++ head/benchmarks/Makefile	Sun Apr  2 01:06:25 2017	(r437514)
@@ -18,6 +18,7 @@
     SUBDIR += fhourstones
     SUBDIR += filebench
     SUBDIR += fio
+    SUBDIR += flamegraph
     SUBDIR += flops
     SUBDIR += flowgrind
     SUBDIR += forkbomb

Added: head/benchmarks/flamegraph/Makefile
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/benchmarks/flamegraph/Makefile	Sun Apr  2 01:06:25 2017	(r437514)
@@ -0,0 +1,52 @@
+# Created by: Johannes Dieterich <jmd@FreeBSD.org>
+# $FreeBSD$
+
+PORTNAME=	flamegraph
+PORTVERSION=	g20170308
+CATEGORIES=	benchmarks
+
+MAINTAINER=	jmd@FreeBSD.org
+COMMENT=	Stack trace visualizer
+
+LICENSE=	CDDL
+LICENSE_FILE=	${WRKSRC}/docs/cddl1.txt
+
+BUILD_DEPENDS=	bash>=0:shells/bash
+RUN_DEPENDS=	bash>=0:shells/bash
+
+USE_GITHUB=	yes
+GH_ACCOUNT=	brendangregg
+GH_PROJECT=	FlameGraph
+GH_TAGNAME=	74764af
+
+USES=		shebangfix perl5
+NO_BUILD=	yes
+
+SHEBANG_FILES=	*.pl *.sh
+
+SOURCE_FILES=	aix-perf.pl \
+		difffolded.pl \
+		files.pl \
+		flamegraph.pl \
+		pkgsplit-perf.sh \
+		range-perf.pl \
+		stackcollapse-aix.pl \
+		stackcollapse-elfutils.pl \
+		stackcollapse-gdb.pl \
+		stackcollapse-go.pl \
+		stackcollapse-instruments.pl \
+		stackcollapse-jstack.pl \
+		stackcollapse-ljp.awk \
+		stackcollapse-perf.pl \
+		stackcollapse-pmc.pl \
+		stackcollapse-recursive.pl \
+		stackcollapse-stap.pl \
+		stackcollapse-vtune.pl \
+		stackcollapse.pl
+
+do-install:
+.for FILE in ${SOURCE_FILES}
+	${INSTALL_DATA} ${WRKSRC}/${FILE} ${STAGEDIR}/${PREFIX}/bin/${FILE}
+.endfor
+
+.include <bsd.port.mk>

Added: head/benchmarks/flamegraph/distinfo
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/benchmarks/flamegraph/distinfo	Sun Apr  2 01:06:25 2017	(r437514)
@@ -0,0 +1,3 @@
+TIMESTAMP = 1491067519
+SHA256 (brendangregg-FlameGraph-g20170308-74764af_GH0.tar.gz) = f9b45d8df7e606749d86f86a7d83be63796aba42499362f20f8dcebfd2058cc4
+SIZE (brendangregg-FlameGraph-g20170308-74764af_GH0.tar.gz) = 960356

Added: head/benchmarks/flamegraph/pkg-descr
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/benchmarks/flamegraph/pkg-descr	Sun Apr  2 01:06:25 2017	(r437514)
@@ -0,0 +1,10 @@
+a stack-trace visualizer
+
+Flame Graphs visualize profiled code. Flame graphs can be created in three
+steps: 1) Capture stacks, 2) Fold stacks, 3) flamegraph.pl.
+Capturing stacks can be done with Linux perf_events, FreeBSD pmcstat (hwpmc),
+DTrace, SystemTap, and many other profilers. See stackcollapse-*
+converters. These stackcollapse scripts are used to fold the stacks.
+Flamegraph SVGs are created using the flamegraph.pl script.
+
+WWW: https://github.com/brendangregg/FlameGraph

Added: head/benchmarks/flamegraph/pkg-plist
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/benchmarks/flamegraph/pkg-plist	Sun Apr  2 01:06:25 2017	(r437514)
@@ -0,0 +1,19 @@
+bin/aix-perf.pl
+bin/difffolded.pl
+bin/files.pl
+bin/flamegraph.pl
+bin/pkgsplit-perf.sh
+bin/range-perf.pl
+bin/stackcollapse-aix.pl
+bin/stackcollapse-elfutils.pl
+bin/stackcollapse-gdb.pl
+bin/stackcollapse-go.pl
+bin/stackcollapse-instruments.pl
+bin/stackcollapse-jstack.pl
+bin/stackcollapse-ljp.awk
+bin/stackcollapse-perf.pl
+bin/stackcollapse-pmc.pl
+bin/stackcollapse-recursive.pl
+bin/stackcollapse-stap.pl
+bin/stackcollapse-vtune.pl
+bin/stackcollapse.pl



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201704020106.v3216QHH078606>