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

ci: add linux binaries to release build #1505

Open
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

Green-Sky
Copy link
Collaborator

@Green-Sky Green-Sky commented May 17, 2023

adds ubuntu20.04 binaries to the releases.
and also cublas linux builds.

I changed the path for where the dynamic library is put. It was in the cmake build directory before, now its next to the executables (down into bin/).

I always build shared, with relative rpath (so no export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:. for libllama.so)
Distributing the lib makes the life for wrappers (eg python libs) easier.

not in release yet:

  • avx512 (i can't test this)
  • openblas (system lib, maybe ship?)
  • clbast (system lib, maybe ship?)

example release: https://github.com/Green-Sky/llama.cpp/releases/tag/ci_cublas_linux-e344540

@Green-Sky Green-Sky marked this pull request as ready for review May 17, 2023 20:40
@SlyEcho
Copy link
Collaborator

SlyEcho commented May 18, 2023

I think we should just add GNUInstallDirs in the CMakeLists.txt, that way distributors can configure the paths they want to install the files. cmake --install will also do strip and RPATH config, also.

@Green-Sky
Copy link
Collaborator Author

I think we should just add GNUInstallDirs in the CMakeLists.txt, that way distributors can configure the paths they want to install the files. cmake --install will also do strip and RPATH config, also.

will look into that tomorrow

@Green-Sky
Copy link
Collaborator Author

update: The cuda toolkit install now nukes the github action runners. they use too much disk space.

@SlyEcho
Copy link
Collaborator

SlyEcho commented Jun 9, 2023

Maybe we can keep just one CUDA version?

@Green-Sky
Copy link
Collaborator Author

Maybe we can keep just one CUDA version?

I think 1 runner does 1 job at a time. So I don't think that would make a difference.
Going to play around with selective installs again <.<

also, I once before saw a gh workflow where some non essentials where deleted, to make some space...

@Green-Sky Green-Sky force-pushed the ci_cublas_linux branch 8 times, most recently from dad9e66 to fafc8ae Compare June 12, 2023 19:59
@SlyEcho
Copy link
Collaborator

SlyEcho commented Jun 13, 2023

OK, managed to download everything and even run main but I get this error:

CUDA error 222 at /home/runner/work/llama.cpp/llama.cpp/ggml-cuda.cu:1244: the provided PTX was compiled with an unsupported toolchain.

This is with release fafc8ae and the CUDA 12 version. The machine also had 12 and 2080 Ti.

@Green-Sky
Copy link
Collaborator Author

@SlyEcho btw, I switched to the "networked" installer, which is just setting up an apt repo ...
but that works for us.

OK, managed to download everything and even run main but I get this error:

CUDA error 222 at /home/runner/work/llama.cpp/llama.cpp/ggml-cuda.cu:1244: the provided PTX was compiled with an unsupported toolchain.

This is with release fafc8ae and the CUDA 12 version. The machine also had 12 and 2080 Ti.

this looks very weird, no idea what is happening here. since I don't use nvprune, I thought it just works. I can run the cuda11.7 just fine on my system. My driver is too old for 12...

@Green-Sky Green-Sky force-pushed the ci_cublas_linux branch 2 times, most recently from a6c5f59 to e344540 Compare July 8, 2023 10:02
@SlyEcho
Copy link
Collaborator

SlyEcho commented Jul 8, 2023

Isn’t there an image with CUDA already installed?

I plan to go with that approach for ROCm.

@Green-Sky
Copy link
Collaborator Author

Image, hmm. installing cuda now only takes as long as the compile ~1min. so i dont really see the point of using docker (im assuming thats what you mean with image)

@Green-Sky
Copy link
Collaborator Author

Jimver/cuda-toolkit#249

this made installing not the full toolkit viable (without me manually installing the apt sources 😄 )

@SlyEcho
Copy link
Collaborator

SlyEcho commented Jul 8, 2023

Yeah, I meant Docker. AMD publishes their images with everything installed already. Although I don’t know if it’s possible to redistribute some of those runtime components

@Green-Sky
Copy link
Collaborator Author

It would be cool for windows build, those take for ever. but for linux builds is now <50% of total build time.

there is still the problem of distributing the binaries NOT every release, those uploads now take up a significant amount of time (comparatively)

@Green-Sky Green-Sky force-pushed the ci_cublas_linux branch 3 times, most recently from b41deaf to ed418de Compare July 30, 2023 14:09
@Green-Sky Green-Sky force-pushed the ci_cublas_linux branch 4 times, most recently from c5d7b68 to 20f7f4c Compare August 25, 2023 22:33
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.

2 participants