1. 23 12月, 2020 1 次提交
    • M
      Utilize PGO for rustc linux dist builds · a448f88b
      Mark Rousskov 提交于
      This implements support for applying PGO to the rustc compilation step (not
      standard library or any tooling, including rustdoc). Expanding PGO to more tools
      is not terribly difficult but will involve more work and greater CI time
      commitment.
      
      For the same reason of avoiding greater time commitment, this currently avoids
      implementing for platforms outside of x86_64-unknown-linux-gnu, though in
      practice it should be quite simple to extend over time to more platforms. The
      initial implementation is intentionally minimal here to avoid too much work
      investment before we start seeing wins for a subset of Rust users.
      
      The choice of workloads to profile here is somewhat arbitrary, but the general
      rationale was to aim for a small set that largely avoided time regressions on
      perf.rust-lang.org's full suite of crates. The set chosen is libcore, cargo (and
      its dependencies), and a few ad-hoc stress tests from perf.rlo. The stress tests
      are arguably the most controversial, but they benefit those cases (avoiding
      regressions) and do not really remove wins from other benchmarks.
      
      The primary next step after this PR lands is to implement support for PGO in
      LLVM. It is unclear whether we can afford a full LLVM rebuild in CI, though, so
      the approach taken there may need to be more staggered. rustc-only PGO seems
      well affordable on linux at least, giving us up to 20% wall time wins on some
      crates for 15 minutes of extra CI time (1 hour up from 45 minutes).
      
      The PGO data is uploaded to allow others to reuse it if attempting to reproduce
      the CI build or potentially, in the future, on other platforms where an
      off-by-one strategy is used for dist builds at minimal performance cost.
      a448f88b
  2. 10 12月, 2020 1 次提交
    • D
      ci: use 20.04 on x86_64-gnu-nopt builder · fb75c329
      David Wood 提交于
      This commit switches the x86_64-gnu-nopt builder to use Ubuntu 20.04,
      which contains a more recent gdb version than Ubuntu 16.04 (newer gdb
      versions fix a bug that Split DWARF can trigger, see
      rust-lang/rust#77177 for motivation). x86_64-gnu-nopt is chosen because
      it runs compare modes, which is how Split DWARF testing is implemented
      in rust-lang/rust#77177.
      Signed-off-by: NDavid Wood <david@davidtw.co>
      fb75c329
  3. 28 11月, 2020 1 次提交
  4. 26 11月, 2020 1 次提交
  5. 23 11月, 2020 1 次提交
  6. 18 11月, 2020 1 次提交
  7. 17 11月, 2020 1 次提交
  8. 15 11月, 2020 2 次提交
  9. 12 11月, 2020 2 次提交
    • D
      explicitly add llvm-9-dev in dockerfile · 63235651
      DevJPM 提交于
      apparently llvm-8-tools already had llvm-8-dev as a dependency
      which was removed in llvm-9-tools, so we need to explicitly pull
      llvm-9-dev to make a build
      63235651
    • D
      Bumped minimal tested LLVM version to 9 · f8a32e9a
      DevJPM 提交于
      This bumps the minimal tested llvm version to 9.
      This should enable supporting newer LLVM features (and CPU extensions).
      f8a32e9a
  10. 11 11月, 2020 1 次提交
  11. 08 11月, 2020 1 次提交
  12. 07 11月, 2020 2 次提交
    • M
      Add debug asserts to PR builder · 3ca88298
      Mark Rousskov 提交于
      This is helpful to catch slightly more bugs before things hit main CI, and
      doesn't cost too much extra CI time.
      3ca88298
    • M
      Re-enable debug and LLVM assertions · 51331e47
      Mark Rousskov 提交于
      Historically we've disabled these assertions on a number of platforms with the
      goal of speeding up CI. Now, though, having migrated to GitHub actions, CI is
      already pretty fast, and these debug assertions do bring us some value.
      
      This does leave in some debug assertions that are performance-related: macOS
      currently hovers at just under 2 hours.
      
      There are also some other builders which have debug and LLVM assertions
      disabled:
      
      llvm-8, PR builder:
      
      In one view, this builder tests our support for older LLVMs. But in reality, a
      lot of our tests already disable themselves on older LLVMs, and I think our
      general stance is that we really only support the in-tree LLVM. Plus, we really
      want CI times on this builder to be really low, as it's run on *every* PR --
      that's a lot of CI time.
      
      test-various:
      
      This disables debug asserts still -- as noted in the Dockerfile, we test code
      size, and we need debug asserts off for that to work well.
      51331e47
  13. 06 11月, 2020 4 次提交
  14. 05 11月, 2020 4 次提交
    • P
      ci: build docs for aarch64-unknown-linux-gnu · 874cbb88
      Pietro Albini 提交于
      874cbb88
    • P
      ci: gate on aarch64-gnu passing tests · 54a0a983
      Pietro Albini 提交于
      54a0a983
    • P
      ci: bump actions/checkout to version 2 · 308dbdd9
      Pietro Albini 提交于
      This was recommended by GitHub Support to try reducing the things that
      could've caused #78743. I checked the changelog and there should be no
      practical impact for us (we already set an explicit fetch-depth).
      308dbdd9
    • P
      ci: demote i686-unknown-freebsd to tier 2 compiler target · 53c1eb7a
      Pietro Albini 提交于
      While technically the i686-unknown-freebsd target has been a tier 2
      development platform for a long time, with full toolchain tarballs
      available on static.rust-lang.org, due to a bug in the manifest
      generation the target was never available for download through rustup.
      
      The infrastructure team privately inquired the FreeBSD package
      maintainers, and they weren't relying on those tarballs either, so it's
      a fair assumption to say practically nobody is using those tarballs.
      
      This PR then removes the CI builder that produces full tarballs for the
      target, and moves the compilation of rust-std for the target in
      dist-various-2.
      
      The x86_64-unknown-freebsd target is *not* affected.
      53c1eb7a
  15. 29 10月, 2020 1 次提交
  16. 24 10月, 2020 2 次提交
  17. 15 10月, 2020 1 次提交
  18. 13 10月, 2020 3 次提交
  19. 09 10月, 2020 1 次提交
  20. 03 10月, 2020 1 次提交
  21. 02 10月, 2020 2 次提交
  22. 01 10月, 2020 1 次提交
  23. 30 9月, 2020 1 次提交
  24. 29 9月, 2020 2 次提交
  25. 28 9月, 2020 2 次提交