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

[AMDGPU CI] Circular dependencies disabling precompilation #1095

Closed
pxl-th opened this issue Nov 19, 2024 · 8 comments · Fixed by #1116
Closed

[AMDGPU CI] Circular dependencies disabling precompilation #1095

pxl-th opened this issue Nov 19, 2024 · 8 comments · Fixed by #1116

Comments

@pxl-th
Copy link
Contributor

pxl-th commented Nov 19, 2024

Not sure if this is the main cause of huge CI execution time, but there are a lot of circular dependencies detected:
https://buildkite.com/julialang/lux-dot-jl/builds/4941#0193462a-9ae9-4371-a067-d20253b0022d

Linked CI job will take 9+ hours to complete (9/94 items completed in ~1 hour).
Not sure what's exactly causing a circular dependency

@avik-pal
Copy link
Member

I think it is precompilation that is causing this. The CI time should be between 50 mins-1.5hr

@avik-pal
Copy link
Member

I can reproduce by just having Tracker + AMDGPU in a fresh env

@avik-pal
Copy link
Member

I tracked it down to AMDGPU 1.0.5 which adds AcceleratedKernels as a maindep

@pxl-th
Copy link
Contributor Author

pxl-th commented Nov 20, 2024

Digging deeper, it is caused by Polyester dependency in AcceleratedKernels.
Probably one of its dependencies messes things up

@pxl-th
Copy link
Contributor Author

pxl-th commented Nov 20, 2024

StaticArrayInterface in Polyester is causing this.

@pxl-th
Copy link
Contributor Author

pxl-th commented Nov 20, 2024

(dev) pkg> precompile
┌ Warning: Circular dependency detected. Precompilation will be skipped for:
│   Base.PkgId(Base.UUID("eb0c05c4-6780-5852-a67e-5d31d2970b9a"), "ArrayInterfaceTrackerExt")
│   Base.PkgId(Base.UUID("f517fe37-dbe3-4b94-8317-1923a5111588"), "Polyester")
│   Base.PkgId(Base.UUID("0d7ed370-da01-4f52-bd93-41d350b8b718"), "StaticArrayInterface")
│   Base.PkgId(Base.UUID("6a4ca0a5-0e36-4168-a932-d9be78d558f1"), "AcceleratedKernels")
│   Base.PkgId(Base.UUID("244f68ed-b92b-5712-87ae-6c617c41e16a"), "NNlibAMDGPUExt")
│   Base.PkgId(Base.UUID("06b0261c-7a9b-5753-9bdf-fd6840237b4a"), "StaticArrayInterfaceStaticArraysExt")
│   Base.PkgId(Base.UUID("21141c5a-9bdb-4563-92ae-f87d6854732e"), "AMDGPU")
│   Base.PkgId(Base.UUID("9f7883ad-71c0-57eb-9f7f-b5c9e6d3789c"), "Tracker")
└ @ Base.Precompilation precompilation.jl:511

(dev) pkg> st
Status `~/.julia/dev/Project.toml`
  [21141c5a] AMDGPU v1.1.2 `~/.julia/dev/AMDGPU`
  [6a4ca0a5] AcceleratedKernels v0.2.1 `~/.julia/dev/AcceleratedKernels`
  [872c559c] NNlib v0.9.24 `~/.julia/dev/NNlib`
  [f517fe37] Polyester v0.7.16 `~/.julia/dev/Polyester`
  [9f7883ad] Tracker v0.2.37 `~/.julia/dev/Tracker`

@avik-pal
Copy link
Member

I will temporarily force AMDGPU v1.0.4 in CI till we have this resolved

@avik-pal
Copy link
Member

CI time is now down to the original times

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants