- 28 Oct, 2025 1 commit
-
-
Michael Yang authored
-
- 27 Oct, 2025 1 commit
-
-
nicole pardal authored
Currently, checking the length of prompts for embeddings to ensure they fit in the context window (and possible truncation) occurs in two places - the Ollama server and runner. This can lead to inconsistencies in both the checks and reported number of tokens processed. Since we have to do this processing in the runner, this consolidates all of the logic there.
-
- 25 Oct, 2025 1 commit
-
-
Patrick Devine authored
-
- 23 Oct, 2025 4 commits
-
-
Jesse Gross authored
If we create a memory layout that should fit based on report free VRAM but allocation still fails, we start applying a backoff. This reduces free VRAM by an exponential percentage (1%, 2%, 4%...). However, the points chosen tend to be too dense at the beginning and too sparse at the end. Therefore, this switches to an incremental backoff (10%, 20%, 30%...).
-
Vinh Nguyen authored
-
Daniel Hiltgen authored
* DRY out the runner lifecycle code Now that discovery uses the runners as well, this unifies the runner spawning code into a single place. This also unifies GPU discovery types with the newer ml.DeviceInfo * win: make incremental builds better Place build artifacts in discrete directories so incremental builds don't have to start fresh * Adjust sort order to consider iGPUs * handle cpu inference oom scenarios * review comments
-
Jesse Gross authored
We currently short circuit generation of the cache mask and just generate an empty tensor of the correct size. However, in some cases, this can also skip a cast operation. This can result in the worst case graph being not fully worst case. We don't actually need the fast path for mask generation, so it's better to just use the normal code path.
-
- 22 Oct, 2025 4 commits
-
-
Jesse Gross authored
Currently, we only record the time for the last batch when processing the prompt. This results in unrealistically high numbers for the old llama runner. Before: total duration: 31.273112939s load duration: 4.97054657s prompt eval count: 32768 token(s) prompt eval duration: 235.137439ms prompt eval rate: 139356.80 tokens/s eval count: 1873 token(s) eval duration: 18.173182374s eval rate: 103.06 tokens/s After: total duration: 30.024798033s load duration: 4.758588663s prompt eval count: 32768 token(s) prompt eval duration: 7.779621548s prompt eval rate: 4212.03 tokens/s eval count: 1769 token(s) eval duration: 17.148014223s eval rate: 103.16 tokens/s
-
frob authored
-
nicole pardal authored
-
Patrick Devine authored
-
- 20 Oct, 2025 5 commits
-
-
Jeffrey Morgan authored
-
Michael Yang authored
-
Jeffrey Morgan authored
-
Daniel Hiltgen authored
Users on Windows without GPUs are reporting errors relating to cudaDriverGetVersion with the device set to -1. This ensures we only grab the driver once we're enumerating actual devices.
-
Daniel Hiltgen authored
Some users are hitting timeouts. We'd like to make this faster, but for now make sure we don't timeout too aggressively.
-
- 18 Oct, 2025 2 commits
-
-
Daniel Hiltgen authored
Co-authored-by:Michael Yang <git@mxy.ng>
-
Daniel Hiltgen authored
When loading the dynamic libraries, if something goes wrong report some details. Unfortunately this wont explain which dependencies are missing, but this breadcrumb in the logs should help us diagnose GPU discovery failures.
-
- 17 Oct, 2025 1 commit
-
-
Daniel Hiltgen authored
* test: harden scheduler tests This removes reschedDelay which was stale code, and adds a new configurable timeout for the waitForVRAMRecovery so tests can now set the timeout to be very short to avoid the scheduler getting stuck and hitting a test timeout. * test: tune tests for partial loads Give stress tests more time when the model is split between CPU/GPU
-
- 16 Oct, 2025 11 commits
-
-
Daniel Hiltgen authored
8.7 is Jetpack only, so no need on x86 builds 10.3 covers [G]B300
-
Jeffrey Morgan authored
Adds a temporary global flag to renderers that causes renderers to always render images as [img]. In a follow up change, we will consider making this the default, and this flag could eventually be removed
-
Grace authored
* changing initial status to take into consideration prefill * Add seperate strings for content and thinking builder * thinking tests * remove white space from string before closing think tag
-
Daniel Hiltgen authored
Forward compat on the newer driver doesn't seem to be working. This should get 5.2 working on newer drivers again.
-
Daniel Hiltgen authored
-
Daniel Hiltgen authored
The workaround has been moved into the underlying C++ code. This reverts commit e4340667.
-
Thomas Stocker authored
* vulkan: Get FilterID from Backend for Vulkan * Fixing patch
-
weedge authored
-
zhetaicheleba authored
-
Devon Rifkin authored
openai: make tool call conversion fns public
-
Devon Rifkin authored
-
- 15 Oct, 2025 7 commits
-
-
Daniel Hiltgen authored
Initially Vulkan support in Ollama will require building from source. Once it is more thoroughly tested and we have fixed any critical bugs, then we can bundle Vulkan into the official binary releases.
-
Daniel Hiltgen authored
-
Santosh Bhavani authored
* Simplify NVML fallback for unified memory GPUs Remove device-specific checks and environment variable dependency for NVML_ERROR_NOT_SUPPORTED fallback. When NVML doesn't support memory queries, unconditionally use /proc/meminfo instead of checking device names or OLLAMA_UNIFIED_MEMORY environment variable. This provides better memory reporting by using MemAvailable which accounts for reclaimable memory, avoiding the underreporting issue described in NVIDIA support article a_id/5728. Tested on NVIDIA GB10 unified memory iGPU with consistent and accurate memory reporting across multiple model load/unload cycles. * Add NVML fallback patch for unified memory GPUs
-
Jesse Gross authored
-
Jeffrey Morgan authored
-
Parth Sareen authored
-
Jesse Gross authored
Currently, if you set num_gpu then this forces the model to load with that number of layers in the current configuration. This is done regardless of any other information, which means that no eviction is performed even if another model is loaded. This behavior is different from the old estimates (and still happens for models that runs on the llama engine). In those cases, models would be evicted if needed to load at the requested number of layers. That behavior is more useful and less surprising, so this changes the new estimates to match. Fixes #12580
-
- 14 Oct, 2025 3 commits
-
-
Devon Rifkin authored
qwen3-coder: support anyOf when parsing tool calls
-
Devon Rifkin authored
-
Daniel Hiltgen authored
On the llama runner, after the recent GGML bump a new log line reports incorrect 0 MiB free after our patch to remove memory from the props. This adjusts the llama.cpp code to fetch the actual free memory of the active device.
-