换笔记本初衷是什么?
发现自己机子跑不动模型。而且内存太小了,跑 noi linux 虚拟机完全跑不动。因为时间的痕迹导致我的电脑很多垃圾文件,完全不知道从哪里开始清理。
所以呢?
有两种选择,第一种选择是使用线上服务器,买商用的或者嫖课程/实验室的都行。 第二种是提升电脑配置,装显卡。
第一种,我因为之前写过一些课程的作业,都是挂载到 google colab 上的。于是想选 colab.
colab 是能用 gpu 的,但是 gpu 需要充值 pro/pro+。充值好像需要满足是特定地区用户,然后向 Yubai 咨询了他的 GPT4 充值经验,然后他说可以使用淘宝代支付。24 小时提款,大概是 ¥10/ $
那么一个显然的疑问是 colab 计算单元到底是怎么使用的?(或者说 colab 能给我多少高算力武器用)
colab 有一部分免费的 GPU 计算单元。按我的理解,计算单元的意思是每跑一份代码文件就需要使用计算单元。免费计算单元有使用限制,形如 “跑几次免费 GPU 你就无法使用 GPU 了,需要等一段时间后(常常是 1 天)才能再用”。但是你可以充值 pro/pro+ 来获得更多计算单元。 pro/pro+ 也可以同时提升一些其它性能,比如 RAM 带宽。
因为相比于买个游戏本,直接租 colab 服务器确实便宜很多,所以一开始觉得我买 500 个计算单元也肯定够造了(几百块钱好像)。不过又刷了刷知乎发现 colab 还在剥削用户使用 GPU 的范围。比如原先免费用户能用 T4,但是使用数量有限制。pro 用户可以用 A100/H100;现在 A100/H100 可能不给用了,只能把 T4 的使用放得很宽。
百度了一把发现性能上 T4<rtx4090<A100/H100。所以还是看一看另一种选择。
所以我想换一个自己的电脑。可能跑一些只能在本地跑的东西还方便,高配置机子我再来个双系统,很爽。
想换笔记本还是台式?
如果换笔记本,高配置整机确实会贵,而且你的选择范围就只有人家配好的那些。比如我想要暗影精灵 rtx4060+i9+32G,京东自营没买到。
当然可以换台式机!直接 remote 过去就可以!但是你可能需要自己装机,需要对各种配件有深刻的了解
读了一把 skyh 年终总结里面的装机部分,感觉确实没有这么多时间去捣鼓。不过想来装机是生存必备技能,这样的时间早晚出。
而且主要是台式机需要找地方放,我住的宿舍确实没有地方
所以我买一台笔记本。
首先因为受够了 i5-8thGen & 8G 内存的折磨,所以我必须来个 32G + i9-13000HX 的,在京东上把这不符合这两个的筛掉之后能选的范围就不多了。
当时觉得游戏本有一部分价 格贵在屏幕上了,很是不值得。当时还有一个评估标准就是笔记本重量和屏幕大小。原先的小米笔记本是 15.6寸的;重量,感觉还行。京东上一些游戏本动辄 5kg 确实给我吓到了。经提醒发现电源适配器占很大一部分,惊吓程度小了一些。
本来还问了问Yubai mac 怎么样,能不能用 VSCode;他说 Mac 加点加在图形渲染和设计上比较多,单纯论高性能计算可能并不如 rtx 显卡。不过怎么宣传 rtx 也有很多 poster 写图形渲染的,这就是打游戏必需品吗?
后来车昱辉跟我说暗影精灵的键盘分布是标准的砍掉小键盘的剩余,立马喜欢上了。而且暗影精灵在网站上能选的配置也比较多,所以打算在这里面选显卡型号。因为只信自营,而且没有 32G+i9+rtx4060。暗影精灵 slim 有 32G+i9 的 4070,暗影精灵 plus 有 32G+i9+rtx4080/rtx4090(slim要轻 plus 重,但是有笔记本键盘是机械键盘)
又了解了一下显卡天梯图和一些对显卡性价比的评论(rtx4070 据说性价比很低???)(the more you buy,the more you save)(rtx4090 看起来确实是性价比最高的),最后选了暗影精灵 plus i9-13900HX+32G+rtx4080
一些避坑
首先笔记本的显卡是比正经显卡削了一大截。参考显卡天梯图也能看出来。
其次知乎上认为线下去电脑城选笔记本是非常容易被忽悠的,有很多起了很大冲突的案例。
因为对没有那么多坑的希望导致这里没有“最后”
上面是挑选机子。下面是配置机子。
windows 我们最熟悉,该 怎么装就怎么装。g++ 命令行编译装 msys2。python 装 anaconda。这次电脑终于有实力在 navigator 里面启动 jupyter notebook 了。
装 ubuntu 的时候涉及一个磁盘分配的问题,有的电脑开启了一个叫做 bitlock 的东西,如果你启动 windows 发现你的 C 盘旁边开着一个小锁,你就上网搜一手 bitlock 移除。如果你先装了 ubuntu ,都把安全启动什么的全都取消了,可能 bitlock 会让你去找一个验证码,不要怕麻烦,用手机输入显示的网址把 6 * 6 个数字输入就好了。
如果你手里有一个 1TB 的磁盘,可能需要拆盘
https://www.zhihu.com/question/566959059/answer/2844772568
克莱时 for windows(下文用 cfw 代替)。ubuntu 装 cfw 的 linux 版本。很容易就装上了,但是发现下载了之后不能用,因为你需要在 ubuntu 设置里面找到网络,然后看到“代理”,把除了 FTP代理的3个写上 127.0.0.1 和端口 7890。
电脑上有 独立显卡 是没有用的,需要装 cuda 来让模型上 GPU。另外 tensorflow 比 torch 性能要差一些,据网上消息说,是越更新越差。我使用的 ubuntu 23.10 没有适配的 cuda,所以退而求其次选择了适配 Ubuntu 22.20 的 cuda。于是自然而然遇到了一些问题,使用 google 搜了一下报错信息,居然有人和我有一样的问题并解决了,链接在这里。
装 qq 微信都不是很顺利,原因是 .deb 文件不会处理。微信需要在 wine 下运行 windows。网上处理 .deb 文件方法很多,但是没学太会。
后面还有一些疑问等着我后面了解,不过感觉这么了解信息不是很系统,很容易向着民科的方向发展。但是真科学家就进 nvidia 搞高性能计算去了。乐。
知乎,rt4080 的Flops(float operations per second)大概是 4.9e12。但是 cuda 有很多个核,我一份代码是用几个核?训练模型能不能发挥 rtx 这个“算力怪物” 的全部性能?
多个 GPU 进行模型训练的运行过程是怎样的?我应该怎么写代码,应该怎么保存参数?AlexNet 训练据说因为严重受硬件性能限制而被迫选择多 GPU 存模型。
还想了解一下 GPU 的各种结构是怎么样的。
人们在训练模型的时候似乎可以随时保存模型参数,修改代码来改变模型运行过程,这个是怎么实现的?基于 python 是脚本语言吗?
colab 提供的 TPU 是什么。