def test_noop_sched(): os.environ['MS_ROLE'] = 'MS_SCHED' context.set_ps_context(enable_ps=True) data1 = ds.VOCDataset(DATA_DIR, task="Segmentation", usage="train", shuffle=False, decode=True) num = 0 for _ in data1.create_dict_iterator(num_epochs=1): num += 1 assert num == 0 del os.environ['MS_ROLE'] context.set_ps_context(enable_ps=False)
def no_ps_impl(self, dataset): context.set_ps_context(enable_ps=False) net = Menet(self.in_channels, self.out_channels, self.kernel_size, self.vocab_size, self.embedding_size, self.output_channels, self.target, self.sparse) net.conv.conv2d.add_prim_attr('primitive_target', 'CPU') net.conv.bias_add.add_prim_attr('primitive_target', 'CPU') net.set_train() loss = SoftmaxCrossEntropyWithLogits(sparse=True, reduction='mean') opt = Adam(params=filter(lambda x: x.requires_grad, net.get_parameters())) opt.target = 'CPU' model = Model(net, loss, opt) model.train(self.epoch_size, dataset, dataset_sink_mode=False) input_me = Tensor(self.input_np) out_me = model.predict(input_me) context.set_ps_context(enable_ps=True) return out_me.asnumpy()
else: from src.resnet import se_resnet50 as resnet from src.config import config4 as config from src.dataset import create_dataset4 as create_dataset if __name__ == '__main__': target = args.device_target config.batch_size = args.batch_size ckpt_save_dir = config.save_checkpoint_path # init context context.set_context(mode=context.GRAPH_MODE, device_target=target, save_graphs=False) if args.parameter_server: context.set_ps_context(enable_ps=True) if args.run_distribute: if target == "Ascend": device_id = int(os.getenv('DEVICE_ID')) context.set_context(device_id=device_id, enable_auto_mixed_precision=True) context.set_auto_parallel_context( device_num=args.device_num, parallel_mode=ParallelMode.DATA_PARALLEL, gradients_mean=True) if args.net == "resnet50" or args.net == "se-resnet50": context.set_auto_parallel_context( all_reduce_fusion_config=[85, 160]) else: context.set_auto_parallel_context( all_reduce_fusion_config=[180, 313])