Comments (4)
Separate each stage and be able to start from any stage
We need to remember here that the profiles are not small and very numerous. This could quickly eat a lot of available disk space on some builders. Some of them already don't use separate profile files for space reasons. This could likely need to be opt-in, as the incremental opt-dist use-case is less suited for CI than local work.
from rust.
cc @Kobzol
from rust.
Hi, this is a good idea, although as so very often, performance considerations are in the way of clean software design :) Ideally, we'd have each stage as a separate function and just expose the stages so that they can be mixed & matched by users as they wish. However, what we have currently is that all stages are super tightly integrated, with very careful ordering and bootstrap
argument selection that was hand-crafted so that the build takes as little time as possible (to be clear: as little time as possible if you want to run all the steps in one go).
I suppose that we could introduce separate commands for the individual stages, but I think that we'll need to duplicate some of the stage building code in main.rs
, I'm not sure if we can make the current super tightly integrated execute_pipeline
composable. But it might be worth a try :)
from rust.
We need to remember here that the profiles are not small and very numerous. This could quickly eat a lot of available disk space on some builders. Some of them already don't use separate profile files for space reasons. This could likely need to be opt-in, as the incremental opt-dist use-case is less suited for CI than local work.
After postprocessing, each profile is actually just a single file that has like 100 MiB, so this shouldn't be a concern I think. (also, I don't want to separate the stages on CI 😄)
from rust.
Related Issues (20)
- Rust 1.79 regression: LLVM hang when compiling brotli-decompressor for i686 HOT 3
- ICE report as requested; no ICE on stable HOT 2
- using `super` in doctests errors HOT 4
- unused-qualifications lint: Triggers in macro expansions while it should not HOT 4
- ICE `Option::unwrap()` in `rmeta/def_path_hash_map.rs`
- ICE: CTFE/miri crashes with overflow in built-in array index HOT 4
- Why does `Duration::from_millis` and `Duration::as_millis` take different integer sizes? (u64 vs u128) HOT 2
- Trait associated constants can have defaults while types cant
- Component conflict with bin/llc
- Tracking issue for release notes of #130295: Fix target-cpu fpu features on Armv8-R.
- Module resolution in `tests` directory differs from `src` directory HOT 2
- Permit trait object types where all (non-generic) associated constants are specified (via assoc item bindings)
- Possibly sub-optimal optimization of few bytes copy
- Compiler error on build after "git switch master" HOT 2
- "llvm-tools" cannot be installed on latest nightly HOT 6
- stack overflow in ImproperCTypesVisitor::{check_type_for_ffi, check_variant_for_ffi}
- Number types' `FromStr` impl should recognize Unicode minus HOT 13
- attempted to read from stolen value: rustc_middle::mir::Body HOT 1
- Trait inference is broken for unnamed structs HOT 2
- No diagnostics for `cfg`-ed out atomic methods
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from rust.