apache / apache/gluten

[VL] Not load GPU libraries on CPU node

Open
#11,844 0 comments 0 reactions 0 assignees View on GitHub
enhancement
Dominant language
Scala
Stars
1.6k
Forks
657
Avg merge
2d 21h
Merged PRs (30d)
85

Description

### Description

Now it will throw exception that cannot find cuda libraries.
Because libvelox.so link cudf::cudf, so all the environment will try to load gpu libraries.
May load velox always, and load separate library, e.g. libvelox_cudf.so library conditionally depending on the jni call if it is gpu node on java side.
The detection should not rely on GPU library, like detecting if the command `nvidia-smi` exists.

### Gluten version

None

Contributor guide

Open the contributing guide

Research direction

Trace how libvelox.so is linked and loaded through the JNI call on the Java side, and identify where cudf::cudf causes CUDA libraries to load on CPU nodes. Compare that path with the proposed conditional libvelox_cudf.so loading and use a CPU-node check that does not depend on nvidia-smi. Done means CPU nodes load without CUDA-library errors while GPU nodes still load the GPU library.

Written by the indexing model from the issue text.

Assessment

Tech stack
java, scala
Domain
backend, build-system
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.