GPU选择
实测速度 结论:3090性价比最高
| Metric标准 | K(Kilo) | M(Mega) | G(Giga) | T(tera) |
|---|---|---|---|---|
| Decimal | 10*3 | 10*6 | 10*9 | 10*12 |
| IEC标准 | Ki(Kibi) | Mi(mebi) | Gi(gibi) | Ti(tebi) |
|---|---|---|---|---|
| Binary | 2*10 | 2*20 | 2*30 | 2*40 |
在描述模型的params时单位常用M(million=10*6)或B(billion=10*9), 有时候也用M(mega)或G(Giga),G与B等价。
| 小模型 | 大模型 | 超大模型 |
|---|---|---|
| params <1B | 1B< params <100B | 100B< params <10T |
单卡训练显存要比模型参数大4倍 如 RTX 3090(24 GB) 最大推理推理 INT8:≈ 24 B 参数 最大训练 INT8:≈ 6 B 参数 最大推理推理 FP16:≈ 12 B 参数 最大训练 FP16:≈ 3 B 参数 最大推理推理 FP32:≈ 6 B 参数 最大训练 FP32:≈ 1.5 B 参数
CPU选择
- 核心架构(最重要)
- 新一代 > 旧一代
- AMD EPYC 7xxx3系列 > EPYC 7xxx2系列 > EPYC 7xxx1系列
- Intel Xeon Platinum > Xeon Gold > Xeon E5
- 核心数量
- 128核 > 96核 > 80核 > 72核 > 64核 > 48核 > 32核 > 24核
- 内存支持
- 2T > 512G > 503G > 251G > 196G > 128G > 62G
| 处理器型号 | 核心/线程 | 架构/代号 | 推出年代 | 内存支持 |
|---|---|---|---|---|
| AMD EPYC 7J13 | 64核 / 128线程 | Zen 3 (Milan) | 2021年 | 503G |
| AMD EPYC 7T83 | 64核 / 128线程 | Zen 3 (Milan) | 2021年 | 503G |
| AMD EPYC 7702 | 64核 / 128线程 | Zen 2 (Rome) | 2019年 | 503G |
| AMD EPYC 7742 | 64核 / 128线程 | Zen 2 (Rome) | 2019年 | 503G |
| AMD EPYC 7542 | 32核 / 128线程 | Zen 2 (Rome) | 2019年 | 2T |
| AMD EPYC 7513 | 32核 / 128线程 | Zen 3 (Milan) | 2021年 | 512G |
| AMD EPYC 7532 | 32核 / 128线程 | Zen 2 (Rome) | 2019年 | 512G |
| Intel Xeon Platinum 8163 | 24核 / 96线程 | Skylake-SP | 2017年 | 512G |
| AMD EPYC 7451 | 48核 / 96线程 | Zen (Naples) | 2017年 | 128G |
| AMD EPYC 7601 | 32核 / 64线程 | Zen (Naples) | 2017年 | 251G |
| Intel Xeon Gold 6133 | 未知 / 80线程 | Skylake-SP | 2017年 | 196G |
| Intel Xeon E5-2686 v4 | 18核 / 72线程 | Broadwell-EP | 2016年 | 128G |
| Intel Xeon E5-2696 v2 | 12核 / 24线程 | Ivy Bridge-EP | 2013年 | 62G |
Linux常用命令
运行完自动关机
# 恒源云已经对底层系统进行定制,shutdown 命令可能是平台提供的 自定义操作(比如关闭当前训练实例),而非传统 Linux 系统的关机命令。
;shutdown
查看文件数量
# 统计当前目录下的文件(不包括子目录),不包含隐藏文件
ls -l | grep "^-" | wc -l
# 统计当前目录下的文件(不包括子目录),包含隐藏文件
ls -Al | grep "^-" | wc -l
# 统计当前目录下的文件(包括隐藏文件),不递归子目录
find . -maxdepth 1 -type f | wc -l
# 统计当前目录下所有条目(包括目录),不包含隐藏文件
ls -1 | wc -l
# 统计当前目录下所有条目(包括目录),包含隐藏文件
ls -A1 | wc -l
文件和目录
pwd # 查看当前所在目录位置
cd dir # 进入'dir'目录中
ls # 查看当前目录下的文件
mkdir dir1 dri2 # 在当前目录下创建'dir1'和'dri2'目录
rm emptyfile # 删除文件
rm -rf dir1 dri2 # 删除'dir1'和'dir2'目录并同时删除其内容
cp file1 file2 # 复制一个文件
cp -r file1 file2 # 复制一个目录
mv /path/to/source_dir/* /path/to/target_dir/ # 将某个目录下的所有文件移动到另一个目录
find /hy-tmp/123/ -maxdepth 1 -type f -exec mv {} /hy-tmp/123/validation/ \; # # 将某个目录下的所有文件(不包括目录)移动到另一个目录
磁盘空间
du -sh dir1 # 估算目录 'dir1' 已经使用的磁盘空间
'''
-h:以人类可读的格式显示(如 KB、MB、GB)。
-s:仅显示总占用空间(不显示子目录)。
--max-depth=N:限制显示的目录深度(N 为层级)。
-a:显示所有文件和目录的占用(默认只显示目录)。
'''
打包和压缩文件
zip -r file1.zip file1 file2 dir1 # 将几个文件和目录同时压缩成一个zip格式的压缩包
unzip file1.zip # 解压一个zip格式压缩包
tar -zcf archive.tar.gz file directory # 将文件和文件夹压缩成 .tar.gz 文件
tar -xvzf archive.tar.gz # 解压一个gzip格式的压缩包
tar -xvjf archive.tar.bz2 # 解压一个bzip2格式的压缩包
for tar in *.tar.gz; do tar xvzf $tar; done # 解压多个gzip格式的压缩包
for tar in *.tar.bz2; do tar xvjf $tar; done # 解压多个bzip2格式的压缩包
tar -tf archive.tar # 显示一个包中的内容
tar -cvf archive.tar file directory # 将文件或文件夹打包为 tar 文档
# sudo apt update
# sudo apt install unrar
unrar x file1.rar 解压rar包
cat Kinetics-400.tar.gz.* > Kinetics-400.tar.gz # 合并分卷压缩文件
方法 1:使用 zip 命令(压缩 + 分割)
zip -r -s 500m --out backup.zip Documents/
# -r:递归压缩目录及其子内容(必需参数)。
# -s 100m:指定每个分卷大小为 100MB(支持单位:k=KB, m=MB, g=GB)。
zip -r -s 500m --out backup.zip Documents/ # 压缩并分割目录
zip -s 0 backup.zip --out restored.zip # 合并所有分卷为 restored.zip
unzip restored.zip # 解压合并后的文件
方法 2:使用 tar + split 组合(分步压缩和分割)
tar czf - input_directory/ | split -b 100m -d -a 3 - output_part. # 压缩并分割目录
# tar czf - input_directory/:
# c:创建压缩文件。
# z:使用 gzip 压缩。
# f -:输出到标准输出(以便管道传递给 split)。
# split:
# -b 100m:分卷大小 100MB。
# -d:分卷后缀使用数字(默认是字母,如 .aa)。
# -a 3:分卷后缀长度为 3 位(如 .001)。
# output_part.:分卷文件前缀(生成 output_part.001、output_part.002 等)。
tar czf - Photos/ | split -b 200m -d -a 3 - photos_part.# 压缩并分割目录
cat photos_part.* | tar xzvf - # 合并分卷并直接解压到当前目录
系统命令
top # 查看cpu信息,一个进程对应一行,%cpu是指占用了几个核心,如果是200%,说明占用了2个核心
nvidia-smi # 查看显卡信息,此方法无法看到进程
py3smi # 查看显卡信息另一种方法,可看到是否有进程占用显卡
Windows PowerShell
Get-ChildItem -Filter *.tar.gz | ForEach-Object { tar -xzvf $_.Name }
# Get-ChildItem -Filter *.tar.gz 获取当前目录下所有 .tar.gz 文件。
# ForEach-Object {... } 对每个文件执行解压操作。
# $_.Name 表示当前处理的文件名。
下载
wget -P target_dir http:
Tmux
tmux new -s session1 # 创建一个名称为 session1 的会话
tmux detach # 或使用快捷键 Ctrl + B,再按 D 来退出会话
tmux ls # 查看当前所有的会话
tmux a -t session1 # 重新进入之前的 session1 的会话
'''
如果当前在会话当中,可以使用 Ctrl + D 或执行 logout 退出 SSH 登陆,即终止当前会话。
在不在会话中时可以执行下列命令来删除会话
'''
tmux kill-session -t session1 # 删除指定会话
tmux kill-server # 删除所有会话
公共网盘
下载gpushare-cli命令工具
curl -L https://download.gpushare.com/download/gpushare-cli-linux -o /usr/local/bin/gpushare-cli
chmod u+x /usr/local/bin/gpushare-cli
#执行gpushare-cli version命令验证是否安装成功
gpushare-cli version
v1.0.14
# AutoDL也可以用,下载到hy-tmp,然后 cp /hy-tmp/file.zip /root/autodl-tmp/
使用方法
gpushare-cli -h # 命令可参考命令使用方法
注意事项(加粗内容必看)
- 下载大文件大小无限制
- 上传单个大文件100g失败,50g可行
- linux、阿里云与win系统的内存占用计算一样,都是按进制2^10
- linux系统的内存占用显示有时比阿里云和win更大一点,因为它只保留一位小数
- gpushare-cli ali ls显示的是按进制10^3,所以要比down和up显示的大
- gpushare-cli ali down显示的是按进制2^10,速度约40MiB/s且一定要指定存放路径
- gpushare-cli ali up显示的是linux内存占用,速度极慢,且丢包率超高,分卷5g以下可能会有改善。(建议下载到本地,然后传到阿里云)
- /hy-tmp/->oss://速度约80MB/s
- oss://->/hy-tmp速度约100MB/s
- win->oss://速度约4MB/s
- MB/s 意思是每秒中传输 10^6 byte 的数据,是下载软件比较常用的显示单位
- MiB/s 意思是每秒中传输 2^20 byte 的数据,相对少见