Rust-GPU / Rust-GPU/rust-gpu

Clippy linting is very slow

Open
#528 13 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Rust
Stars
3.4k
Forks
125
PR merge metrics
No merged PRs in 30d

Description

I switched to using clippy for linting GPU code in CI and I think it increased CI time by ~8 minutes.
I don't think it should take 8 minutes to run cargo clippy though.

Here is CI run where build.rs for GPU crate was skipping all the work under Clippy: https://github.com/nazar-pc/abundance/actions/runs/21787689837/job/62861720690#step:11:1022
Here is CI run where SpirvBuilder::clippy() is called: https://github.com/nazar-pc/abundance/actions/runs/21905750349/job/63245490660#step:11:1023

Clippy time for ab-farmer crate that includes ab-proof-of-space-gpu as a dependency increased from ~2 minutes to over 10 minutes.

Dependencies for SPIR-V are fairly minimal too and should not take nearly as much time to compile and lint: https://github.com/nazar-pc/abundance/blob/c55eae7482783aea52f0f1e9510e71378c9f10b8/crates/farmer/ab-proof-of-space-gpu/Cargo.toml#L19-L23

I do not know what could it possibly be doing for such a long time, but I do not like it.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by comparing the linked CI runs, focusing on build.rs for the GPU crate and the call to SpirvBuilder::clippy(). Inspect the SPIR-V dependencies listed in crates/farmer/ab-proof-of-space-gpu/Cargo.toml. Done means identifying why Clippy adds roughly eight minutes to ab-farmer CI and reducing that regression with evidence from a new run.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
compilers, performance
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.