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

Update enzyme-ci.yml #84

Merged
merged 19 commits into from
Apr 19, 2024
Merged

Update enzyme-ci.yml #84

merged 19 commits into from
Apr 19, 2024

Conversation

ZuseZ4
Copy link
Member

@ZuseZ4 ZuseZ4 commented Mar 30, 2024

We don't need to build LLD (takes 2.5 min), we just want to use some LLD for linking. We also don't need llvm plugins.

We don't need to build LLD (takes 2.5 min), we just want to use some LLD for linking. We also don't need llvm plugins.
@ZuseZ4 ZuseZ4 requested a review from jedbrown March 30, 2024 02:53
Co-authored-by: Jed Brown <jed@jedbrown.org>
@ZuseZ4
Copy link
Member Author

ZuseZ4 commented Mar 30, 2024

@wsmoses do you know by coincidence how to get lld into CI? Apt install gives permission denied and building takes 3 minutes (I hope to get CI down to +-10 min)

cc @tgymnich

@ZuseZ4
Copy link
Member Author

ZuseZ4 commented Apr 7, 2024

@wsmoses Just trying to fix our CI with @I-Al-Istannen and Jed, could you please try again adding LLD when you have some free cycles (your last commit failed)? Building LLD + LLD wrapper takes up to 8 minutes, which is up to half the CI time if there isn't much else to be rebuild.

@ZuseZ4
Copy link
Member Author

ZuseZ4 commented Apr 13, 2024

@wsmoses can you please look again at this? 30 min compile times on every PR are unfortunate.

@ZuseZ4
Copy link
Member Author

ZuseZ4 commented Apr 14, 2024

@tgymnich Do you have credentials to help with setting up lld here?

@wsmoses
Copy link
Member

wsmoses commented Apr 15, 2024

@tgymnich should have permissions now, regardless pushed an lld alias, let's see if that makes rust happy.

If not, LLD is installed in the commit I made a few weeks ago to this branch, but wasn't being picked up by rust since there isn't an alias from lld-17 to lld.

Note that the CI should not install such an alias system-wide as other runners that use the same machine will run into other LLVM issues otherwise.

I added a local alias in the script, let's see if that fixes it.

If not, presumably you need to tell rust about the different lld.

@wsmoses
Copy link
Member

wsmoses commented Apr 15, 2024

It looks like it got further (an earlier task seemed to succeed that had fuse-ld=lld) but this one did not and then err'd.

Looks to be inside rust so going to throw it back to you @ZuseZ4 .

  error: linking with `cc` failed: exit status: 1
    |
    = note: LC_ALL="C" PATH="/mnt/Data/_work/rust/rust/build/build/x86_64-unknown-linux-gnu/stage0/lib/rustlib/x86_64-unknown-linux-gnu/bin:/home/ubuntu/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin" VSLANG="1033" "cc" "-m64" "/tmp/rustcukG6IH/symbols.o" "/mnt/Data/_work/rust/rust/build/build/x86_64-unknown-linux-gnu/stage0-std/release/build/std-f3a4a45b769de4cc/build_script_build-f3a4a45b769de4cc.build_script_build.73daf00d2df5a36d-cgu.0.rcgu.o" "/mnt/Data/_work/rust/rust/build/build/x86_64-unknown-linux-gnu/stage0-std/release/build/std-f3a4a45b769de4cc/build_script_build-f3a4a45b769de4cc.build_script_build.73daf00d2df5a36d-cgu.1.rcgu.o" "/mnt/Data/_work/rust/rust/build/build/x86_64-unknown-linux-gnu/stage0-std/release/build/std-f3a4a45b769de4cc/build_script_build-f3a4a45b769de4cc.2dxvdtcu2dacw3os.rcgu.o" "-Wl,--as-needed" "-L" "/mnt/Data/_work/rust/rust/build/build/x86_64-unknown-linux-gnu/stage0-std/
    = note: collect2: fatal error: cannot find 'ld'
            compilation terminated.
            ```l

@wsmoses
Copy link
Member

wsmoses commented Apr 15, 2024

That is weird though since I assume ld is on the system? Let alone the lld we added. Let me try one more thing

@ZuseZ4
Copy link
Member Author

ZuseZ4 commented Apr 15, 2024

Thanks, if the system lld now is around and works, I'll experiment a bit more. cc @jedbrown if you have an idea, please feel free to push too

@jedbrown
Copy link

I don't think the alias can work because that's only in the shell, not even an exported environment variable. Perhaps we could place a ld.lld symlink in PATH and export it. https://lld.llvm.org/#using-lld

I also note the error message refers to ld, not ld.lld or lld, despite the fact that -fuse-ld=lld has been passed in that command. I don't know if that's a misleading error message or if it's actually looking for the name ld.

     = note: collect2: fatal error: cannot find 'ld'

@wsmoses
Copy link
Member

wsmoses commented Apr 15, 2024 via email

tgymnich and others added 4 commits April 15, 2024 16:04
Co-authored-by: I-Al-Istannen <i-al-istannen@users.noreply.github.com>
@ZuseZ4
Copy link
Member Author

ZuseZ4 commented Apr 19, 2024

Jay!

@ZuseZ4 ZuseZ4 merged commit 4cae481 into master Apr 19, 2024
9 of 12 checks passed
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 this pull request may close these issues.

4 participants