最近,我使用张量流来开发NMT系统。我尝试使用数据并行方法在multi-gpus上训练这个系统来加速它。我遵循tensorflow中广泛使用的标准数据并行方式。例如,如果我们想在8-gpus计算机上运行它。首先,我们构建一个大批量,其大小是单个GPU中使用的批量的8倍。然后我们将这个大批量分成8个小批量。我们分别用不同的gpus训练他们。最后,我们收集渐变来更新参数。但是我发现当我使用dynamic_rnn时,8 gpus中一次迭代所花费的平均时间是在单个gpu中训练的一次迭代所花费的时间的两倍。我确保每个gpu的批量大小是相同的。谁有更好的方法来加速在张量流中训练RNN?