AI服务器配置参考

发布于 2025-02-07 13:03:10

1. Nvidia显卡驱动安装:

因为现有显卡老,只能基于Ubuntu 22.04.5 LTS
需要安装包: gcc,make
https://cn.download.nvidia.com/XFree86/Linux-x86_64/550.144.03/NVIDIA-Linux-x86_64-550.144.03.run

监控:

基本用法:
nvidia-smi
这条命令会显示所有 NVIDIA GPU 的基本信息,包括 GPU 名称、总内存、已用内存等。

显示详细信息:
nvidia-smi -q
这条命令会显示每个 GPU 的详细信息,包括温度、功耗、风扇转速、驱动程序版本等。

显示 GPU 利用率:
nvidia-smi --query-gpu=utilization.gpu --format=csv
这条命令会显示 GPU 的利用率百分比。

持续监控 GPU 状态:
nvidia-smi --loop=2
这条命令会每隔 2 秒刷新一次 GPU 状态信息。

设置日志文件输出:
nvidia-smi --loop=2000 --log-file=nvidia_smi_log.csv
这条命令会每隔 2 秒记录一次 GPU 状态信息,并将其写入指定的日志文件。

显示 GPU 温度:
nvidia-smi --query-gpu=temperature.gpu --format=csv
这条命令会显示 GPU 的温度。

显示 GPU 内存使用情况:
nvidia-smi --query-gpu=memory.used,memory.total --format=csv
这条命令会显示 GPU 的已用内存和总内存。

显示 GPU 时钟频率:
nvidia-smi --query-gpu=clocks.gr --format=csv
这条命令会显示 GPU 的图形时钟频率。

显示 GPU 的 PID 和进程信息:
nvidia-smi --query-compute-apps=pid,gpu_name,process_name --format=csv
这条命令会显示使用 GPU 的进程 ID、GPU 名称和进程名称。

设置 GPU 的时钟频率:
nvidia-smi -i 0 -cgb 2505
这条命令会设置 GPU 编号 0 的图形时钟频率为 2505 MHz。

设置 GPU 的最大性能状态:
nvidia-smi -i 0 -pbr
这条命令会将 GPU 编号 0 的性能状态设置为最大。

设置 GPU 的电源限制:
nvidia-smi -i 0 -pl 150
这条命令会将 GPU 编号 0 的电源限制设置为 150W。

设置 GPU 的风扇速度:
nvidia-smi -i 0 -fan=60
这条命令会将 GPU 编号 0 的风扇速度设置为 60%。

设置 GPU 的显存超频:
nvidia-smi -i 0 -mem 1000
这条命令会将 GPU 编号 0 的显存频率设置为 1000 MHz。

显示 GPU 的 ECC 错误:
nvidia-smi -q | grep ECC
这条命令会显示 GPU 的 ECC 错误信息。

显示 GPU 的 PCI-Bandwidth:
nvidia-smi -q | grep PCI
这条命令会显示 GPU 的 PCI-Bandwidth 信息。

显示 GPU 的多处理器计数:
nvidia-smi -q | grep Multi
这条命令会显示 GPU 的多处理器计数信息。

显示 GPU 的总线 ID:
nvidia-smi -q | grep Bus
这条命令会显示 GPU 的总线 ID 信息。

显示 GPU 的驱动版本:
nvidia-smi -q | grep Driver
这条命令会显示 GPU 的驱动版本信息。

显示 GPU 的序列号:
nvidia-smi -q | grep Serial
这条命令会显示 GPU 的序列号信息。

显示 GPU 的 BIOS 版本:
nvidia-smi -q | grep BIOS
这条命令会显示 GPU 的 BIOS 版本信息。

显示 GPU 的 VBIOS 版本:
nvidia-smi -q | grep VBIOS
这条命令会显示 GPU 的 VBIOS 版本信息。

显示 GPU 的温度阈值:
nvidia-smi -q | grep Thermal
这条命令会显示 GPU 的温度阈值信息。

显示 GPU 的时钟状态:
nvidia-smi -q | grep Clocks
这条命令会显示 GPU 的时钟状态信息。

显示 GPU 的板载内存大小:
nvidia-smi -q | grep Memory
这条命令会显示 GPU 的板载内存大小信息。

显示 GPU 的电源管理状态:
nvidia-smi -q | grep Power
这条命令会显示 GPU 的电源管理状态信息。

显示 GPU 的风扇状态:
nvidia-smi -q | grep Fan
这条命令会显示 GPU 的风扇状态信息。

显示 GPU 的显存类型:
nvidia-smi -q | grep Memory.Type
这条命令会显示 GPU 的显存类型信息。

显示 GPU 的显存带宽:
nvidia-smi -q | grep Memory.Bandwidth
这条命令会显示 GPU 的显存带宽信息。

显示 GPU 的显存位宽:
nvidia-smi -q | grep Memory.Width
这条命令会显示 GPU 的显存位宽信息。

显示 GPU 的显存时钟频率:
nvidia-smi -q | grep Memory.Clock
这条命令会显示 GPU 的显存时钟频率信息。

显示 GPU 的显存时钟单位:
nvidia-smi -q | grep Memory.ClockUnit
这条命令会显示 GPU 的显存时钟单位信息。

显示 GPU 的显存类型:
nvidia-smi -q | grep Memory.Type
这条命令会显示 GPU 的显存类型信息。

显示 GPU 的显存大小:
nvidia-smi -q | grep Memory.Total
这条命令会显示 GPU 的显存大小信息。

显示 GPU 的显存已用大小:
nvidia-smi -q | grep Memory.Used
这条命令会显示 GPU 的显存已用大小信息。

显示 GPU 的显存空闲大小:
nvidia-smi -q | grep Memory.Free
这条命令会显示 GPU 的显存空闲大小信息。

显示 GPU 的显存已分配大小:
nvidia-smi -q | grep Memory.Allocated
这条命令会显示 GPU 的显存已分配大小信息。

显示 GPU 的显存未分配大小:
nvidia-smi -q | grep Memory.Unallocated
这条命令会显示 GPU 的显存未分配大小信息。

显示 GPU 的显存已缓存大小:
nvidia-smi -q | grep Memory.Cached
这条命令会显示 GPU 的显存已缓存大小信息。

显示 GPU 的显存未缓存大小:
nvidia-smi -q | grep Memory.Uncached
这条命令会显示 GPU 的显存未缓存大小信息。

查看完整的文档以获取更多详细信息。
man nvidia-smi 

2. 安装nvidia toolkit,支持docker使用gpu

curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg \
  && curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list | \
    sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | \
    sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list

Optionally, configure the repository to use experimental packages:

sed -i -e '/experimental/ s/^#//g' /etc/apt/sources.list.d/nvidia-container-toolkit.list
sudo apt-get update
sudo apt-get install -y nvidia-container-toolkit

Configure the container runtime by using the nvidia-ctk command:

sudo nvidia-ctk runtime configure --runtime=docker
sudo systemctl restart docker

3. cuda安装:官网参考

wget https://developer.download.nvidia.com/compute/cuda/12.8.0/local_installers/cuda_12.8.0_570.86.10_linux.run
sudo sh cuda_12.8.0_570.86.10_linux.run

4. 1panel安装:

curl -sSL https://resource.fit2cloud.com/1panel/package/quick_start.sh -o quick_start.sh && sudo bash quick_start.sh

登陆后最好设定容器镜像地址:
https://docker.1panel.live

安装ollma使用gpu资源:docker参考配置gpu
image.png

        ......
        container_name: ${CONTAINER_NAME}
        deploy:
            resources:
                limits:
                    cpus: ${CPUS}
                    memory: ${MEMORY_LIMIT}
                reservations:
                    devices:
                        - capabilities:
                            - gpu
                          count: 1
                          driver: nvidia
        image: ollama/ollama:0.5.7
        ......

参考完整版:

services:
  ollama_cwbio:
    image: ollama/ollama:${VERSION}
    #    container_name: ${CONTAINER_NAME}
    deploy:
      resources:
        limits:
          cpus: ${CPUS}
          memory: ${MEMORY_LIMIT}
        reservations:
          devices:
            - capabilities:
                - gpu
              count: 1
              driver: nvidia
    restart: unless-stopped
    tty: true
    ports:
      - ${HOST_IP}:${OLLAMA_PORT}:11434
    volumes:
      - ${APP_PATH}/data:/root/.ollama
    labels:
      createdBy: "bt_apps"
    networks:
      - baota_net

networks:
  baota_net:
    external: true

查看日志,有如下信息说明成功:
image.png

2 条评论

发布
问题