Hardware:
- 64GB RAM
- 2x 2080 Ti @ 11GB VRAM
Nixie version: compiled from main
The bug:
nixie daemon --shm 20g -l 'g:0.98'
nixie run -d 0,1 ./bin/llama-server -m ~/.cache/llama.cpp/Qwen3.5-35B-A3B-Q4_K_M.gguf -c $((100*1024)) --port 8002 --host 0.0.0.0
works fine but when now also running
nixie run -d 0,1 ./bin/llama-server -m ~/.cache/llama.cpp/ggml-org_Qwen3-8B-GGUF_Qwen3-8B-Q4_K_M.gguf -c $((32*1024)) --port 8003 --host 0.0.0.0
(I don't think the specific model is important; just that it also needs VRAM)
the daemon will report:
10:44:35.849 INFO nixie::runtime::daemon_server: Client[pid=10956, comm="llama-server"] connected
10:44:35.849 DEBUG nixie::runtime::shm: open_shm(/nixie_ipc-10956-9ca0287a.shm)
10:44:35.849 INFO nixie::runtime::daemon_server: Client[pid=10956] VRAM limit: ["1 (10597 MB)", "0 (10604 MB)"]
10:44:35.849 INFO nixie::runtime::proc_ctl: Listen events from process [pid=10956]
10:44:59.021 DEBUG nixie::runtime::schedule::scheduler: Process 10956 requests scheduling
10:44:59.021 DEBUG nixie::runtime::migration::migration_plan: Device GlobalDeviceId(1) requires 0.00 B of data to migrate in
10:44:59.021 DEBUG nixie::runtime::migration::migration_plan: Device GlobalDeviceId(0) requires 0.00 B of data to migrate in
10:44:59.021 DEBUG nixie::runtime::migration::migration_plan: Created migration task: {"shm -> gpu":{"10956":"0.00 B(0)"}} for 142 us
10:44:59.021 DEBUG nixie::runtime::migration::execution: No migration needed
10:44:59.022 DEBUG nixie::runtime::schedule::scheduler: Process 10956 requests memory: 1.25 GiB
10:44:59.022 DEBUG nixie::runtime::migration::migration_plan: Device GlobalDeviceId(0) requires 1.25 GiB of data to migrate in
10:44:59.022 DEBUG nixie::runtime::migration::migration_plan: Created migration task: {"gpu -> shm":{"10031":"1.25 GiB(10)"},"shm -> gpu":{"10956":"0.00 B(0)"}} for 113 us
10:44:59.042 DEBUG nixie::runtime::migration::execution: Data migration completed in 0.020s, largest transfer size = 1.25 GiB, speed = 67.965 GB/s
10:44:59.177 DEBUG nixie::runtime::schedule::scheduler: Process 10956 requests memory: 256.00 MiB
10:44:59.177 DEBUG nixie::runtime::migration::migration_plan: Device GlobalDeviceId(0) requires 256.00 MiB of data to migrate in
10:44:59.177 DEBUG nixie::runtime::migration::migration_plan: Created migration task: {"shm -> gpu":{"10956":"0.00 B(0)"},"gpu -> shm":{"10031":"256.00 MiB(2)"}} for 74 us
10:44:59.181 DEBUG nixie::runtime::migration::execution: Data migration completed in 0.004s, largest transfer size = 256.00 MiB, speed = 70.089 GB/s
10:44:59.413 DEBUG nixie::runtime::schedule::scheduler: Process 10956 requests memory: 1.50 GiB
10:44:59.413 DEBUG nixie::runtime::migration::migration_plan: Device GlobalDeviceId(1) requires 1.50 GiB of data to migrate in
10:44:59.413 DEBUG nixie::runtime::migration::migration_plan: Created migration task: {"shm -> gpu":{"10956":"0.00 B(0)"},"gpu -> shm":{"10031":"1.50 GiB(12)"}} for 71 us
10:45:02.121 WARN nixie::runtime::migration::execution: Failed to complete D2H migration RPC to source process
10:45:02.121 WARN nixie::runtime::migration::execution: Failed to complete D2H migration RPC to source process
10:45:02.121 WARN nixie::runtime::migration::execution: Failed to complete D2H migration RPC to source process
10:45:02.121 WARN nixie::runtime::migration::execution: Failed to complete D2H migration RPC to source process
10:45:02.121 WARN nixie::runtime::migration::execution: Failed to complete D2H migration RPC to source process
10:45:02.121 WARN nixie::runtime::migration::execution: Failed to complete D2H migration RPC to source process
10:45:02.121 WARN nixie::runtime::migration::execution: Failed to complete D2H migration RPC to source process
10:45:02.121 WARN nixie::runtime::migration::execution: Failed to complete D2H migration RPC to source process
10:45:02.121 WARN nixie::runtime::migration::execution: Failed to complete D2H migration RPC to source process
10:45:02.121 WARN nixie::runtime::migration::execution: Failed to complete D2H migration RPC to source process
10:45:02.121 WARN nixie::runtime::migration::execution: Failed to complete D2H migration RPC to source process
10:45:02.121 WARN nixie::runtime::migration::execution: Failed to complete D2H migration RPC to source process
10:45:02.121 DEBUG nixie::runtime::migration::execution: Data migration completed in 2.708s, largest transfer size = 1.50 GiB, speed = 0.595 GB/s
10:45:02.363 INFO nixie::runtime::proc_ctl: ProcessControl [pid=10031] finished
10:45:03.441 INFO nixie::runtime::proc_ctl: ProcessControl [pid=10956] finished
10:45:03.538 DEBUG nixie::runtime::schedule::scheduler: Process 10956 exited
and the first nixie run process crashes with:
NIXIE-WARN CUDA error from Failed to copy memory from device to host: CUDA_ERROR_INVALID_HANDLE
NIXIE-WARN CUDA error from Failed to copy memory from device to host: CUDA_ERROR_INVALID_HANDLE
NIXIE-WARN CUDA error from Failed to copy memory from device to host: CUDA_ERROR_INVALID_HANDLE
[...]
NIXIE-WARN CUDA error from Failed to copy memory from device to host: CUDA_ERROR_INVALID_HANDLE
NIXIE-WARN CUDA error from Failed to copy memory from device to host: CUDA_ERROR_INVALID_HANDLE
NIXIE-WARN CUDA error from Failed to record CUDA event for d2h copy: CUDA_ERROR_INVALID_HANDLE
Hardware:
Nixie version: compiled from main
The bug:
works fine but when now also running
(I don't think the specific model is important; just that it also needs VRAM)
the daemon will report:
and the first
nixie runprocess crashes with: