Ollama如何分别使用2张H100GPU和4张A100部署GPT-OSS-120B全指南:硬件配置与负载均衡实战

发布于:2025-08-15 ⋅ 阅读:(30) ⋅ 点赞:(0)

单台H100即可运行120B大模型,但高效利用多卡需解决负载分配与并发控制

在大模型推理场景中,如何高效利用多GPU资源运行超大规模模型(如GPT-OSS-120B)是开发者面临的核心挑战。本文以Ollama为框架,深入解析多GPU部署的完整方案,涵盖硬件选型多实例隔离部署负载均衡配置性能优化技巧


一、硬件配置要求与建议

GPT-OSS-120B作为高推理能力模型,其部署需谨慎规划硬件资源:

  1. GPU选型基准

    • 最低配置:单卡需80GB显存(如H100/H200)
    • 推荐配置:多卡统一架构(如4×A100 80G或2×H100),避免混合不同显存容量的GPU
    • 显存带宽建议 > 2 TB/s(H100的带宽为3.35TB/s)
  2. 异构环境警告
    Ollama当前版本(2025年8月)不支持按比例分配异构GPU显存。若使用不同规格GPU(如A100 40G + A100 80G),系统将平等对待所有设备,可能导致小显存卡OOM。


二、多GPU部署核心方案

方案1:多实例硬分配(生产环境推荐)

通过启动多个Ollama实例绑定指定GPU,实现物理隔离:

# 实例1绑定GPU0-1(大模型专用)
CUDA_VISIBLE_DEVICES=0,1 ollama serve --port 11435

# 实例2绑定GPU2-3(小模型/任务隔离)
CUDA_VISIBLE_DEVICES=2,3 ollama serve --port 11436

优势:资源强隔离,避免大模型挤占小任务资源
适用场景

  • GPT-OSS-120B需跨2卡运行
  • 同时部署120B与20B模型
  • 高优先级任务需独占资源
方案2:自动负载均衡(开发环境适用)

通过环境变量开启全局调度:

# 修改systemd配置
Environment="CUDA_VISIBLE_DEVICES=0,1,2,3"
Environment="OLLAMA_SCHED_SPREAD=1"  # 强制跨卡均衡
Environment="OLLAMA_KEEP_ALIVE=-1"   # 模型常驻内存

效果验证
执行nvidia-smi应显示所有GPU均参与计算,显存占用均衡分布


三、负载均衡层实现

Nginx反向代理配置

通过上游集群管理多实例,实现请求分发:

upstream ollama_cluster {
  least_conn;                # 最小连接数策略
  server localhost:11435 max_conns=8; 
  server localhost:11436 max_conns=8;
}

server {
  listen 11434;
  location / {
    proxy_pass http://ollama_cluster;
  }
}

关键参数

  • max_conns:限制单实例并发,防止过载
  • least_conn:优先选择负载最低的实例
高级路由策略(模型级分发)

使用LiteLLM实现请求到指定实例的路由:

model_mapping:
  - model_name: gpt-oss-120b
    api_base: http://localhost:11435  # 指向大模型实例

  - model_name: gpt

网站公告

今日签到

点亮在社区的每一天
去签到