咨询dataloader的batchsize
Created by: houj04
请参考附件。需要将run.txt改成run.sh,其余两个文件改成py。然后直接执行run.sh就可以了,只依赖paddle以及paddle自己的数据集。
no_loader.txt run.txt loader.txt
背景:我在看dataloader,发现dataloader在不同的卡数的时候,batchsize好像不一样(其实是表现出来的step数不一致)。
作为对比,我写了上面的代码。该shell脚本会用4种方式直接运行,我在训练的一个epoch里面会打印经过了多少个batch。
运行发现,当不使用dataloader的时候,用1个卡或者2个卡,打印出来的count数是一致的。而用了dataloader以后,跑1个卡和2个卡,实际数出来的count数不同。
请问这个是否符合预期:不用dataloader的情况下,不管用几个卡,实际的进行的step数都一样。而用了dataloader的情况下,用不同的卡数,实际进行的step数不一样。
据了解batchsize或者step数,是对收敛有影响的。所以个人感觉“不受卡数影响”更好一些,即no_loader.py里面更好。请帮忙看下,thx~