Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/peti/ghc-library-id-bug
Empiric data about GHC's non-deterministic library ID bug
https://github.com/peti/ghc-library-id-bug
Last synced: 10 days ago
JSON representation
Empiric data about GHC's non-deterministic library ID bug
- Host: GitHub
- URL: https://github.com/peti/ghc-library-id-bug
- Owner: peti
- Created: 2015-06-04T14:45:41.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2016-11-27T16:01:48.000Z (almost 8 years ago)
- Last Synced: 2023-03-11T10:13:14.632Z (over 1 year ago)
- Language: R
- Size: 158 KB
- Stars: 6
- Watchers: 3
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Empiric data about GHC's non-deterministic library id bug
## How to contribute
Please help us to acquire some hard data about the frequency with which
[GHC 7.10.x assigns different library IDs to the same
build](https://ghc.haskell.org/trac/ghc/ticket/4012) ([more details](https://mail.haskell.org/pipermail/ghc-devs/2015-September/009964.html)). You can contribute
as follows:1. Clone this repository:
git clone https://github.com/peti/ghc-library-id-bug.git
cd ghc-library-id-bug2. Choose a unique id for your host, i.e. your fully qualified domain name:
hostname=my-host.example.com
3. Choose the number of builds you'd like to run:
iterations=25
4. Choose the package to run test builds for. Good choices are "text" or "aeson".
pkg=text
5. Run test builds
nix-build --argstr hostname $hostname --argstr pkg $pkg --arg iterations $iterations
6. Collect the resulting CSV file and e-mail it to Peter Simons \.
ls -l result/*csv
## Results
Generate the following data by running:
$ nix-shell --command "Rscript create-report.r"
### Summary
~~~~~~~~~~
config builds correct %
1: single-threaded 3660 3625 99.0
2: multi-threaded 1725 1295 75.1
~~~~~~~~~~### Summary by package
~~~~~~~~~~
config package builds correct %
1: multi-threaded mtl-2.2.1 700 700 100.0
2: single-threaded text-1.2.0.4 1580 1570 99.4
3: single-threaded aeson-0.8.1.0 2080 2055 98.8
4: multi-threaded text-1.2.0.4 650 583 89.7
5: multi-threaded aeson-0.8.1.0 475 112 23.6
~~~~~~~~~~### Summary by package and system
~~~~~~~~~~
config package system builds correct %
1: multi-threaded mtl-2.2.1 x86_64-linux 700 700 100.0
2: single-threaded text-1.2.0.4 x86_64-linux 1580 1570 99.4
3: single-threaded aeson-0.8.1.0 x86_64-linux 2080 2055 98.8
4: multi-threaded text-1.2.0.4 x86_64-linux 425 383 90.1
5: multi-threaded text-1.2.0.4 x86_64-darwin 225 200 88.9
6: multi-threaded aeson-0.8.1.0 x86_64-linux 375 95 25.3
7: multi-threaded aeson-0.8.1.0 x86_64-darwin 100 17 17.0
~~~~~~~~~~### Summary by package and build machine
~~~~~~~~~~
package machine config builds ids correct %
1: text-1.2.0.4 lassulus.mors multi-threaded 25 1 25 100.0
2: mtl-2.2.1 leroy.geek.nz multi-threaded 100 1 100 100.0
3: mtl-2.2.1 mobile.cryp.to multi-threaded 100 1 100 100.0
4: mtl-2.2.1 work.cryp.to multi-threaded 500 1 500 100.0
5: aeson-0.8.1.0 work.cryp.to single-threaded 500 1 500 100.0
6: aeson-0.8.1.0 archachatina.mtlaa.gebner.org single-threaded 100 1 100 100.0
7: aeson-0.8.1.0 jagajaga.me single-threaded 30 1 30 100.0
8: aeson-0.8.1.0 jude.bio single-threaded 25 1 25 100.0
9: aeson-0.8.1.0 lin.wiwaxia.se single-threaded 100 1 100 100.0
10: aeson-0.8.1.0 m-nix.wiwaxia.se single-threaded 100 1 100 100.0
11: aeson-0.8.1.0 mobile-1.cryp.to single-threaded 700 1 700 100.0
12: aeson-0.8.1.0 mobile-2.cryp.to single-threaded 300 1 300 100.0
13: aeson-0.8.1.0 paxton.munchkin.earth.li single-threaded 100 1 100 100.0
14: aeson-0.8.1.0 phreedom single-threaded 100 1 100 100.0
15: text-1.2.0.4 work.cryp.to single-threaded 500 1 500 100.0
16: text-1.2.0.4 archachatina.mtlaa.gebner.org single-threaded 100 1 100 100.0
17: text-1.2.0.4 c-cube.bennofs single-threaded 25 1 25 100.0
18: text-1.2.0.4 jagajaga.me single-threaded 30 1 30 100.0
19: text-1.2.0.4 jude.bio single-threaded 500 1 500 100.0
20: text-1.2.0.4 lin.wiwaxia.se single-threaded 100 1 100 100.0
21: text-1.2.0.4 m-nix.wiwaxia.se single-threaded 100 1 100 100.0
22: text-1.2.0.4 paxton.munchkin.earth.li single-threaded 25 1 25 100.0
23: text-1.2.0.4 phreedom single-threaded 100 1 100 100.0
24: text-1.2.0.4 work.cryp.to multi-threaded 75 3 73 97.3
25: text-1.2.0.4 Toothless multi-threaded 100 2 96 96.0
26: text-1.2.0.4 leroy.geek.nz multi-threaded 100 2 96 96.0
27: text-1.2.0.4 mobile.cryp.to multi-threaded 25 2 24 96.0
28: text-1.2.0.4 moritz-x23.tarn-vedra.de multi-threaded 25 2 24 96.0
29: text-1.2.0.4 eric.seidel.io multi-threaded 25 2 23 92.0
30: text-1.2.0.4 zap.wearewizards.io single-threaded 100 2 90 90.0
31: text-1.2.0.4 abbradar.net multi-threaded 100 2 89 89.0
32: text-1.2.0.4 mango.local multi-threaded 100 2 81 81.0
33: text-1.2.0.4 mono.rycee.net multi-threaded 25 2 20 80.0
34: text-1.2.0.4 tornado multi-threaded 25 2 18 72.0
35: aeson-0.8.1.0 tornado multi-threaded 25 9 17 68.0
36: aeson-0.8.1.0 work.cryp.to multi-threaded 100 35 58 58.0
37: text-1.2.0.4 blackburne.lancelotsix.com multi-threaded 25 2 14 56.0
38: aeson-0.8.1.0 mono.rycee.net multi-threaded 25 17 9 36.0
39: aeson-0.8.1.0 mango.local multi-threaded 100 71 17 17.0
40: aeson-0.8.1.0 leroy.geek.nz multi-threaded 100 78 6 6.0
41: aeson-0.8.1.0 abbradar.net multi-threaded 100 78 5 5.0
42: aeson-0.8.1.0 mobile.cryp.to multi-threaded 25 20 0 0.0
43: aeson-0.8.1.0 c-cube.bennofs single-threaded 25 1 0 0.0
package machine config builds ids correct %
~~~~~~~~~~