#llm #devices #cuda #management #layer #optimization #cpp

llm_devices

llm_devices: Device management and build system for LLM inference

3 releases

0.0.3 Jan 29, 2025
0.0.2 Oct 4, 2024
0.0.1 Oct 4, 2024

#639 in Machine learning

Download history 1/week @ 2024-10-27 4/week @ 2024-11-03 3/week @ 2024-11-17 1/week @ 2024-11-24 25/week @ 2024-12-08 1/week @ 2024-12-15 132/week @ 2025-01-26 34/week @ 2025-02-02 18/week @ 2025-02-09

184 downloads per month
Used in 2 crates

MIT license

70KB
1.5K SLoC

llm_devices: Device management and build system for LLM inference

API Documentation

The llm_devices crate is a workspace member of the llm_client project. It is used as a dependency by the llm_interface crate for building llama.cpp.

Features

  • Automated building of llama.cpp with appropriate platform-specific optimizations
  • Device detection and configuration for CPU, RAM, CUDA (Linux/Windows), and Metal (macOS)
  • Manages memory by detecting available VRAM/RAM, estimating model fit, and distributing layers across devices
  • Logging tools

lib.rs:

llm_devices: Device management and build system for LLM inference

API Documentation

The llm_devices crate is a workspace member of the llm_client project. It is used as a dependency by the llm_interface crate for building llama.cpp.

Features

  • Automated building of llama.cpp with appropriate platform-specific optimizations
  • Device detection and configuration for CPU, RAM, CUDA (Linux/Windows), and Metal (macOS)
  • Manages memory by detecting available VRAM/RAM, estimating model fit, and distributing layers across devices
  • Logging tools

Dependencies

~6–32MB
~454K SLoC