bazel /
crubit /
dcabf2c060f1eaed2530792790f4cb8875a814d4 Use a depset of strings instead of TargetAndHeaderInfo
We can pass the depset of strings to a build variable and have it flattened at execution time. This significantly reduces memory consumption in analysis phase.
Example analysis phase metrics before and after this change on `//superroot/servers:sr_www`:
```
metric mean median stddev 1-pval
cpu: 2612.022s 2637.130s 82.964
memory: 36217MB 36218MB 0.800
system: 109.650s 110.240s 3.107
wall: 61.176s 61.635s 1.891
metric mean median stddev 1-pval
cpu: 1932.974s (-26.00%) 1933.75s (-26.67%) 43.799 0.99622 (significant)
memory: 9920MB (-72.61%) 9920MB (-72.61%) 0.632 0.99622 (significant)
system: 100.272s (-8.55%) 100.750s (-8.61%) 3.082 0.99622 (significant)
wall: 48.148s (-21.29%) 46.594s (-24.40%) 2.443 0.99622 (significant)
```
PiperOrigin-RevId: 424361043
2 files changed
tree: 2affa204b0116f96b0fca20864a8d957c485b51a
- lifetime_annotations/
- rs_bindings_from_cc/
- CODE_OF_CONDUCT
- CONTRIBUTING
- LICENSE
- README.md
README.md
Crubit: C++/Rust Bidirectional Interop Tool
Extremely experimental interop tooling for C++ and Rust.
Please don‘t use, this is an experiment and we don’t yet know where will it take us. There will be breaking changes without warning. Unfortunately, we can't take contributions at this point.