Skip to content

Demote futures to only run in the "stable" set. #1218

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Mar 22, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions ci/check-profiling.sh
Original file line number Diff line number Diff line change
Expand Up @@ -129,7 +129,7 @@ test -f results/eprintln-Test-helloworld-Check-Full
test ! -s results/eprintln-Test-helloworld-Check-Full

# llvm-lines. `Debug` not `Check` because it doesn't support `Check` profiles.
# Including both `helloworld` and `futures` benchmarks, as they exercise the
# Including both `helloworld` and `regex` benchmarks, as they exercise the
# zero dependency and the greater than zero dependency cases, respectively, the
# latter of which has broken before.
RUST_BACKTRACE=1 RUST_LOG=raw_cargo_messages=trace,collector=debug,rust_sysroot=debug \
Expand All @@ -138,12 +138,12 @@ RUST_BACKTRACE=1 RUST_LOG=raw_cargo_messages=trace,collector=debug,rust_sysroot=
--id Test \
--profiles Debug \
--cargo $bindir/cargo \
--include helloworld,futures \
--include helloworld,regex \
--scenarios Full
test -f results/ll-Test-helloworld-Debug-Full
grep -q "Lines.*Copies.*Function name" results/ll-Test-helloworld-Debug-Full
test -f results/ll-Test-futures-Debug-Full
grep -q "Lines.*Copies.*Function name" results/ll-Test-futures-Debug-Full
test -f results/ll-Test-regex-Debug-Full
grep -q "Lines.*Copies.*Function name" results/ll-Test-regex-Debug-Full


#----------------------------------------------------------------------------
Expand Down
7 changes: 5 additions & 2 deletions collector/benchmarks/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,6 @@ They mostly consist of real-world crates.
ensure a lot of invariants. Stresses anything related to resolving
trait bounds, by having a lot of trait impls for a large number of different
types.
- **futures**: A futures implementation. Used by many Rust programs.
- **helloworld**: A trivial program. Gives a lower bound on compile time.
- **html5ever**: An HTML parser. Stresses macro parsing code significantly.
- **hyper-2**: A fairly large crate. Utilizes async/await, and used by
Expand Down Expand Up @@ -129,7 +128,11 @@ Rust code being written today.

- **encoding**: An old crate providing character encoding support. Contains
some large tables.
- **futures**: See above.
- **futures**: v0.1.0 of the popular `futures` crate, which was used by many
Rust programs. Newer versions of this crate (e.g. v0.3.21 from February 2021)
contain very little code, instead relying on sub-crates. This makes them less
interesting as benchmarks, because we only measure final crate compilation.
This is why there is no futures crate among the primary benchmarks.
- **html5ever**: See above.
- **inflate**: An old implementation of the DEFLATE algorithm. Contains
a very large function containing many locals and basic blocks, similar to
Expand Down
2 changes: 1 addition & 1 deletion collector/benchmarks/futures/perf-config.json
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
{
"category": "primary-and-stable"
"category": "stable"
}