Skip to content

Bug: RPC server doesn't load GPU if I use Vulkan  #8536

Closed

Description

@metal3d

What happened?

I compiled llamacpp with Vulkan backend. The "rpc-server" binary is linked to libvulkan but it never uses my GPUs. While "llama-cli" is OK.

Name and Version

version: 3384 (4e24cff)
built with cc (GCC) 14.1.1 20240701 (Red Hat 14.1.1-7) for x86_64-redhat-linux

What operating system are you seeing the problem on?

Linux

Relevant log output

./rpc-server
create_backend: using CPU backend
Starting RPC server on 0.0.0.0:50052, backend memory: 23967 MB


ldd ./rpc-server
        linux-vdso.so.1 (0x00007f18759f2000)
        libllama.so => /home/metal3d/Projects/ML/llama.cpp/build-rpc/src/libllama.so (0x00007f1875879000)
        libggml.so => /home/metal3d/Projects/ML/llama.cpp/build-rpc/ggml/src/libggml.so (0x00007f1875400000)
        libstdc++.so.6 => /lib64/libstdc++.so.6 (0x00007f1875000000)
        libm.so.6 => /lib64/libm.so.6 (0x00007f187531c000)
        libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007f187582b000)
        libc.so.6 => /lib64/libc.so.6 (0x00007f1874e0f000)
        /lib64/ld-linux-x86-64.so.2 (0x00007f18759f4000)
        libvulkan.so.1 => /lib64/libvulkan.so.1 (0x00007f18757af000)
        libgomp.so.1 => /lib64/libgomp.so.1 (0x00007f18752c6000)

Activity

  1. added
    low severityUsed to report low severity bugs in llama.cpp (e.g. cosmetic issues, non critical UI glitches)
    on Jul 17, 2024
  2. rgerganov commented on Aug 11, 2024

    @rgerganov
    Member

    The Vulkan backend is using the tensor->extra property which is not supported by the RPC backend. There is the same issues with the SYCL backend (PR #7682)

  3. xvim commented on Sep 4, 2024

    @xvim

    is any plan to support vulkan when using RPC backend?

  4. rgerganov commented on Sep 5, 2024

    @rgerganov
    Member

    I will try to find out how to avoid using tensor->extra in Vulkan. Maybe adding a global map ggml_tensor -> ggml_tensor_extra_gpu

  5. self-assigned this
    on Sep 5, 2024
  6. slaren commented on Sep 5, 2024

    @slaren
    Member

    The extras in the Vulkan backend are not really necessary, all the data that they contain is already present (directly or indirectly) in other fields of the tensor. At this point I think they are only there for legacy reasons, but could be removed with a refactor.

  7. added a commit that references this issue on Sep 10, 2024
  8. added a commit that references this issue on Oct 2, 2024
    090cec2
  9. added a commit that references this issue on Oct 3, 2024
    841713e
  10. metal3d commented on Oct 3, 2024

    @metal3d
    ContributorAuthor
  11. 11 remaining items

  12. added a commit that references this issue on May 6, 2026
    332b9f2
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

bug-unconfirmedlow severityUsed to report low severity bugs in llama.cpp (e.g. cosmetic issues, non critical UI glitches)

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions