support distributed training

support distributed training