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
|
:1711385689: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-25T16:54:49Z INFO candelabra_cli] Using source dir: "/nix/store/n9bab5lfpka22cpsfrvdsg454dn0kkdn-source"
[2024-03-25T16:54:49Z DEBUG candelabra::candidates] Initialised candidate cacher with hash 6543311679163142612
[2024-03-25T16:54:49Z DEBUG primrose::library_specs] Failed to process library module /nix/store/n9bab5lfpka22cpsfrvdsg454dn0kkdn-source/crates/library/src/adaptive.rs. Continuing anyway.
[2024-03-25T16:54:49Z DEBUG primrose::library_specs] Failed to process library module /nix/store/n9bab5lfpka22cpsfrvdsg454dn0kkdn-source/crates/library/src/profiler.rs. Continuing anyway.
[2024-03-25T16:54:49Z DEBUG primrose::library_specs] Failed to process library module /nix/store/n9bab5lfpka22cpsfrvdsg454dn0kkdn-source/crates/library/src/traits.rs. Continuing anyway.
[2024-03-25T16:54:49Z DEBUG candelabra::cost] Initialised benchmark cacher with hash 6543311679163142612
[2024-03-25T16:54:49Z 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-25T16:54:49Z DEBUG candelabra::profiler::info] Checking for nsplit
[2024-03-25T16:54:49Z DEBUG candelabra::profiler::info] Partitions: [ProfilerPartition { occurences: 209540.0, avg_n: 50.0, avg_op_counts: {"clear": 0.0, "push": 0.0, "nth": 0.0, "pop": 0.0, "get": 100.0, "last": 0.0, "contains": 0.0, "insert": 50.0, "first": 0.0, "remove": 0.0} }, ProfilerPartition { occurences: 53905.0, avg_n: 150.0, avg_op_counts: {"insert": 150.0, "first": 0.0, "pop": 0.0, "remove": 0.0, "nth": 0.0, "get": 300.0, "contains": 0.0, "last": 0.0, "clear": 0.0, "push": 0.0} }, ProfilerPartition { occurences: 6898.0, avg_n: 2500.0, avg_op_counts: {"push": 0.0, "last": 0.0, "clear": 0.0, "pop": 0.0, "contains": 0.0, "first": 0.0, "get": 5000.0, "nth": 0.0, "insert": 2500.0, "remove": 0.0} }, ProfilerPartition { occurences: 14532.0, avg_n: 7500.0, avg_op_counts: {"remove": 0.0, "get": 15000.0, "pop": 0.0, "insert": 7500.0, "clear": 0.0, "push": 0.0, "last": 0.0, "nth": 0.0, "first": 0.0, "contains": 0.0} }]
[2024-03-25T16:54:49Z DEBUG candelabra::profiler::info] Costs by partitions: [("std::collections::HashMap", [1379383260.593158, 1145589452.1164875, 3068214218.402198, 22912869815.480682]), ("primrose_library::SortedVecMap", [1206074045.7825513, 781306636.890812, 5489170244.925119, 112164800361.46187]), ("primrose_library::VecMap", [544593008.4231915, 0.0, 25689330964.74701, 695685653840.1]), ("std::collections::BTreeMap", [1840053452.8899245, 1680935548.3905444, 5118928650.207806, 37501120151.82103])]
[2024-03-25T16:54:49Z 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-25T16:54:49Z DEBUG candelabra::profiler::info] With split index 2, split proper is true
[2024-03-25T16:54:49Z DEBUG candelabra::profiler::info] Checking for nsplit
[2024-03-25T16:54:49Z DEBUG candelabra::profiler::info] Partitions: [ProfilerPartition { occurences: 209540.0, avg_n: 50.0, avg_op_counts: {"push": 0.0, "remove": 0.0, "nth": 0.0, "clear": 0.0, "last": 0.0, "pop": 0.0, "first": 0.0, "contains": 0.0, "insert": 50.0, "get": 100.0} }, ProfilerPartition { occurences: 53905.0, avg_n: 150.0, avg_op_counts: {"last": 0.0, "remove": 0.0, "clear": 0.0, "get": 300.0, "contains": 0.0, "first": 0.0, "nth": 0.0, "insert": 150.0, "push": 0.0, "pop": 0.0} }, ProfilerPartition { occurences: 6898.0, avg_n: 2500.0, avg_op_counts: {"pop": 0.0, "clear": 0.0, "last": 0.0, "insert": 2500.0, "push": 0.0, "get": 5000.0, "remove": 0.0, "first": 0.0, "nth": 0.0, "contains": 0.0} }, ProfilerPartition { occurences: 14532.0, avg_n: 7500.0, avg_op_counts: {"get": 15000.0, "push": 0.0, "contains": 0.0, "last": 0.0, "insert": 7500.0, "nth": 0.0, "pop": 0.0, "first": 0.0, "clear": 0.0, "remove": 0.0} }]
[2024-03-25T16:54:49Z 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-25T16:54:49Z 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-25T16:54:49Z DEBUG candelabra::profiler::info] With split index 2, split proper is true
[2024-03-25T16:54:49Z DEBUG candelabra::confirmation] Saving choices for project example_mapping
[2024-03-25T16:54:49Z DEBUG candelabra::confirmation] Saving choices for /opt/candelabra/src/tests/example_mapping/src/types.pr.rs
[2024-03-25T16:54:49Z DEBUG primrose::selector] Setting up directories
[2024-03-25T16:54:49Z DEBUG primrose::selector] Parsing into blocks
[2024-03-25T16:54:49Z DEBUG primrose::selector] Running type checker
[2024-03-25T16:54:49Z DEBUG primrose::selector] Running analysis
[2024-03-25T16:54:49Z DEBUG primrose::library_specs] Ignoring invalid library module /nix/store/n9bab5lfpka22cpsfrvdsg454dn0kkdn-source/crates/library/src/adaptive.rs
[2024-03-25T16:54:49Z DEBUG primrose::library_specs] Ignoring invalid library module /nix/store/n9bab5lfpka22cpsfrvdsg454dn0kkdn-source/crates/library/src/profiler.rs
[2024-03-25T16:54:50Z DEBUG primrose::library_specs] Ignoring invalid library module /nix/store/n9bab5lfpka22cpsfrvdsg454dn0kkdn-source/crates/library/src/traits.rs
[2024-03-25T16:54:50Z INFO candelabra_cli::select] Saved best choices
[2024-03-25T16:54:50Z INFO candelabra_cli::select] Running benchmarks with {("/opt/candelabra/src/tests/example_mapping/src/types.pr.rs", "Map"): std::collections::BTreeMap}
[2024-03-25T16:54:50Z DEBUG candelabra::confirmation] Saving choices for project example_mapping
[2024-03-25T16:54:50Z DEBUG candelabra::confirmation] Saving choices for /opt/candelabra/src/tests/example_mapping/src/types.pr.rs
[2024-03-25T16:54:50Z DEBUG primrose::selector] Setting up directories
[2024-03-25T16:54:50Z DEBUG primrose::selector] Parsing into blocks
[2024-03-25T16:54:50Z DEBUG primrose::selector] Running type checker
[2024-03-25T16:54:50Z DEBUG primrose::selector] Running analysis
[2024-03-25T16:54:50Z DEBUG primrose::library_specs] Ignoring invalid library module /nix/store/n9bab5lfpka22cpsfrvdsg454dn0kkdn-source/crates/library/src/adaptive.rs
[2024-03-25T16:54:50Z DEBUG primrose::library_specs] Ignoring invalid library module /nix/store/n9bab5lfpka22cpsfrvdsg454dn0kkdn-source/crates/library/src/profiler.rs
[2024-03-25T16:54:50Z 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.09s
Running benches/main.rs (/opt/candelabra/src/tests/target/release/deps/main-2ea61f050d4d0ca4)
[2024-03-25T16:55:38Z INFO candelabra_cli::select] Running benchmarks with {("/opt/candelabra/src/tests/example_mapping/src/types.pr.rs", "Map"): primrose_library::SortedVecMap}
[2024-03-25T16:55:38Z DEBUG candelabra::confirmation] Saving choices for project example_mapping
[2024-03-25T16:55:38Z DEBUG candelabra::confirmation] Saving choices for /opt/candelabra/src/tests/example_mapping/src/types.pr.rs
[2024-03-25T16:55:38Z DEBUG primrose::selector] Setting up directories
[2024-03-25T16:55:38Z DEBUG primrose::selector] Parsing into blocks
[2024-03-25T16:55:38Z DEBUG primrose::selector] Running type checker
[2024-03-25T16:55:38Z DEBUG primrose::selector] Running analysis
[2024-03-25T16:55:38Z DEBUG primrose::library_specs] Ignoring invalid library module /nix/store/n9bab5lfpka22cpsfrvdsg454dn0kkdn-source/crates/library/src/adaptive.rs
[2024-03-25T16:55:38Z DEBUG primrose::library_specs] Ignoring invalid library module /nix/store/n9bab5lfpka22cpsfrvdsg454dn0kkdn-source/crates/library/src/profiler.rs
[2024-03-25T16:55:38Z 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.67s
Running benches/main.rs (/opt/candelabra/src/tests/target/release/deps/main-2ea61f050d4d0ca4)
[2024-03-25T16:56:26Z INFO candelabra_cli::select] Running benchmarks with {("/opt/candelabra/src/tests/example_mapping/src/types.pr.rs", "Map"): primrose_library::VecMap}
[2024-03-25T16:56:26Z DEBUG candelabra::confirmation] Saving choices for project example_mapping
[2024-03-25T16:56:26Z DEBUG candelabra::confirmation] Saving choices for /opt/candelabra/src/tests/example_mapping/src/types.pr.rs
[2024-03-25T16:56:26Z DEBUG primrose::selector] Setting up directories
[2024-03-25T16:56:26Z DEBUG primrose::selector] Parsing into blocks
[2024-03-25T16:56:26Z DEBUG primrose::selector] Running type checker
[2024-03-25T16:56:26Z DEBUG primrose::selector] Running analysis
[2024-03-25T16:56:26Z DEBUG primrose::library_specs] Ignoring invalid library module /nix/store/n9bab5lfpka22cpsfrvdsg454dn0kkdn-source/crates/library/src/adaptive.rs
[2024-03-25T16:56:26Z DEBUG primrose::library_specs] Ignoring invalid library module /nix/store/n9bab5lfpka22cpsfrvdsg454dn0kkdn-source/crates/library/src/profiler.rs
[2024-03-25T16:56:26Z 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.62s
Running benches/main.rs (/opt/candelabra/src/tests/target/release/deps/main-2ea61f050d4d0ca4)
[2024-03-25T16:57:18Z INFO candelabra_cli::select] Running benchmarks with {("/opt/candelabra/src/tests/example_mapping/src/types.pr.rs", "Map"): std::collections::HashMap}
[2024-03-25T16:57:18Z DEBUG candelabra::confirmation] Saving choices for project example_mapping
[2024-03-25T16:57:18Z DEBUG candelabra::confirmation] Saving choices for /opt/candelabra/src/tests/example_mapping/src/types.pr.rs
[2024-03-25T16:57:18Z DEBUG primrose::selector] Setting up directories
[2024-03-25T16:57:18Z DEBUG primrose::selector] Parsing into blocks
[2024-03-25T16:57:18Z DEBUG primrose::selector] Running type checker
[2024-03-25T16:57:18Z DEBUG primrose::selector] Running analysis
[2024-03-25T16:57:18Z DEBUG primrose::library_specs] Ignoring invalid library module /nix/store/n9bab5lfpka22cpsfrvdsg454dn0kkdn-source/crates/library/src/adaptive.rs
[2024-03-25T16:57:18Z DEBUG primrose::library_specs] Ignoring invalid library module /nix/store/n9bab5lfpka22cpsfrvdsg454dn0kkdn-source/crates/library/src/profiler.rs
[2024-03-25T16:57:18Z 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.11s
Running benches/main.rs (/opt/candelabra/src/tests/target/release/deps/main-2ea61f050d4d0ca4)
[2024-03-25T16:58:05Z 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-25T16:58:05Z DEBUG candelabra::confirmation] Saving choices for project example_mapping
[2024-03-25T16:58:05Z DEBUG candelabra::confirmation] Saving choices for /opt/candelabra/src/tests/example_mapping/src/types.pr.rs
[2024-03-25T16:58:05Z DEBUG primrose::selector] Setting up directories
[2024-03-25T16:58:05Z DEBUG primrose::selector] Parsing into blocks
[2024-03-25T16:58:05Z DEBUG primrose::selector] Running type checker
[2024-03-25T16:58:05Z DEBUG primrose::selector] Running analysis
[2024-03-25T16:58:05Z DEBUG primrose::library_specs] Ignoring invalid library module /nix/store/n9bab5lfpka22cpsfrvdsg454dn0kkdn-source/crates/library/src/adaptive.rs
[2024-03-25T16:58:05Z DEBUG primrose::library_specs] Ignoring invalid library module /nix/store/n9bab5lfpka22cpsfrvdsg454dn0kkdn-source/crates/library/src/profiler.rs
[2024-03-25T16:58:05Z 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.72s
Running benches/main.rs (/opt/candelabra/src/tests/target/release/deps/main-2ea61f050d4d0ca4)
┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┬───────┬───────┬───────┬────────┬────────┬─────────┬────────┬─────────┬──────────┬────────────────────┬────────────┐
│ │ l17 │ l18 │ l19 │ l26 │ l27 │ l28 │ l37 │ l38 │ l40 │ l8 │ total │
├──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┼───────┼───────┼───────┼────────┼────────┼─────────┼────────┼─────────┼──────────┼────────────────────┼────────────┤
│ {("/opt/candelabra/src/tests/example_mapping/src/types.pr.rs", "Map"): primrose_library::SortedVecMap} │ │ 13169 │ │ │ │ 638070 │ │ 7095600 │ │ 3310.9 │ 7750149.9 │
│ {("/opt/candelabra/src/tests/example_mapping/src/types.pr.rs", "Map"): primrose_library::VecMap} │ │ 33414 │ │ │ │ 8849600 │ │ │ 77782000 │ 4810.900000000001 │ 86669824.9 │
│ {("/opt/candelabra/src/tests/example_mapping/src/types.pr.rs", "Map"): primrose_library::VecMap until n=225, then std::collections::HashMap} │ 33393 │ │ │ 186610 │ │ │ 598190 │ │ │ 4652.599999999999 │ 822845.6 │
│ {("/opt/candelabra/src/tests/example_mapping/src/types.pr.rs", "Map"): std::collections::BTreeMap} │ │ │ 11955 │ │ │ 269170 │ 876430 │ │ │ 3120.2000000000003 │ 1160675.2 │
│ {("/opt/candelabra/src/tests/example_mapping/src/types.pr.rs", "Map"): std::collections::HashMap} │ 11301 │ │ │ │ 186270 │ │ │ 595450 │ │ 3734.5 │ 796755.5 │
└──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┴───────┴───────┴───────┴────────┴────────┴─────────┴────────┴─────────┴──────────┴────────────────────┴────────────┘
\begin{center}
\begin{tabular}{|c|c|c|c|c|c|c|c|c|c|c|c|}
& l17 & l18 & l19 & l26 & l27 & l28 & l37 & l38 & l40 & l8 & total \\
\hline
\{("/opt/candelabra/src/tests/example\_mapping/src/types.pr.rs", "Map"): primrose\_library::SortedVecMap\} & & 13169 & & & & 638070 & & 7095600 & & 3310.9 & 7750149.9 \\
\{("/opt/candelabra/src/tests/example\_mapping/src/types.pr.rs", "Map"): primrose\_library::VecMap\} & & 33414 & & & & 8849600 & & & 77782000 & 4810.900000000001 & 86669824.9 \\
\{("/opt/candelabra/src/tests/example\_mapping/src/types.pr.rs", "Map"): primrose\_library::VecMap until n=225, then std::collections::HashMap\} & 33393 & & & 186610 & & & 598190 & & & 4652.599999999999 & 822845.6 \\
\{("/opt/candelabra/src/tests/example\_mapping/src/types.pr.rs", "Map"): std::collections::BTreeMap\} & & & 11955 & & & 269170 & 876430 & & & 3120.2000000000003 & 1160675.2 \\
\{("/opt/candelabra/src/tests/example\_mapping/src/types.pr.rs", "Map"): std::collections::HashMap\} & 11301 & & & & 186270 & & & 595450 & & 3734.5 & 796755.5 \\
\end{tabular}
\end{center}
[0Ksection_end:1711385934:compare-example_mapping
[0K
|