当前位置:   article > 正文

mac m1,m2 安装 提供GPU支持的pytorch和tensorflow_apple m2 pytorch 训练速度等同于什么显卡

apple m2 pytorch 训练速度等同于什么显卡


mac m1 刚出的时候,各种支持都不完善。那时候要使用conda,只能选择miniconda。几年过去了,各种主流软件对mac m1,m2的支持都已经非常完善了。
比如Pytorch,正如官网所写:

In collaboration with the Metal engineering team at Apple, we are excited to announce support for GPU-accelerated PyTorch training on Mac.

于是,我重新基于Anaconda安装了一下GPU支持的Pytorch和Tensorflow。

Anaconda

安装

Anaconda 下载地址:Anaconda 下载
可以看到官方已经支持M1 Chip。
在这里插入图片描述
下载图形化安装包或者命令行安装方式到本地。我更喜欢命令行的安装。
然后执行即可开始安装:

bash 安装白路径/安装包名
# 或者
zsh 安装白路径/安装包名
  • 1
  • 2
  • 3

测试

测试是否安装成功:

conda --version
  • 1

如果成功输出,则代表安装成功。(安装完成之后要source一下~/.zshrc或者重启终端)

Pytorch

参考链接

安装步骤

安装 Xcode

安装过的可以直接到下一步。
命令行安装:xcode-select --install,或者App Store下载。

创建conda环境

conda create -n torch-gpu python=3.8
conda activate torch-gpu
  • 1
  • 2

然后到Pytorch官网选择对应的版本,复制安装命令。
在这里插入图片描述

测试

终端输入python进入python命令行。

import torch
import math

print(torch.backends.mps.is_available())
# True
print(torch.backends.mps.is_built())
# True
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

都输出为True即可。

加速效果

在这里插入图片描述

注意

To run PyTorch code on the GPU, use torch.device(“mps”) analogous to torch.device(“cuda”) on an Nvidia GPU.

在mac m1上,device是’mps’ 而不是’cuda’。

Tensorflow

参考链接

安装步骤

安装 Xcode

安装过的可以直接到下一步。
命令行安装:xcode-select --install,或者App Store下载。

指定安装环境

name: tf-metal
channels:
  - apple
  - conda-forge
dependencies:
  - python=3.9  ## specify desired version
  - pip
  - tensorflow-deps

  ## uncomment for use with Jupyter
  ## - ipykernel

  ## PyPI packages
  - pip:
    - tensorflow-macos
    - tensorflow-metal  ## optional, but recommended
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16

然后使用conda,根据文件内容创建新环境。

conda env create -n tf_gpu -f tf-metal-arm64.yaml
  • 1

加速效果

在这里插入图片描述

测试

import sys
import tensorflow.keras
import tensorflow as tf
import platform
print(f"Python Platform: {platform.platform()}")
print(f"Tensor Flow Version: {tf.__version__}")
print(f"Keras Version: {tensorflow.keras.__version__}")
print()
print(f"Python {sys.version}")

gpu = len(tf.config.list_physical_devices('GPU'))>0
print("GPU is", "available" if gpu else "NOT AVAILABLE")
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

在这里插入图片描述

The End

安装完成。

本文内容由网友自发贡献,转载请注明出处:https://www.wpsshop.cn/w/盐析白兔/article/detail/394572
推荐阅读
相关标签
  

闽ICP备14008679号