Closed heheyzc closed 1 year ago
卡之间的通信耗时导致的。
卡之间的通信耗时导致的。
谢谢,但是这样4卡不如一卡不是很合理,这样并行训练没有啥意义了不如单卡训练,有什么办法可以优化吗
4卡不如1卡
是什么意思,4个3060显存加起来有12x4 = 48G了。显存完全串联起来了:
考虑问题,就从成本出发。鱼和熊掌不能兼得
- 3060 之间没有nvlink,卡之间的带宽不够,导致通讯有损耗,本来nvidia就是对他阉割的了。
- 不理解你说的
4卡不如1卡
是什么意思,4个3060显存加起来有12x4 = 48G了。显存完全串联起来了:
- 2.1. 让你的文本长度可以更长,一个卡做不到;
- 2.2. 单卡只能使用int4或者int8或者fp16,但是多卡可以让你直接使用f32;
- 2.3. 单卡只能让你使用lora、ptuning,但是多卡,你可以直接微调全量参数;
考虑问题,就从成本出发。鱼和熊掌不能兼得
是的,原来单卡我跑的是int8,现在多卡我用上了32。目前是想提升微调的效率,这么讲3060多卡(3060 之间没有nvlink,卡之间的带宽不够,导致通讯有损耗)并不能提升微调的效率,很感谢你的解答
- 3060 之间没有nvlink,卡之间的带宽不够,导致通讯有损耗,本来nvidia就是对他阉割的了。
- 不理解你说的
4卡不如1卡
是什么意思,4个3060显存加起来有12x4 = 48G了。显存完全串联起来了:
- 2.1. 让你的文本长度可以更长,一个卡做不到;
- 2.2. 单卡只能使用int4或者int8或者fp16,但是多卡可以让你直接使用f32;
- 2.3. 单卡只能让你使用lora、ptuning,但是多卡,你可以直接微调全量参数;
考虑问题,就从成本出发。鱼和熊掌不能兼得
是的,原来单卡我跑的是int8,现在多卡我用上了32。目前是想提升微调的效率,这么讲3060多卡(3060 之间没有nvlink,卡之间的带宽不够,导致通讯有损耗)并不能提升微调的效率,很感谢你的解答
你想想,都3060了,还要啥自行车😂
我这里一台GPU装了 8张P40,另外一台装了 5张3090,那我可以搞全量参数?训练数据从哪里搞呢
我这里一台GPU装了 8张P40,另外一台装了 5张3090,那我可以搞全量参数?训练数据从哪里搞呢
网上不是一大堆数据嘛,随便搞点就行了
今 天我又搞了一个NVLINK,用在5卡3090上。 发现我的batch_size 可以开到18了。。。
- 可以直接微调全量参数;
你说的2.3 可以直接微调全量参数;意思是不用lora ptuning了? 怎么个直接调法?
我使用了4张3060显示进行微调,原来单张3060训练时间是2个小时30分钟,现在4卡并行训练时间反而接近3小时了,是什么原因呢