• Stefy Lanza (nextime / spora )'s avatar
    ui/gpu: explicit "Split — <card> first" options; auto = single GPU; confine non-split models · 0490e2c9
    Stefy Lanza (nextime / spora ) authored
    The per-model engine selector was confusing: "Auto" implied single-card (correct)
    but the only split choice was a generic "All GPUs". Replace with hardware-named,
    ordered choices:
      - "Auto (single GPU — by capability / free VRAM)"  → one card (unchanged)
      - "<engine> (single card)"                         → pin to that card
      - "Split — <engine> first"                         → pool across all GPUs with
        that engine's card leading (main_gpu / larger share). Generated per engine, so
        on a 3090+Radeon box you get "Split — nvidia first" and "Split — radeon first".
    Saving a split option sets gpu_split + pins engine=<lead>; the weight-ratio field
    (blank = auto by free VRAM) shows only for a split choice.
    
    Make per-model split actually function:
    - engine_supervisor: expose every GPU to engines (allow_cross) when the global
      toggle OR ANY model entry has gpu_split — otherwise the lead engine couldn't see
      the foreign card.
    - vulkan.py: when an engine sees BOTH backends' cards but THIS model isn't a split,
      confine it to its own backend (zero the foreign devices in tensor_split) so it
      can't accidentally spread — while same-backend multi-card split still works. Split
      models pool across all visible devices (lead card = device 0 = main_gpu).
    Co-Authored-By: 's avatarClaude Opus 4.8 <noreply@anthropic.com>
    0490e2c9
Name
Last commit
Last update
..
admin Loading commit data...
api Loading commit data...
backends Loading commit data...
broker Loading commit data...
frontproxy Loading commit data...
models Loading commit data...
openai Loading commit data...
pydantic Loading commit data...
queue Loading commit data...
tasks Loading commit data...
__init__.py Loading commit data...
cli.py Loading commit data...
config.py Loading commit data...
main.py Loading commit data...
platform_paths.py Loading commit data...