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

llvmPackages_rocm.llvm explore splitting the output #242401

Open
Artturin opened this issue Jul 9, 2023 · 2 comments
Open

llvmPackages_rocm.llvm explore splitting the output #242401

Artturin opened this issue Jul 9, 2023 · 2 comments

Comments

@Artturin
Copy link
Member

Artturin commented Jul 9, 2023

Issue description

on my system many of the largest include dirs are from rocm packages

6.0M    /nix/store/l1w0j967cmbwwvs1hiwwgkr0zw88jc4y-rocm-llvm-clang-5.4.4/lib/clang/15.0.0/include/
6.1M    /nix/store/ai03g6yimz2rfid2b983nh7ksw5db06q-rocm-llvm-llvm-5.4.4/include/
7.8M    /nix/store/gcf2fgvjxvq59ailnm5lfhwpf5i9q9n2-gcc-12.3.0/lib/gcc/i686-unknown-linux-gnu/12.3.0/plugin/include/
12M     /nix/store/gcf2fgvjxvq59ailnm5lfhwpf5i9q9n2-gcc-12.3.0/include/
14M     /nix/store/jfkg8g29kgnx8im1dpb9hnjxza3gb9jf-qtbase-6.5.1/include/
18M     /nix/store/7yf7slxfqshljr89mcg7ywmj0g4fhldi-clang-14.0.6-lib/lib/clang/14.0.6/include/
18M     /nix/store/bfxhrxlbabg79z85mlyai9favwvjiqgf-qtbase-5.15.9-dev/include/
18M     /nix/store/l1w0j967cmbwwvs1hiwwgkr0zw88jc4y-rocm-llvm-clang-5.4.4/include/
19M     /nix/store/sf2x7k9jxn20dwr5vdch0y3gf42s2g45-llvm-16.0.6-dev/include/
22M     /nix/store/bxrhq6050zdaq5ldvlwhx3045y5dqlfw-rocm-llvm-llvm-5.4.4/include/

Steps to reproduce

nix path-info -r /run/current-system | xargs -i fd --type d --glob 'include' {} 2>/dev/null | xargs du -shc --apparent-size | sort -hk1

@Madouura
Copy link
Contributor

Madouura commented Sep 30, 2023

Splitting the output aside from the current split outputs will likely require patching llvm.
bin and dev end up with cyclical references, lib has it's own problems with llvm since things are set manually in the cmake files.
I wonder if we could do what we currently do with bcachefs and linux, and use the rocm llvm repo as a patch to the corresponding version? This way we could use the relevant llvm derivation's split outputs and patches.

@Madouura
Copy link
Contributor

I've been working on splitting outputs for rocm-llvm, but overall it's buggy and frankly not worth the effort to me.
I'm not against someone else working on a proper rocm-llvm split, but it's gonna be very difficult, as I've experienced.

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

No branches or pull requests

2 participants