4.14 GPU and Accelerated
本小节主要介绍关于GPU 以及加速配置先关的基础知识
10:53:24-793366 INFO Kohya_ss GUI version: v24.1.6
10:53:24-844990 INFO Submodule initialized and updated.
10:53:24-846078 INFO nVidia toolkit detected
10:53:26-258020 INFO Torch 2.1.2+cu118
10:53:26-349606 INFO Torch backend: nVidia CUDA 11.8 cuDNN 8903
10:53:26-369177 INFO Torch detected GPU: Tesla T4 VRAM 14961 Arch (7, 5) Cores 40
10:53:26-373429 INFO Python version is 3.10.14 (main, Apr 6 2024, 18:45:05) [GCC 9.4.0]
10:53:26-376493 INFO Verifying modules installation status from /media/kohya_ss/requirements_linux.txt... 10:53:26-380161 INFO Verifying modules installation status from requirements.txt...
这段日志记录了一个机器学习环境初始化和验证过程的详细信息,特别是使用了NVIDIA GPU资源。让我们逐一解析这些信息:
GUI 版本:
Kohya_ss GUI version: v24.1.6: 表示使用的图形用户界面的版本是v24.1.6。
子模块初始化:
Submodule initialized and updated: 确认必要的子模块已成功初始化和更新。
NVIDIA 工具包:
nVidia toolkit detected: 系统成功检测到NVIDIA工具包,这是利用GPU功能的关键。
Torch 版本:
Torch 2.1.2+cu118: 指定了所使用的PyTorch版本,支持CUDA 11.8。
Torch 后端:
Torch backend: nVidia CUDA 11.8 cuDNN 8903: 表明PyTorch的后端支持包括CUDA 11.8和cuDNN 8903,这对在NVIDIA GPU上进行深度学习操作的优化非常重要。
GPU 详情:
Torch detected GPU: Tesla T4 VRAM 14961 Arch (7, 5) Cores 40: 提供了检测到的GPU信息:
Tesla T4: GPU型号。
VRAM 14961: 可用的显存(约15 GB)。
Arch (7, 5): GPU的架构版本。
Cores 40: GPU的计算核心数量。
Python 版本:
Python version is 3.10.14: 指定了所使用的Python版本。
(main, Apr 6 2024, 18:45:05) [GCC 9.4.0]: 提供了额外的构建信息,包括日期和用于编译Python的GCC版本。
模块验证:
Verifying modules installation status from /media/kohya_ss/requirements_linux.txt...
Verifying modules installation status from requirements.txt...
这些行表示系统正在检查从/media/kohya_ss/requirements_linux.txt
和requirements.txt
文件中指定的Python模块的安装状态,以确保所有依赖项都已正确安装。
基本配置步骤
安装
accelerate
库: 确保你已经安装了accelerate
库:运行
accelerate
配置命令: 使用accelerate
的配置命令来生成配置文件:回答配置问题: 根据你的GPU信息,以下是一些问题及其推荐的回答:
In which compute environment are you running?
选择
No distributed training
,如果你只在单个GPU上运行。选择
Multi-GPU
,如果你计划使用多个GPU(Tesla T4通常用于多GPU设置,但如果你只有一个T4则选择No distributed training
)。
Which type of machine are you using?
选择
This machine
,如果你在本地机器上运行。选择
AWS
,GCP
等,如果你在云端运行(例如在Google Cloud Platform上使用Tesla T4)。
Do you want to use fp16 (mixed precision)?
选择
Yes
,Tesla T4支持混合精度训练,这通常可以加速训练并减少显存使用。
How many processes in total will you use?
通常为
1
,除非你进行分布式训练。
Do you wish to optimize your configuration with DeepSpeed?
根据需要选择
Yes
或No
。DeepSpeed 是一个优化库,可以进一步加速和优化训练过程。如果你不确定,可以先选择No
,以后可以根据需要再启用。
完成这些问题后,accelerate
会生成一个配置文件,通常位于 ~/.cache/huggingface/accelerate/default_config.yaml
。
配置文件示例
生成的配置文件 (default_config.yaml
) 可能类似于以下内容:
使用配置文件
在你的训练脚本中,你可以使用accelerate
来加载和应用这个配置。例如:
Last updated