1. 14 Jan, 2024 1 commit
  2. 11 Jan, 2024 3 commits
    • Daniel Hiltgen's avatar
      Build multiple CPU variants and pick the best · d88c527b
      Daniel Hiltgen authored
      This reduces the built-in linux version to not use any vector extensions
      which enables the resulting builds to run under Rosetta on MacOS in
      Docker.  Then at runtime it checks for the actual CPU vector
      extensions and loads the best CPU library available
      d88c527b
    • Daniel Hiltgen's avatar
      Support multiple variants for a given llm lib type · 8da7bef0
      Daniel Hiltgen authored
      In some cases we may want multiple variants for a given GPU type or CPU.
      This adds logic to have an optional Variant which we can use to select
      an optimal library, but also allows us to try multiple variants in case
      some fail to load.
      
      This can be useful for scenarios such as ROCm v5 vs v6 incompatibility
      or potentially CPU features.
      8da7bef0
    • Jeffrey Morgan's avatar
      Increase minimum CUDA memory allocation overhead and fix minimum overhead for multi-gpu (#1896) · b24e8d17
      Jeffrey Morgan authored
      * increase minimum cuda overhead and fix minimum overhead for multi-gpu
      
      * fix multi gpu overhead
      
      * limit overhead to 10% of all gpus
      
      * better wording
      
      * allocate fixed amount before layers
      
      * fixed only includes graph alloc
      b24e8d17
  3. 10 Jan, 2024 1 commit
    • Daniel Hiltgen's avatar
      Harden GPU mgmt library lookup · 3c49c3ab
      Daniel Hiltgen authored
      When there are multiple management libraries installed on a system
      not every one will be compatible with the current driver.  This change
      improves our management library algorithm to build up a set of discovered
      libraries based on glob patterns, and then try all of them until we're able to
      load one without error.
      3c49c3ab
  4. 09 Jan, 2024 10 commits
  5. 08 Jan, 2024 1 commit
  6. 07 Jan, 2024 1 commit
  7. 03 Jan, 2024 1 commit
  8. 02 Jan, 2024 1 commit
    • Daniel Hiltgen's avatar
      Switch windows build to fully dynamic · d966b730
      Daniel Hiltgen authored
      Refactor where we store build outputs, and support a fully dynamic loading
      model on windows so the base executable has no special dependencies thus
      doesn't require a special PATH.
      d966b730
  9. 20 Dec, 2023 1 commit
    • Daniel Hiltgen's avatar
      Revamp the dynamic library shim · 7555ea44
      Daniel Hiltgen authored
      This switches the default llama.cpp to be CPU based, and builds the GPU variants
      as dynamically loaded libraries which we can select at runtime.
      
      This also bumps the ROCm library to version 6 given 5.7 builds don't work
      on the latest ROCm library that just shipped.
      7555ea44
  10. 19 Dec, 2023 2 commits