自己同一臺電腦主機安裝3080和3090顯卡,測試發現ollama只默認跑在3090上;故查看一下設置,成功也把3080也運行起來了。
原因如下:
?開始設置記錄:
Environment Variables:
OLLAMA_DEBUG
作用:顯示額外的調試信息。
示例:export OLLAMA_DEBUG=1OLLAMA_HOST
作用:指定 ollama 服務器的 IP 地址和端口(默認為 127.0.0.1:11434)。
示例:export OLLAMA_HOST=0.0.0.0:8080OLLAMA_KEEP_ALIVE
作用:設置模型在內存中保持加載的時間(默認為 5m)。
示例:export OLLAMA_KEEP_ALIVE="10m"OLLAMA_MAX_LOADED_MODELS
作用:指定每個 GPU 上可以同時加載的最大模型數。OLLAMA_MAX_QUEUE
作用:設置允許排隊的最大請求數量。OLLAMA_MODELS
作用:指定存儲模型的目錄路徑。OLLAMA_NUM_PARALLEL
作用:設置允許同時處理的最大并行請求數量。OLLAMA_NOPRUNE
作用:禁用啟動時清理模型 blob 文件的功能。OLLAMA_ORIGINS
作用:指定允許的跨域請求來源(以逗號分隔)。
示例:export OLLAMA_ORIGINS="http://example.com,https://localhost"OLLAMA_SCHED_SPREAD
作用:強制將模型均勻分配到所有 GPU 上。OLLAMA_FLASH_ATTENTION
作用:啟用 Flash Attention(加速注意力機制)。OLLAMA_KV_CACHE_TYPE
作用:設置 K/ V 緩存的量化類型(默認為 f16)。
示例:export OLLAMA_KV_CACHE_TYPE="q4_0"OLLAMA_LLM_LIBRARY
作用:指定 LLM 庫以繞過自動檢測。OLLAMA_GPU_OVERHEAD
作用:為每個 GPU 預留一部分 VRAM(以字節為單位)。OLLAMA_LOAD_TIMEOUT
作用:設置模型加載的最大等待時間(默認為 5m)。
示例:export OLLAMA_LOAD_TIMEOUT="10m"
自己按照自己需求設置?
(phi) root@cl-System-Product-Name:/home/cl/桌面/臨床數據# cat /etc/systemd/system/ollama.service
[Unit]
Description=Ollama Service
After=network-online.target[Service]
ExecStart=/usr/local/bin/ollama serve
User=ollama
Group=ollama
Restart=always
RestartSec=3
Environment="PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin"
Environment="OLLAMA_HOST=0.0.0.0:11434"
Environment="OLLAMA_NUM_PARALLEL=4"
Environment="OLLAMA_MAX_LOADED_MODELS=2"
Environment="CUDA_VISIBLE_DEVICES=0,1"
Environment="OLLAMA_SCHED_SPREAD=true"
DeviceAllow=gpu/*
[Install]
WantedBy=default.target
?
systemctl daemon-reload
systemctl restart ollama.service
# 確保ollama服務正常運行
systemctl status ?ollama.service
?