chineseocr / trocr-chinese

transformers ocr for chinese
338 stars 53 forks source link

如何使用指定的多块GPU训练问题 #15

Open Williamwsk opened 2 years ago

Williamwsk commented 2 years ago

我在训练时,单GPU没问题就是速度慢,使用指定的多块GPU时会默认使用机器上所有的GPU,这个您知道如何修改吗?pytorch的torch.distributed.launch使用会报错

wenlihaoyu commented 2 years ago

如果是docker 加一个 --shm-size="2g"启动参数, 然后: python train.py --CUDA_VISIBLE_DEVICES 0,1 Seq2SeqTrainingArguments 有一个参数可以多线程加载数据,默认是单线程,也可以修改一下,dataloader_num_workers=8。

Williamwsk commented 2 years ago

如果是docker 加一个 --shm-size="2g"启动参数, 然后: python train.py --CUDA_VISIBLE_DEVICES 0,1 Seq2SeqTrainingArguments 有一个参数可以多线程加载数据,默认是单线程,也可以修改一下,dataloader_num_workers=8。 好的,多谢您的指导。我改完docker多GPU+多线程后,可以加快训练速度,但是验证时还是只使用了单卡进行验证,这个是通过do_eval这个参数来改进以达到验证时也使用多卡吗?再有就是测试时,您那边的测试单条文本行的耗时是多少呢?期待您的解答,谢谢!