Skip to content
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

replaces ccache with sccache #4534

Merged
merged 15 commits into from
Feb 8, 2022
Merged

Conversation

AyodeAwe
Copy link
Contributor

This PR replaces ccache with sccache.

@github-actions github-actions bot added conda conda issue gpuCI gpuCI issue labels Jan 27, 2022
@AyodeAwe AyodeAwe added improvement Improvement / enhancement to an existing function non-breaking Non-breaking change labels Jan 27, 2022
@ajschmidt8 ajschmidt8 added this to PR-WIP in v22.04 Release via automation Jan 28, 2022
@AyodeAwe AyodeAwe changed the base branch from branch-22.02 to branch-22.04 January 28, 2022 16:41
@AyodeAwe
Copy link
Contributor Author

rerun tests

@ajschmidt8
Copy link
Member

rerun tests

@ajschmidt8
Copy link
Member

@ajschmidt8
Copy link
Member

@ajschmidt8
Copy link
Member

rerun tests

@ajschmidt8 ajschmidt8 marked this pull request as ready for review February 2, 2022 17:29
@ajschmidt8 ajschmidt8 requested review from a team as code owners February 2, 2022 17:29
@ajschmidt8 ajschmidt8 added the 5 - DO NOT MERGE Hold off on merging; see PR for details label Feb 2, 2022
@ajschmidt8
Copy link
Member

PR is ready for review, but we'll wait to merge until all the other PRs are confirmed working as well.

@ajschmidt8
Copy link
Member

@ajschmidt8
Copy link
Member

build where both architectures successfully used cache - https://gpuci.gpuopenanalytics.com/job/rapidsai/job/gpuci/job/cuml/job/prb/job/cuml-prb/10905/

Copy link
Member

@ajschmidt8 ajschmidt8 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@ajschmidt8 ajschmidt8 removed the 5 - DO NOT MERGE Hold off on merging; see PR for details label Feb 2, 2022
BUILD.md Outdated
@@ -58,7 +58,7 @@ $ PARALLEL_LEVEL=8 ./build.sh libcuml # build and install libcuml limiting para
$ ./build.sh libcuml -n # build libcuml but do not install
$ ./build.sh prims --allgpuarch # build the ML prims tests for all supported GPU architectures
$ ./build.sh cuml --singlegpu # build the cuML python package without MNMG algorithms
$ ./build.sh --ccache # use ccache to cache compilations, speeding up subsequent builds
$ ./build.sh --sccache # use sccache to cache compilations, speeding up subsequent builds
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we keep both options? sccache only really benefits docker users due to the absolute path requirement, ccache can still be benefitial for some developers

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I agree we should keep both options by transforming the flag into an option.

./build.sh --cache-tool=[ccache|sccache]

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Since sccache defaults to a local cache in the absence of a remote configuration, would that be sufficient? Or do you guys still think we should include both sccache and ccache?

Copy link
Member

@ajschmidt8 ajschmidt8 Feb 3, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We're going to be removing ccache from our CI containers in favor of sccache. So if users are going to use our containers to build, then sccache will already be configured and they'll benefit from the shared cache by using absolute paths in the containers. If they build outside of our containers, then wouldn't sccache just behave similarly to ccache anyway (i.e. use a local cache)?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If they build outside of our containers, then wouldn't sccache just behave similarly to ccache anyway (i.e. use a local cache)?

We shouldn't presume that sccache is sufficient to all developers / people building from source. sccache has more restrictions ( narrower compiler support, abs paths ) and these could make it a non-starter for these people. By making the option flexible by having the user specify the name instead of hardcoding it, we support more use cases at no real cost.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@dantegd @robertmaynard Is it cool if we revert these changes made to BUILD.md and the associated files, and add them as a future enhancement? This way we don't hold up the rest of the PR from being merged.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sounds good by me, @AyodeAwe can you open a GH issue to track?

Copy link
Contributor Author

@AyodeAwe AyodeAwe Feb 4, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes @dantegd. See here

I will push the reverts now and await your further review/approval.

v22.04 Release automation moved this from PR-WIP to PR-Needs review Feb 3, 2022
@dantegd
Copy link
Member

dantegd commented Feb 7, 2022

rerun tests

@codecov-commenter
Copy link

Codecov Report

❗ No coverage uploaded for pull request base (branch-22.04@a70044c). Click here to learn what that means.
The diff coverage is n/a.

Impacted file tree graph

@@               Coverage Diff               @@
##             branch-22.04    #4534   +/-   ##
===============================================
  Coverage                ?   85.71%           
===============================================
  Files                   ?      236           
  Lines                   ?    19365           
  Branches                ?        0           
===============================================
  Hits                    ?    16599           
  Misses                  ?     2766           
  Partials                ?        0           
Flag Coverage Δ
dask 46.48% <0.00%> (?)
non-dask 78.63% <0.00%> (?)

Flags with carried forward coverage won't be shown. Click here to find out more.


Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update a70044c...dbefd8d. Read the comment docs.

v22.04 Release automation moved this from PR-Needs review to PR-Reviewer approved Feb 8, 2022
@ajschmidt8
Copy link
Member

@gpucibot merge

@rapids-bot rapids-bot bot merged commit 84383d1 into rapidsai:branch-22.04 Feb 8, 2022
v22.04 Release automation moved this from PR-Reviewer approved to Done Feb 8, 2022
vimarsh6739 pushed a commit to vimarsh6739/cuml that referenced this pull request Oct 9, 2023
This PR replaces `ccache` with `sccache`.

Authors:
  - Jake Awe (https://github.com/AyodeAwe)
  - AJ Schmidt (https://github.com/ajschmidt8)

Approvers:
  - Dante Gama Dessavre (https://github.com/dantegd)
  - AJ Schmidt (https://github.com/ajschmidt8)

URL: rapidsai#4534
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
conda conda issue gpuCI gpuCI issue improvement Improvement / enhancement to an existing function non-breaking Non-breaking change
Projects
No open projects
Development

Successfully merging this pull request may close these issues.

None yet

5 participants