diff options
author | 2017-04-06 00:33:39 +0000 | |
---|---|---|
committer | 2017-04-06 11:00:34 +0200 | |
commit | 95d4280969b8aba81dd2ee637543707f9f8e6b9d (patch) | |
tree | 836910e7156dd0fc6ca49f602d5dc72b25c6178e /combine_distfiles.sh | |
parent | 6c906e7b08970c1b2f7e1cf6bcb3d0bddb1fa1e0 (diff) |
When tracking the critical path, if not keeping incremental state, don't keep references to actions indefinitely. Instead, once an action is finished executing, keep just some metadata about it. This allows actions to be unconditionally dropped when running with --batch, --discard_analysis_cache, and --keep_going, even if profiling is enabled.
The additional fields here add between 8 and 12 bytes per component, and we have one component per action. This additional penalty is only incurred when we are already saving memory, so I think it's ok. The full penalty will be realized only towards the end of the build, when every action has started executing at least once. Users can still specify --noexperimental_enable_critical_path_profiling if they want to squeeze even more memory out.
PiperOrigin-RevId: 152328870
Diffstat (limited to 'combine_distfiles.sh')
0 files changed, 0 insertions, 0 deletions