Skip to content

Instantly share code, notes, and snippets.

@simonmichael
Last active October 23, 2019 17:50
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save simonmichael/f19b0c03b4385b2990b8e2f112b6d2de to your computer and use it in GitHub Desktop.
Save simonmichael/f19b0c03b4385b2990b8e2f112b6d2de to your computer and use it in GitHub Desktop.
Build times of hledger dependencies on a slow machine

Build times in minutes of hledger's dependencies, running cabal and ghc 8.4.4 with a single Cortex-A53 CPU and 4G RAM, emulated on some faster machine.

From xiroux on #hledger:

sm: If you wanna take a look at the times, I just listed the files in .cabal-sandbox/lib/ with their last modification time and computed how much time passed between one file and another. The data is here: https://hastebin.com/egexogarek

The exact command was ls -ltr /root/hledger/.cabal-sandbox/lib/aarch64-linux-ghc-8.4.4/ | tail -n+2 | grep -v libHS | cut -c 40- | rev | cut -d- -f2- | rev That gave me all relevant files (I removed the duplicated libHS) with their times. Then I copied the modification time column, shifted it down one row and substracted the times to generate the csv I linked above

All in all, it was a bit more than 34 hours (the emulated machine had a single Cortex-A53 CPU, 4GiB of RAM, and was running 64-bit Debian Buster)

Library Start Finish Duration(minutes)
Decimal-0.5.1 13:28
Diff-0.4.0 13:28 13:33 5
Only-0.1 13:33 13:35 2
appar-0.1.8 13:35 13:36 1
auto-update-0.1.6 13:36 13:38 2
base-compat-0.11.0 13:38 13:46 8
base-orphans-0.8.1 13:46 13:48 2
base-unicode-symbols-0.2.4.2 13:48 13:50 2
base64-bytestring-1.0.0.2 13:50 13:53 3
basement-0.0.11 13:53 14:54 61
blaze-builder-0.4.1.0 14:54 14:58 4
bsb-http-chunked-0.0.0.4 14:58 14:59 1
byteable-0.1.1 14:59 15:00 1
byteorder-1.0.4 15:00 15:02 2
cabal-doctest-1.0.8 15:02 15:04 2
cereal-0.5.8.1 15:04 15:17 13
clock-0.8 15:17 15:21 4
cmdargs-0.10.20 15:21 15:47 26
colour-2.3.5 15:47 15:57 10
contravariant-1.5.2 15:57 16:01 4
control-monad-free-0.6.2 16:01 16:03 2
css-text-0.1.3.0 16:03 16:08 5
csv-0.1.2 16:08 16:09 1
data-default-class-0.1.2.0 16:09 16:09 0
dlist-0.8.0.7 16:09 16:11 2
easy-file-0.2.2 16:11 16:13 2
easytest-0.2.1 16:13 16:20 7
email-validate-2.3.2.12 16:20 16:24 4
entropy-0.4.1.5 16:24 16:28 4
file-embed-0.0.11 16:28 16:31 3
hashtables-1.2.3.4 16:31 16:41 10
haskell-lexer-1.0.2 16:41 17:05 24
hourglass-0.2.12 17:05 17:22 17
http-date-0.0.8 17:22 17:26 4
http-types-0.12.3 17:26 17:33 7
json-0.9.3 17:33 17:45 12
microlens-0.4.11.2 17:45 17:48 3
mime-types-0.1.0.9 17:48 17:56 8
monad-loops-0.4.3 17:56 17:59 3
network-byte-order-0.1.1.1 17:59 18:01 2
old-locale-1.0.0.7 18:01 18:02 1
parser-combinators-1.2.0 18:02 18:06 4
path-pieces-0.2.1 18:06 18:08 2
psqueues-0.2.7.2 18:08 18:19 11
regex-tdfa-1.3.0 18:19 21:39 200
safe-0.3.17 21:39 21:42 3
semigroups-0.19.1 21:42 21:43 1
setenv-0.1.1.3 21:43 21:44 1
silently-1.2.5.1 21:44 21:45 1
simple-sendfile-0.2.28 21:45 21:46 1
stm-chans-3.0.0.4 21:46 21:50 4
streaming-commons-0.2.1.1 21:50 22:01 11
tagged-0.8.6 22:01 22:04 3
tagsoup-0.14.8 22:04 22:24 20
text-short-0.1.3 22:24 22:28 4
th-abstraction-0.3.1.0 22:28 22:36 8
time-locale-compat-0.1.1.5 22:36 22:36 0
timeit-2.0 22:36 22:37 1
transformers-compat-0.6.5 22:37 22:40 3
uglymemo-0.1.0.1 22:40 22:41 1
unix-compat-0.5.2 22:41 22:42 1
unliftio-core-0.1.2.0 22:42 22:44 2
utf8-string-1.0.1.1 22:44 22:49 5
utility-ht-0.0.14 22:49 22:57 8
uuid-types-1.0.3 22:57 23:01 4
vector-algorithms-0.8.0.1 23:01 23:33 32
vector-th-unbox-0.2.1.7 23:33 23:35 2
void-0.7.3 23:35 23:36 1
word8-0.1.3 23:36 23:37 1
time-manager-0.0.0 23:37 23:38 1
attoparsec-iso8601-1.0.1.0 23:38 23:40 2
time-compat-1.9.2.2 23:40 23:48 8
memory-0.15.0 23:48 23:58 10
blaze-markup-0.8.2.3 23:58 0:06 8
iproute-1.7.7 0:06 0:15 9
socks-0.6.1 0:15 0:25 10
ansi-terminal-0.10.1 0:25 0:32 7
base-compat-batteries-0.11.0 0:32 0:40 8
wizards-1.0.3 0:40 0:42 2
tabular-0.2.2.7 0:42 0:45 3
data-default-instances-containers-0.0.1 0:45 0:46 1
cookie-0.4.4 0:46 0:48 2
data-default-instances-dlist-0.0.1 0:48 0:49 1
pretty-show-1.9.5 0:49 0:59 10
old-time-1.1.0.3 0:59 1:05 6
data-default-instances-old-locale-0.0.1 1:05 1:05 0
megaparsec-7.0.5 1:05 1:31 26
vault-0.3.1.3 1:31 1:34 3
extra-1.6.18 1:34 1:40 6
crypto-api-0.13.3 1:40 1:50 10
cassava-0.5.2.0 1:50 2:19 29
transformers-base-0.4.5.2 2:19 2:21 2
mmorph-1.1.3 2:21 2:23 2
exceptions-0.10.3 2:23 2:28 5
Glob-0.10.0 2:28 2:34 6
unliftio-0.2.12 2:34 2:44 10
typed-process-0.2.6.0 2:44 2:47 3
xss-sanitize-0.3.6 2:47 2:53 6
language-javascript-0.7.0.0 2:53 4:11 78
mono-traversable-1.0.13.0 4:11 4:38 27
math-functions-0.3.3.0 4:38 4:56 18
http2-2.0.3 4:56 5:24 28
aeson-1.4.5.0 5:24 7:50 146
securemem-0.1.10 7:50 7:51 1
pem-0.2.4 7:51 7:53 2
cryptonite-0.26 7:53 9:35 102
asn1-types-0.3.3 9:35 9:41 6
blaze-html-0.9.1.2 9:41 10:21 40
ansi-wl-pprint-0.6.9 10:21 10:24 3
http-api-data-0.3.10 10:24 10:42 18
unix-time-0.4.7 10:42 10:46 4
data-default-0.7.1.1 10:46 10:47 1
wai-3.2.2.1 10:47 10:50 3
skein-1.0.9.4 10:50 10:55 5
cassava-megaparsec-2.0.0 10:55 11:04 9
monad-control-1.0.2.3 11:04 11:06 2
lucid-2.9.11 11:06 11:14 8
temporary-1.3 11:14 11:15 1
resourcet-1.2.2 11:15 11:19 4
http-client-0.6.4 11:19 11:41 22
rio-0.1.12.0 11:41 11:56 15
crypto-random-0.0.9 11:56 11:59 3
crypto-cipher-types-0.0.9 11:59 12:03 4
asn1-encoding-0.9.6 12:03 12:10 7
shakespeare-2.0.22 12:10 13:01 51
optparse-applicative-0.15.1.0 13:01 13:14 13
fast-logger-3.0.0 13:14 13:20 6
warp-3.3.3 13:20 13:40 20
wai-cors-0.2.7 13:40 13:43 3
hledger-lib-1.15.99 13:43 16:30 167
resource-pool-0.2.3.2 16:30 16:32 2
lifted-base-0.2.3.12 16:32 16:34 2
conduit-1.3.1.1 16:34 16:54 20
cipher-aes-0.2.11 16:54 16:57 3
asn1-parse-0.9.5 16:57 16:58 1
hjsmin-0.2.0.4 16:58 17:00 2
wai-logger-2.3.6 17:00 17:04 4
wai-handler-launch-3.0.2.4 17:04 17:06 2
hledger-1.15.99 17:06 17:45 39
libyaml-0.1.1.0 17:45 17:55 10
conduit-extra-1.3.4 17:55 18:05 10
cprng-aes-0.6.1 18:05 18:07 2
x509-1.7.5 18:07 18:21 14
wai-extra-3.0.28 18:21 18:38 17
yaml-0.11.1.2 18:38 18:50 12
monad-logger-0.3.30 18:50 18:56 6
cryptonite-conduit-0.2.2 18:56 18:58 2
clientsession-0.9.1.2 18:58 19:00 2
x509-store-1.6.7 19:00 19:03 3
wai-app-static-3.1.6.3 19:03 19:11 8
persistent-2.10.1 19:11 20:01 50
yesod-core-1.6.16.1 20:01 20:39 38
x509-validation-1.6.11 20:39 20:43 4
x509-system-1.6.6 20:43 20:44 1
persistent-template-2.7.2 20:44 20:57 13
yesod-static-1.6.0.1 20:57 21:08 11
tls-1.5.2 21:08 22:18 70
yesod-persistent-1.6.0.2 22:18 22:20 2
connection-0.3.1 22:20 22:23 3
yesod-form-1.6.7 22:23 23:00 37
http-client-tls-0.3.5.3 23:00 23:03 3
yesod-1.6.0 23:03 23:08 5
http-conduit-2.3.7.3 23:08 23:11 3
hledger-web-1.15.99 23:11 23:43 32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment