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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
|
:1711760369:compare-example_mapping
[0Kcompare-example_mapping
/run/current-system/sw/bin/candelabra-cli -l --manifest-path /opt/candelabra/src/tests/Cargo.toml -p example_mapping select --compare
[2024-03-30T00:59:29Z INFO candelabra_cli] Using source dir: "/nix/store/n9bab5lfpka22cpsfrvdsg454dn0kkdn-source"
[2024-03-30T00:59:29Z DEBUG candelabra::candidates] Initialised candidate cacher with hash 6543311679163142612
[2024-03-30T00:59:29Z DEBUG primrose::library_specs] Failed to process library module /nix/store/n9bab5lfpka22cpsfrvdsg454dn0kkdn-source/crates/library/src/adaptive.rs. Continuing anyway.
[2024-03-30T00:59:29Z DEBUG primrose::library_specs] Failed to process library module /nix/store/n9bab5lfpka22cpsfrvdsg454dn0kkdn-source/crates/library/src/profiler.rs. Continuing anyway.
[2024-03-30T00:59:29Z DEBUG primrose::library_specs] Failed to process library module /nix/store/n9bab5lfpka22cpsfrvdsg454dn0kkdn-source/crates/library/src/traits.rs. Continuing anyway.
[2024-03-30T00:59:29Z DEBUG candelabra::cost] Initialised benchmark cacher with hash 6543311679163142612
[2024-03-30T00:59:29Z INFO candelabra_cli::select] Processing project example_mapping
┌──────┬──────────────────────────────────────────────────────────────────────┬────────────────────┬───────────────────────────────────────────────────────────┐
│ name │ implementation │ estimated cost │ file │
├──────┼──────────────────────────────────────────────────────────────────────┼────────────────────┼───────────────────────────────────────────────────────────┤
│ Map │ std::collections::BTreeMap │ 46141037803.309296 │ /opt/candelabra/src/tests/example_mapping/src/types.pr.rs │
│ Map │ primrose_library::SortedVecMap │ 119641351289.06035 │ /opt/candelabra/src/tests/example_mapping/src/types.pr.rs │
│ Map │ primrose_library::VecMap │ 721919577813.2703 │ /opt/candelabra/src/tests/example_mapping/src/types.pr.rs │
│ Map │ std::collections::HashMap │ 28506056746.59253 │ /opt/candelabra/src/tests/example_mapping/src/types.pr.rs │
│ Map │ primrose_library::VecMap until n=225, then std::collections::HashMap │ 26525686623.524624 │ /opt/candelabra/src/tests/example_mapping/src/types.pr.rs │
└──────┴──────────────────────────────────────────────────────────────────────┴────────────────────┴───────────────────────────────────────────────────────────┘
\begin{center}
\begin{tabular}{|c|c|c|c|}
name & implementation & estimated cost & file \\
\hline
Map & std::collections::BTreeMap & 46141037803.309296 & /opt/candelabra/src/tests/example\_mapping/src/types.pr.rs \\
Map & primrose\_library::SortedVecMap & 119641351289.06035 & /opt/candelabra/src/tests/example\_mapping/src/types.pr.rs \\
Map & primrose\_library::VecMap & 721919577813.2703 & /opt/candelabra/src/tests/example\_mapping/src/types.pr.rs \\
Map & std::collections::HashMap & 28506056746.59253 & /opt/candelabra/src/tests/example\_mapping/src/types.pr.rs \\
Map & primrose\_library::VecMap until n=225, then std::collections::HashMap & 26525686623.524624 & /opt/candelabra/src/tests/example\_mapping/src/types.pr.rs \\
\end{tabular}
\end{center}
[2024-03-30T00:59:29Z DEBUG candelabra::profiler::info] Checking for nsplit
[2024-03-30T00:59:29Z DEBUG candelabra::profiler::info] Partitions: [ProfilerPartition { occurences: 209540.0, avg_n: 50.0, avg_op_counts: {"get": 100.0, "insert": 50.0, "push": 0.0, "pop": 0.0, "remove": 0.0, "clear": 0.0, "first": 0.0, "last": 0.0, "nth": 0.0, "contains": 0.0} }, ProfilerPartition { occurences: 53905.0, avg_n: 150.0, avg_op_counts: {"first": 0.0, "pop": 0.0, "remove": 0.0, "push": 0.0, "contains": 0.0, "last": 0.0, "clear": 0.0, "get": 300.0, "insert": 150.0, "nth": 0.0} }, ProfilerPartition { occurences: 6898.0, avg_n: 2500.0, avg_op_counts: {"remove": 0.0, "push": 0.0, "pop": 0.0, "first": 0.0, "last": 0.0, "contains": 0.0, "get": 5000.0, "insert": 2500.0, "clear": 0.0, "nth": 0.0} }, ProfilerPartition { occurences: 14532.0, avg_n: 7500.0, avg_op_counts: {"last": 0.0, "contains": 0.0, "nth": 0.0, "get": 15000.0, "first": 0.0, "push": 0.0, "remove": 0.0, "pop": 0.0, "clear": 0.0, "insert": 7500.0} }]
[2024-03-30T00:59:29Z DEBUG candelabra::profiler::info] Costs by partitions: [("primrose_library::SortedVecMap", [1206074045.7825513, 781306636.890812, 5489170244.925119, 112164800361.46187]), ("std::collections::BTreeMap", [1840053452.8899245, 1680935548.3905444, 5118928650.207806, 37501120151.82103]), ("primrose_library::VecMap", [544593008.4231915, 0.0, 25689330964.74701, 695685653840.1]), ("std::collections::HashMap", [1379383260.593158, 1145589452.1164875, 3068214218.402198, 22912869815.480682])]
[2024-03-30T00:59:29Z DEBUG candelabra::profiler::info] Top by partition: [("primrose_library::VecMap", 544593008.4231915), ("primrose_library::VecMap", 0.0), ("std::collections::HashMap", 3068214218.402198), ("std::collections::HashMap", 22912869815.480682)]
[2024-03-30T00:59:29Z DEBUG candelabra::profiler::info] With split index 2, split proper is true
[2024-03-30T00:59:29Z DEBUG candelabra::profiler::info] Checking for nsplit
[2024-03-30T00:59:29Z DEBUG candelabra::profiler::info] Partitions: [ProfilerPartition { occurences: 209540.0, avg_n: 50.0, avg_op_counts: {"last": 0.0, "clear": 0.0, "push": 0.0, "pop": 0.0, "remove": 0.0, "contains": 0.0, "nth": 0.0, "insert": 50.0, "get": 100.0, "first": 0.0} }, ProfilerPartition { occurences: 53905.0, avg_n: 150.0, avg_op_counts: {"remove": 0.0, "first": 0.0, "push": 0.0, "pop": 0.0, "clear": 0.0, "insert": 150.0, "nth": 0.0, "contains": 0.0, "last": 0.0, "get": 300.0} }, ProfilerPartition { occurences: 6898.0, avg_n: 2500.0, avg_op_counts: {"remove": 0.0, "first": 0.0, "get": 5000.0, "last": 0.0, "pop": 0.0, "nth": 0.0, "clear": 0.0, "contains": 0.0, "push": 0.0, "insert": 2500.0} }, ProfilerPartition { occurences: 14532.0, avg_n: 7500.0, avg_op_counts: {"get": 15000.0, "pop": 0.0, "insert": 7500.0, "push": 0.0, "first": 0.0, "contains": 0.0, "last": 0.0, "clear": 0.0, "nth": 0.0, "remove": 0.0} }]
[2024-03-30T00:59:29Z DEBUG candelabra::profiler::info] Costs by partitions: [("std::collections::HashMap", [1379383260.593158, 1145589452.1164875, 3068214218.402198, 22912869815.480682]), ("primrose_library::VecMap", [544593008.4231915, 0.0, 25689330964.74701, 695685653840.1]), ("std::collections::BTreeMap", [1840053452.8899245, 1680935548.3905444, 5118928650.207806, 37501120151.82103]), ("primrose_library::SortedVecMap", [1206074045.7825513, 781306636.890812, 5489170244.925119, 112164800361.46187])]
[2024-03-30T00:59:29Z DEBUG candelabra::profiler::info] Top by partition: [("primrose_library::VecMap", 544593008.4231915), ("primrose_library::VecMap", 0.0), ("std::collections::HashMap", 3068214218.402198), ("std::collections::HashMap", 22912869815.480682)]
[2024-03-30T00:59:29Z DEBUG candelabra::profiler::info] With split index 2, split proper is true
[2024-03-30T00:59:29Z DEBUG candelabra::confirmation] Saving choices for project example_mapping
[2024-03-30T00:59:29Z DEBUG candelabra::confirmation] Saving choices for /opt/candelabra/src/tests/example_mapping/src/types.pr.rs
[2024-03-30T00:59:29Z DEBUG primrose::selector] Setting up directories
[2024-03-30T00:59:29Z DEBUG primrose::selector] Parsing into blocks
[2024-03-30T00:59:29Z DEBUG primrose::selector] Running type checker
[2024-03-30T00:59:29Z DEBUG primrose::selector] Running analysis
[2024-03-30T00:59:29Z DEBUG primrose::library_specs] Ignoring invalid library module /nix/store/n9bab5lfpka22cpsfrvdsg454dn0kkdn-source/crates/library/src/adaptive.rs
[2024-03-30T00:59:29Z DEBUG primrose::library_specs] Ignoring invalid library module /nix/store/n9bab5lfpka22cpsfrvdsg454dn0kkdn-source/crates/library/src/profiler.rs
[2024-03-30T00:59:29Z DEBUG primrose::library_specs] Ignoring invalid library module /nix/store/n9bab5lfpka22cpsfrvdsg454dn0kkdn-source/crates/library/src/traits.rs
[2024-03-30T00:59:29Z INFO candelabra_cli::select] Saved best choices
[2024-03-30T00:59:29Z INFO candelabra_cli::select] Running benchmarks with {("/opt/candelabra/src/tests/example_mapping/src/types.pr.rs", "Map"): std::collections::BTreeMap}
[2024-03-30T00:59:29Z DEBUG candelabra::confirmation] Saving choices for project example_mapping
[2024-03-30T00:59:29Z DEBUG candelabra::confirmation] Saving choices for /opt/candelabra/src/tests/example_mapping/src/types.pr.rs
[2024-03-30T00:59:29Z DEBUG primrose::selector] Setting up directories
[2024-03-30T00:59:30Z DEBUG primrose::selector] Parsing into blocks
[2024-03-30T00:59:30Z DEBUG primrose::selector] Running type checker
[2024-03-30T00:59:30Z DEBUG primrose::selector] Running analysis
[2024-03-30T00:59:30Z DEBUG primrose::library_specs] Ignoring invalid library module /nix/store/n9bab5lfpka22cpsfrvdsg454dn0kkdn-source/crates/library/src/adaptive.rs
[2024-03-30T00:59:30Z DEBUG primrose::library_specs] Ignoring invalid library module /nix/store/n9bab5lfpka22cpsfrvdsg454dn0kkdn-source/crates/library/src/profiler.rs
[2024-03-30T00:59:30Z DEBUG primrose::library_specs] Ignoring invalid library module /nix/store/n9bab5lfpka22cpsfrvdsg454dn0kkdn-source/crates/library/src/traits.rs
Compiling example_mapping v0.1.0 (/opt/candelabra/src/tests/example_mapping)
Finished bench [optimized] target(s) in 3.23s
Running benches/main.rs (/opt/candelabra/src/tests/target/release/deps/main-2ea61f050d4d0ca4)
[2024-03-30T01:00:20Z INFO candelabra_cli::select] Running benchmarks with {("/opt/candelabra/src/tests/example_mapping/src/types.pr.rs", "Map"): primrose_library::SortedVecMap}
[2024-03-30T01:00:20Z DEBUG candelabra::confirmation] Saving choices for project example_mapping
[2024-03-30T01:00:20Z DEBUG candelabra::confirmation] Saving choices for /opt/candelabra/src/tests/example_mapping/src/types.pr.rs
[2024-03-30T01:00:20Z DEBUG primrose::selector] Setting up directories
[2024-03-30T01:00:20Z DEBUG primrose::selector] Parsing into blocks
[2024-03-30T01:00:20Z DEBUG primrose::selector] Running type checker
[2024-03-30T01:00:20Z DEBUG primrose::selector] Running analysis
[2024-03-30T01:00:20Z DEBUG primrose::library_specs] Ignoring invalid library module /nix/store/n9bab5lfpka22cpsfrvdsg454dn0kkdn-source/crates/library/src/adaptive.rs
[2024-03-30T01:00:20Z DEBUG primrose::library_specs] Ignoring invalid library module /nix/store/n9bab5lfpka22cpsfrvdsg454dn0kkdn-source/crates/library/src/profiler.rs
[2024-03-30T01:00:20Z DEBUG primrose::library_specs] Ignoring invalid library module /nix/store/n9bab5lfpka22cpsfrvdsg454dn0kkdn-source/crates/library/src/traits.rs
Compiling example_mapping v0.1.0 (/opt/candelabra/src/tests/example_mapping)
Finished bench [optimized] target(s) in 2.76s
Running benches/main.rs (/opt/candelabra/src/tests/target/release/deps/main-2ea61f050d4d0ca4)
[2024-03-30T01:01:08Z INFO candelabra_cli::select] Running benchmarks with {("/opt/candelabra/src/tests/example_mapping/src/types.pr.rs", "Map"): primrose_library::VecMap}
[2024-03-30T01:01:08Z DEBUG candelabra::confirmation] Saving choices for project example_mapping
[2024-03-30T01:01:08Z DEBUG candelabra::confirmation] Saving choices for /opt/candelabra/src/tests/example_mapping/src/types.pr.rs
[2024-03-30T01:01:08Z DEBUG primrose::selector] Setting up directories
[2024-03-30T01:01:08Z DEBUG primrose::selector] Parsing into blocks
[2024-03-30T01:01:08Z DEBUG primrose::selector] Running type checker
[2024-03-30T01:01:08Z DEBUG primrose::selector] Running analysis
[2024-03-30T01:01:08Z DEBUG primrose::library_specs] Ignoring invalid library module /nix/store/n9bab5lfpka22cpsfrvdsg454dn0kkdn-source/crates/library/src/adaptive.rs
[2024-03-30T01:01:08Z DEBUG primrose::library_specs] Ignoring invalid library module /nix/store/n9bab5lfpka22cpsfrvdsg454dn0kkdn-source/crates/library/src/profiler.rs
[2024-03-30T01:01:08Z DEBUG primrose::library_specs] Ignoring invalid library module /nix/store/n9bab5lfpka22cpsfrvdsg454dn0kkdn-source/crates/library/src/traits.rs
Compiling example_mapping v0.1.0 (/opt/candelabra/src/tests/example_mapping)
Finished bench [optimized] target(s) in 2.79s
Running benches/main.rs (/opt/candelabra/src/tests/target/release/deps/main-2ea61f050d4d0ca4)
[2024-03-30T01:02:00Z INFO candelabra_cli::select] Running benchmarks with {("/opt/candelabra/src/tests/example_mapping/src/types.pr.rs", "Map"): std::collections::HashMap}
[2024-03-30T01:02:00Z DEBUG candelabra::confirmation] Saving choices for project example_mapping
[2024-03-30T01:02:00Z DEBUG candelabra::confirmation] Saving choices for /opt/candelabra/src/tests/example_mapping/src/types.pr.rs
[2024-03-30T01:02:00Z DEBUG primrose::selector] Setting up directories
[2024-03-30T01:02:00Z DEBUG primrose::selector] Parsing into blocks
[2024-03-30T01:02:00Z DEBUG primrose::selector] Running type checker
[2024-03-30T01:02:00Z DEBUG primrose::selector] Running analysis
[2024-03-30T01:02:00Z DEBUG primrose::library_specs] Ignoring invalid library module /nix/store/n9bab5lfpka22cpsfrvdsg454dn0kkdn-source/crates/library/src/adaptive.rs
[2024-03-30T01:02:00Z DEBUG primrose::library_specs] Ignoring invalid library module /nix/store/n9bab5lfpka22cpsfrvdsg454dn0kkdn-source/crates/library/src/profiler.rs
[2024-03-30T01:02:00Z DEBUG primrose::library_specs] Ignoring invalid library module /nix/store/n9bab5lfpka22cpsfrvdsg454dn0kkdn-source/crates/library/src/traits.rs
Compiling example_mapping v0.1.0 (/opt/candelabra/src/tests/example_mapping)
Finished bench [optimized] target(s) in 2.94s
Running benches/main.rs (/opt/candelabra/src/tests/target/release/deps/main-2ea61f050d4d0ca4)
[2024-03-30T01:02:49Z INFO candelabra_cli::select] Running benchmarks with {("/opt/candelabra/src/tests/example_mapping/src/types.pr.rs", "Map"): primrose_library::VecMap until n=225, then std::collections::HashMap}
[2024-03-30T01:02:49Z DEBUG candelabra::confirmation] Saving choices for project example_mapping
[2024-03-30T01:02:49Z DEBUG candelabra::confirmation] Saving choices for /opt/candelabra/src/tests/example_mapping/src/types.pr.rs
[2024-03-30T01:02:49Z DEBUG primrose::selector] Setting up directories
[2024-03-30T01:02:49Z DEBUG primrose::selector] Parsing into blocks
[2024-03-30T01:02:49Z DEBUG primrose::selector] Running type checker
[2024-03-30T01:02:49Z DEBUG primrose::selector] Running analysis
[2024-03-30T01:02:49Z DEBUG primrose::library_specs] Ignoring invalid library module /nix/store/n9bab5lfpka22cpsfrvdsg454dn0kkdn-source/crates/library/src/adaptive.rs
[2024-03-30T01:02:49Z DEBUG primrose::library_specs] Ignoring invalid library module /nix/store/n9bab5lfpka22cpsfrvdsg454dn0kkdn-source/crates/library/src/profiler.rs
[2024-03-30T01:02:49Z DEBUG primrose::library_specs] Ignoring invalid library module /nix/store/n9bab5lfpka22cpsfrvdsg454dn0kkdn-source/crates/library/src/traits.rs
Compiling example_mapping v0.1.0 (/opt/candelabra/src/tests/example_mapping)
Finished bench [optimized] target(s) in 2.93s
Running benches/main.rs (/opt/candelabra/src/tests/target/release/deps/main-2ea61f050d4d0ca4)
┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┬───────┬───────┬───────┬────────┬────────┬────────┬─────────┬────────┬────────┬─────────┬──────────┬────────────────────┬────────────┐
│ │ l15 │ l18 │ l19 │ l25 │ l27 │ l29 │ l30 │ l35 │ l37 │ l39 │ l41 │ l8 │ total │
├──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┼───────┼───────┼───────┼────────┼────────┼────────┼─────────┼────────┼────────┼─────────┼──────────┼────────────────────┼────────────┤
│ {("/opt/candelabra/src/tests/example_mapping/src/types.pr.rs", "Map"): primrose_library::VecMap until n=225, then std::collections::HashMap} │ │ 33333 │ │ │ 192630 │ │ │ │ │ 605770 │ │ 4665.7 │ 836398.7 │
│ {("/opt/candelabra/src/tests/example_mapping/src/types.pr.rs", "Map"): std::collections::BTreeMap} │ 12739 │ │ │ 288750 │ │ │ │ 907990 │ │ │ │ 3100.9 │ 1212579.9 │
│ {("/opt/candelabra/src/tests/example_mapping/src/types.pr.rs", "Map"): std::collections::HashMap} │ │ 11322 │ │ │ 183930 │ │ │ │ 594750 │ │ │ 3720.8 │ 793722.8 │
│ {("/opt/candelabra/src/tests/example_mapping/src/types.pr.rs", "Map"): primrose_library::VecMap} │ │ │ 33571 │ │ │ │ 8621900 │ │ │ │ 78539000 │ 4847.900000000001 │ 87199318.9 │
│ {("/opt/candelabra/src/tests/example_mapping/src/types.pr.rs", "Map"): primrose_library::SortedVecMap} │ │ 12985 │ │ │ │ 638210 │ │ │ │ 6928500 │ │ 3492.1000000000004 │ 7583187.1 │
└──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┴───────┴───────┴───────┴────────┴────────┴────────┴─────────┴────────┴────────┴─────────┴──────────┴────────────────────┴────────────┘
\begin{center}
\begin{tabular}{|c|c|c|c|c|c|c|c|c|c|c|c|c|c|}
& l15 & l18 & l19 & l25 & l27 & l29 & l30 & l35 & l37 & l39 & l41 & l8 & total \\
\hline
\{("/opt/candelabra/src/tests/example\_mapping/src/types.pr.rs", "Map"): primrose\_library::VecMap until n=225, then std::collections::HashMap\} & & 33333 & & & 192630 & & & & & 605770 & & 4665.7 & 836398.7 \\
\{("/opt/candelabra/src/tests/example\_mapping/src/types.pr.rs", "Map"): std::collections::BTreeMap\} & 12739 & & & 288750 & & & & 907990 & & & & 3100.9 & 1212579.9 \\
\{("/opt/candelabra/src/tests/example\_mapping/src/types.pr.rs", "Map"): std::collections::HashMap\} & & 11322 & & & 183930 & & & & 594750 & & & 3720.8 & 793722.8 \\
\{("/opt/candelabra/src/tests/example\_mapping/src/types.pr.rs", "Map"): primrose\_library::VecMap\} & & & 33571 & & & & 8621900 & & & & 78539000 & 4847.900000000001 & 87199318.9 \\
\{("/opt/candelabra/src/tests/example\_mapping/src/types.pr.rs", "Map"): primrose\_library::SortedVecMap\} & & 12985 & & & & 638210 & & & & 6928500 & & 3492.1000000000004 & 7583187.1 \\
\end{tabular}
\end{center}
[0Ksection_end:1711760618:compare-example_mapping
[0K
|