aboutsummaryrefslogtreecommitdiff
path: root/profiling
diff options
context:
space:
mode:
authorJakob Unterwurzacher2017-09-03 13:50:53 +0200
committerJakob Unterwurzacher2017-09-03 13:50:53 +0200
commit8f92dd15e13552c3968838e9525118fbcef5fb5f (patch)
tree2363dfb36f0c8635c728f3919a3c0e692fcf541b /profiling
parent94496ba84036c98aa2b72b131a9ad2da24ad58c8 (diff)
profiling: add write-trace.bash
Save an execution trace of writing 100MB of data to a new gocryptfs mount on /tmp
Diffstat (limited to 'profiling')
-rwxr-xr-xprofiling/write-trace.bash23
1 files changed, 23 insertions, 0 deletions
diff --git a/profiling/write-trace.bash b/profiling/write-trace.bash
new file mode 100755
index 0000000..3475140
--- /dev/null
+++ b/profiling/write-trace.bash
@@ -0,0 +1,23 @@
+#!/bin/bash -eu
+#
+# Write an execution trace of writing 100MB of data
+# to a new gocryptfs mount on /tmp
+
+cd "$(dirname "$0")"
+
+T=$(mktemp -d)
+mkdir $T/a $T/b
+
+../gocryptfs -init -quiet -scryptn 10 -extpass "echo test" $T/a
+../gocryptfs -quiet -extpass "echo test" -trace $T/trace \
+ $T/a $T/b
+
+# Cleanup trap
+trap "cd /; fusermount -u -z $T/b; rm -Rf $T/a" EXIT
+
+# Write only 1x100MB, otherwise the trace gets too big.
+dd if=/dev/zero of=$T/b/zero bs=1M count=100
+
+echo
+echo "Hint: go tool trace $T/trace"
+