#devices #llm #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

#717 in Machine learning

Download history 1/week @ 2024-11-13 3/week @ 2024-11-20 12/week @ 2024-12-04 14/week @ 2024-12-11 150/week @ 2025-01-29 20/week @ 2025-02-05 23/week @ 2025-02-12 5/week @ 2025-02-19 6/week @ 2025-02-26

60 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–33MB
~486K SLoC