Пример #1
0
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)
Пример #2
0
 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()
Пример #3
0
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])