Skip to content

装pytorch,用conda命令搞,这不多墨迹了

推荐的操作系统与python版本

image-20250219192102385

使用conda升级Python与第三方库

  1. 先升级conda工具
bash
sudo conda update conda
  1. 再更新Anaconda
bash
conda update anaconda
  1. 然后更新python
bash
conda update python
  1. 最后更新python的第三方库
conda update --all

上述更新pip也可以,但容易报奇怪错误,pip一般用于更新某个特定的包

pytorch安装

  1. 检查 Mac 是否支持 GPU 加速

Mac 目前 不支持 CUDA,但 支持 Metal(苹果 GPU 加速),适用于 M1/M2/M3 芯片(Apple Silicon)或部分 AMD 显卡。

bash
system_profiler SPDisplaysDataType | grep "Metal"

image-20250219194156393

  1. 安装 PyTorch(支持 Metal 加速)
bash
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cpu
  1. Mac:启用 GPU(Metal 后端)

有点麻烦,每次都得搞,但没找到好方法

python
import torch

def get_device():
    if torch.backends.mps.is_available():
        return torch.device("mps")
    else:
        return torch.device("cpu")

# 获取当前设备
device = get_device()
print(f"当前使用的设备: {device}")

windows版本需要安装cuda

啥是MPS?

MPS是Metal Performance Shaders的缩写,是Apple开发的一种图形和计算API,专门用于在Apple设备(如Mac、iPhone和iPad)上利用GPU进行高性能计算。

检查当前环境是否支持mps:

python
import torch
torch.backends.mps.is_available()

如果支持,用如下代码配置GPU,每次都写,有点麻烦

python
import torch

def get_device():
    if torch.backends.mps.is_available():
        return torch.device("mps")
    else:
        return torch.device("cpu")

# 获取当前设备
device = get_device()
print(f"当前使用的设备: {device}")

啥是CUDA?

windows版本的pytorch想要使用GPU的话,需要安装CUDA,简单说下啥是CUDA?

CUDA(Compute Unified Device Architecture)是由NVIDIA开发的一种并行计算平台和编程模型,使开发人员能够利用NVIDIA的图形处理单元(GPU)进行通用计算

image-20250219195502919

GPU是硬件,它只能接受二进制代码指令,即只认识0和1。

PyTorch是软件,作为一个深度学习框架位于系统的最顶层,因此硬件与软件之间无法直接进行交流。在这个过程中,需要借助编译器和接口来实现交互

CUDA是一个程序接口,它负责将PyTorch中的高层指令转换为适合GPU执行的低层指令,并负责数据的传输。

而显卡驱动则是硬件接口,负责将CUDA传来的指令编译成GPU可以执行的二进制命令。

因此,在Windows版本的PyTorch安装过程中,如果出现错误,通常问题不在于CUDA本身,而是显卡驱动的配置或兼容性。