1. 26 Mar, 2024 1 commit
  2. 10 Mar, 2024 1 commit
  3. 07 Mar, 2024 1 commit
    • Daniel Hiltgen's avatar
      Revamp ROCm support · 6c5ccb11
      Daniel Hiltgen authored
      This refines where we extract the LLM libraries to by adding a new
      OLLAMA_HOME env var, that defaults to `~/.ollama` The logic was already
      idempotenent, so this should speed up startups after the first time a
      new release is deployed.  It also cleans up after itself.
      
      We now build only a single ROCm version (latest major) on both windows
      and linux.  Given the large size of ROCms tensor files, we split the
      dependency out.  It's bundled into the installer on windows, and a
      separate download on windows.  The linux install script is now smart and
      detects the presence of AMD GPUs and looks to see if rocm v6 is already
      present, and if not, then downloads our dependency tar file.
      
      For Linux discovery, we now use sysfs and check each GPU against what
      ROCm supports so we can degrade to CPU gracefully instead of having
      llama.cpp+rocm assert/crash on us.  For Windows, we now use go's windows
      dynamic library loading logic to access the amdhip64.dll APIs to query
      the GPU information.
      6c5ccb11
  4. 23 Jan, 2024 1 commit
  5. 21 Jan, 2024 2 commits
    • Daniel Hiltgen's avatar
      Make CPU builds parallel and customizable AMD GPUs · df54c723
      Daniel Hiltgen authored
      The linux build now support parallel CPU builds to speed things up.
      This also exposes AMD GPU targets as an optional setting for advaced
      users who want to alter our default set.
      df54c723
    • Daniel Hiltgen's avatar
      Combine the 2 Dockerfiles and add ROCm · da72235e
      Daniel Hiltgen authored
      This renames Dockerfile.build to Dockerfile, and adds some new stages
      to support 2 modes of building - the build_linux.sh script uses
      intermediate stages to extract the artifacts for ./dist, and the default
      build generates a container image usable by both cuda and rocm cards.
      This required transitioniing the x86 base to the rocm image to avoid
      layer bloat.
      da72235e
  6. 11 Jan, 2024 1 commit
    • 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
  7. 10 Jan, 2024 1 commit
  8. 05 Jan, 2024 1 commit
  9. 03 Jan, 2024 1 commit
  10. 22 Dec, 2023 3 commits
  11. 19 Dec, 2023 3 commits
  12. 29 Sep, 2023 1 commit
  13. 22 Sep, 2023 1 commit