Beispiel #1
0
 def test_debug_open_c2(self):
     """test debug open."""
     self.yaml_config_name = sys._getframe().f_code.co_name + '.yaml'
     self.yaml_content["debug"] = 'True'
     self.run_yaml()
     built_in.equals(self.pro.returncode, 0, self.err_msg)
     built_in.not_contains(self.err, 'Traceback', self.err_msg)
     built_in.regex_match_len(self.out, self.epoch_re, 2, self.err_msg)
Beispiel #2
0
 def test_runner_no_phases_c2(self):
     """test runner has no phase and it will run all phase."""
     self.yaml_config_name = sys._getframe().f_code.co_name + '.yaml'
     self.yaml_content["runner"][0].pop("phases")
     self.run_yaml()
     built_in.equals(self.pro.returncode, 0, self.err_msg)
     built_in.not_contains(self.err, 'Traceback', self.err_msg)
     built_in.regex_match_len(self.out, self.epoch_re, 4, self.err_msg)
Beispiel #3
0
 def test_optimizer_adam_c2(self):
     """test optimizer adam."""
     self.yaml_config_name = sys._getframe().f_code.co_name + '.yaml'
     self.yaml_content["hyper_parameters"]['optimizer']['class'] = 'Adam'
     self.run_yaml()
     built_in.equals(self.pro.returncode, 0, self.err_msg)
     built_in.not_contains(self.err, 'Traceback', self.err_msg)
     built_in.regex_match_len(self.out, self.epoch_re, 2, self.err_msg)
Beispiel #4
0
 def test_normal_gpu(self):
     """test normal yaml construct by RankDNN base in gpu."""
     self.yaml_config_name = sys._getframe().f_code.co_name + '.yaml'
     self.yaml_content["runner"][0]["device"] = 'gpu'
     self.run_yaml()
     built_in.equals(self.pro.returncode, 0, self.err_msg)
     built_in.not_contains(self.err, 'Traceback', self.err_msg)
     built_in.regex_match_len(self.out, self.epoch_re, 2, self.err_msg)
Beispiel #5
0
 def test_workspace_abs_c2(self):
     """test abs worksapce."""
     self.yaml_config_name = sys._getframe().f_code.co_name + '.yaml'
     self.yaml_content["workspace"] = './PaddleRec/models/rank/dnn'
     self.run_yaml()
     built_in.equals(self.pro.returncode, 0, self.err_msg)
     built_in.not_contains(self.err, 'Traceback', self.err_msg)
     built_in.regex_match_len(self.out, self.epoch_re, 2, self.err_msg)
Beispiel #6
0
 def test_mode_str_ps_local_cluster_1p_1t_async_c2(self):
     """test_mode_str_ps_local_cluster_1p_1t_c2."""
     self.yaml_config_name = sys._getframe().f_code.co_name + '.yaml'
     self.yaml_content["mode"] = "runner0"
     self.yaml_content["runner"][0]["class"] = "local_cluster_train"
     self.run_yaml()
     built_in.equals(self.pro.returncode, 0, self.err_msg)
     built_in.not_contains('logs/server.0', 'Traceback', self.err_msg)
     built_in.contains('logs/worker.0', 'AsyncCommunicator Initialized', self.err_msg)
 def test_single_infer_in_base_dir_c2(self):
     """test single infer base on save dir with new config.
     """
     self.yaml_config_name = sys._getframe().f_code.co_name + '.yaml'
     self.yaml_content['mode'] = 'runner2'
     self.yaml_content['runner'][2]['init_model_path'] = 'increment_dnn'
     self.run_yaml()
     built_in.equals(self.pro.returncode, 0, self.err_msg)
     built_in.not_contains(self.err, 'Traceback', self.err_msg)
Beispiel #8
0
 def test_multiview_simnet_gpu(self):
     """test match.multiview_simnet with gpu."""
     self.yaml_config_name = "models/match/multiview-simnet/config.yaml"
     sed_gpu_cmd = "sed -i 's/device:.*cpu/device: gpu/g' {}".format(
         self.yaml_config_name)
     utils.cmd_shell(sed_gpu_cmd)
     self.run_yaml(generate=False, cuda_devices="0")
     built_in.equals(self.pro.returncode, 0, self.err_msg)
     built_in.not_contains(self.err, 'Traceback', self.err_msg)
Beispiel #9
0
    def test_single_infer(self):
        """test single infer."""
        self.yaml_config_name = sys._getframe().f_code.co_name + '.yaml'
        self.yaml_content['mode'] = 'runner2'

        self.run_yaml()
        built_in.equals(self.pro.returncode, 0, self.err_msg)
        built_in.not_contains(self.err, 'Traceback', self.err_msg)
        built_in.regex_match_len(self.out, 'Infer.+done', 1, self.err_msg)
Beispiel #10
0
 def test_AutoInt(self):
     """test rank.fibinet"""
     self.yaml_config_name = "models/rank/AutoInt/config.yaml"
     verify_epochs = "sed -i 's/epochs:.*2/epochs: 1/g' {}".format(
         self.yaml_config_name)
     utils.cmd_shell(verify_epochs)
     self.run_yaml(generate=False)
     built_in.equals(self.pro.returncode, 0, self.err_msg)
     built_in.not_contains(self.err, 'Traceback', self.err_msg)
Beispiel #11
0
 def test_two_phase_train_c2(self):
     """test single train with two phase in runner config.
     """
     self.yaml_config_name = sys._getframe().f_code.co_name + '.yaml'
     self.yaml_content["runner"][0]["phases"] = ['phase1', 'phase2']
     self.run_yaml()
     built_in.equals(self.pro.returncode, 0, self.err_msg)
     built_in.not_contains(self.err, 'Traceback', self.err_msg)
     built_in.regex_match_len(self.out, self.epoch_re, 4, self.err_msg)
Beispiel #12
0
 def test_optimizer_sgd_reg(self):
     """test optimizer sgd with reg."""
     self.yaml_config_name = sys._getframe().f_code.co_name + '.yaml'
     self.yaml_content["hyper_parameters"]['optimizer']['class'] = 'SGD'
     self.yaml_content["hyper_parameters"]['reg'] = 0.1
     self.run_yaml()
     built_in.equals(self.pro.returncode, 0, self.err_msg)
     built_in.not_contains(self.err, 'Traceback', self.err_msg)
     built_in.regex_match_len(self.out, 'epoch.+done', 2, self.err_msg)
Beispiel #13
0
 def test_listwise_gpu(self):
     """test rerank.listwise with gpu."""
     self.yaml_config_name = "models/rerank/listwise/config.yaml"
     sed_gpu_cmd = "sed -i 's/device:.*cpu/device: gpu/g' {}".format(
         self.yaml_config_name)
     utils.cmd_shell(sed_gpu_cmd)
     self.run_yaml(generate=False, cuda_devices="0")
     built_in.equals(self.pro.returncode, 0, self.err_msg)
     built_in.not_contains(self.err, 'Traceback', self.err_msg)
Beispiel #14
0
 def test_tagspace_gpu(self):
     """test contentunderstanding.tagspace with gpu."""
     self.yaml_config_name = "models/contentunderstanding/tagspace/config.yaml"
     sed_gpu_cmd = "sed -i 's/device:.*cpu/device: gpu/g' {}".format(
         self.yaml_config_name)
     utils.cmd_shell(sed_gpu_cmd)
     self.run_yaml(generate=False, cuda_devices="0")
     built_in.equals(self.pro.returncode, 0, self.err_msg)
     built_in.not_contains(self.err, 'Traceback', self.err_msg)
Beispiel #15
0
 def test_share_bottom_gpu(self):
     """test multitask.share-bottom with gpu."""
     self.yaml_config_name = "models/multitask/share-bottom/config.yaml"
     sed_gpu_cmd = "sed -i 's/device:.*cpu/device: gpu/g' {}".format(
         self.yaml_config_name)
     utils.cmd_shell(sed_gpu_cmd)
     self.run_yaml(generate=False, cuda_devices="0")
     built_in.equals(self.pro.returncode, 0, self.err_msg)
     built_in.not_contains(self.err, 'Traceback', self.err_msg)
 def test_single_infer_gpu(self):
     """test single infer with gpu."""
     self.yaml_config_name = sys._getframe().f_code.co_name + '.yaml'
     self.yaml_content['mode'] = 'runner2'
     self.yaml_content["runner"][2]["device"] = 'gpu'
     self.run_yaml()
     built_in.equals(self.pro.returncode, 0, self.err_msg)
     built_in.not_contains(self.err, 'Traceback', self.err_msg)
     built_in.regex_match_len(self.out, self.run_time_re, 1, self.err_msg)
 def test_optimizer_sgd_gpu(self):
     """test optimizer sgd with gpu."""
     self.yaml_config_name = sys._getframe().f_code.co_name + '.yaml'
     self.yaml_content["runner"][0]["device"] = 'gpu'
     self.yaml_content["hyper_parameters"]['optimizer']['class'] = 'SGD'
     self.run_yaml()
     built_in.equals(self.pro.returncode, 0, self.err_msg)
     built_in.not_contains(self.err, 'Traceback', self.err_msg)
     built_in.regex_match_len(self.out, self.epoch_re, 2, self.err_msg)
 def test_increment_train(self):
     """test increment train."""
     self.yaml_config_name = sys._getframe().f_code.co_name + '.yaml'
     self.yaml_content['mode'] = 'runner1'
     self.run_yaml()
     built_in.equals(self.pro.returncode, 0, self.err_msg)
     built_in.not_contains(self.err, 'Traceback', self.err_msg)
     built_in.regex_match_len(self.out, self.epoch_re, 2, self.err_msg)
     built_in.regex_match_equal(self.out, '\nmode\s+(\S+)\s+\n', 'runner1', self.err_msg)
Beispiel #19
0
 def test_single_infer_in_epochs_dir_c2(self):
     """test single infer base on one epoch with new config.
     """
     self.yaml_config_name = sys._getframe().f_code.co_name + '.yaml'
     self.yaml_content['mode'] = 'runner2'
     self.run_yaml()
     built_in.equals(self.pro.returncode, 0, self.err_msg)
     built_in.not_contains(self.err, 'Traceback', self.err_msg)
     built_in.regex_match_len(self.out, self.run_time_re, 1, self.err_msg)
Beispiel #20
0
 def test_mode_list_ps_local_cluster_c2(self):
     """test mode list has one element and the runner is local cluster.
     """
     utils.cmd_shell("rm -rf logs")
     self.yaml_config_name = sys._getframe().f_code.co_name + '.yaml'
     self.yaml_content["runner"][0]["class"] = "local_cluster_train"
     self.run_yaml()
     built_in.equals(self.pro.returncode, 0, self.err_msg)
     built_in.not_contains(self.err, 'Traceback', self.err_msg)
 def test_single_infer(self):
     """test single infer."""
     # run basic to save models
     self.yaml_config_name = sys._getframe().f_code.co_name + '.yaml'
     self.run_yaml()
     self.yaml_config_name = sys._getframe().f_code.co_name + '.yaml'
     self.yaml_content['mode'] = 'runner2'
     self.run_yaml()
     built_in.equals(self.pro.returncode, 0, self.err_msg)
     built_in.not_contains(self.err, 'Traceback', self.err_msg)
Beispiel #22
0
 def test_mode_str_ps_local_cluster_1p_1t_geo_c2(self):
     """test_mode_str_ps_local_cluster_1p_1t_geo_c2."""
     self.yaml_config_name = sys._getframe().f_code.co_name + '.yaml'
     self.yaml_content["mode"] = "runner0"
     self.yaml_content["runner"][0]["class"] = "local_cluster_train"
     self.yaml_content["runner"][0]["distribute_strategy"] = "geo"
     self.run_yaml()
     built_in.equals(self.pro.returncode, 0, self.err_msg)
     built_in.regex_match_len('logs/worker.0', self.epoch_re, 2, self.err_msg)
     built_in.contains('logs/worker.0', 'GeoSgdCommunicator Initialized', self.err_msg)
Beispiel #23
0
 def test_increment_train_c2(self):
     """test increment train.
        both runners are single & train.
     """
     self.yaml_config_name = sys._getframe().f_code.co_name + '.yaml'
     self.yaml_content['mode'] = ['runner0', 'runner1']
     self.run_yaml()
     built_in.equals(self.pro.returncode, 0, self.err_msg)
     built_in.not_contains(self.err, 'Traceback', self.err_msg)
     built_in.regex_match_len(self.out, self.epoch_re, 4, self.err_msg)
Beispiel #24
0
 def test_mode_str_ps_local_cluster_1p_2t_sync_c2(self):
     """test_mode_str_ps_local_cluster_1p_2t_sync_c2."""
     self.yaml_config_name = sys._getframe().f_code.co_name + '.yaml'
     self.yaml_content["mode"] = "runner0"
     self.yaml_content["runner"][0]["class"] = "local_cluster_train"
     self.yaml_content["runner"][0]["distribute_strategy"] = "sync"
     self.yaml_content["runner"][0]["worker_num"] = 2
     self.yaml_content["runner"][0]["server_num"] = 1
     self.run_yaml()
     built_in.equals(self.pro.returncode, 0, self.err_msg)
     built_in.not_contains('logs/server.0', 'Traceback', self.err_msg)
Beispiel #25
0
 def test_fibinet_gpu(self):
     """test rank.fibinet"""
     self.yaml_config_name = "models/rank/fibinet/config.yaml"
     verify_epochs = "sed -i 's/epochs:.*4/epochs: 1/g' {}".format(
         self.yaml_config_name)
     sed_gpu_cmd = "sed -i 's/device:.*cpu/device: gpu/g' {}".format(
         self.yaml_config_name)
     utils.cmd_shell(sed_gpu_cmd)
     utils.cmd_shell(verify_epochs)
     self.run_yaml(generate=False, cuda_devices="0")
     built_in.equals(self.pro.returncode, 0, self.err_msg)
     built_in.not_contains(self.err, 'Traceback', self.err_msg)
Beispiel #26
0
 def test_mode_list_ps_local_cluster_and_increment_c2(self):
     """test mode list has two elements and both runner are local cluster.
        one is train, the other is increment training.
     """
     self.yaml_config_name = sys._getframe().f_code.co_name + '.yaml'
     self.yaml_content["runner"][0]["class"] = "local_cluster_train"
     self.yaml_content["runner"][1]["class"] = "local_cluster_train"
     self.yaml_content["mode"] = ["runner0", "runner1"]
     self.run_yaml()
     built_in.equals(self.pro.returncode, 0, self.err_msg)
     built_in.not_contains(self.err, 'Traceback', self.err_msg)
     built_in.regex_match_len('logs/worker.0', self.epoch_re, 2, self.err_msg)
 def test_QueueDataset_train_c2(self):
     """test QueueDataset in train."""
     self.yaml_config_name = sys._getframe().f_code.co_name + '.yaml'
     self.yaml_content["dataset"][0]["type"] = "QueueDataset"
     self.run_yaml()
     built_in.equals(self.pro.returncode, 0, self.err_msg)
     built_in.not_contains(self.err, 'Traceback', self.err_msg)
     built_in.regex_match_len(self.out, self.epoch_re, 2, self.err_msg)
     # NOTE windows和mac直接会强行切换到dataloader
     if utils.get_platform() != "LINUX" or not six.PY2:
         check_type = "DataLoader"
     else:
         check_type = "QueueDataset"
 def test_mode_list_single_selected_gpus_1card_c2(self):
     """test selected gpus 1card, it will run with single mode."""
     self.yaml_config_name = sys._getframe().f_code.co_name + '.yaml'
     self.yaml_content["runner"][0]["device"] = 'gpu'
     self.yaml_content["runner"][0]["selected_gpus"] = "0"
     self.run_yaml()
     built_in.equals(self.pro.returncode, 0, self.err_msg)
     built_in.not_contains(self.err, 'Traceback', self.err_msg)
     built_in.regex_match_len(self.out, self.epoch_re, 2, self.err_msg)
     built_in.regex_match_equal(self.out,
                                '\ntrain.trainer.engine\s+(\S+)\s+\n',
                                "single",
                                self.err_msg)
Beispiel #29
0
 def test_two_phase_train(self):
     """test two phase train"""
     self.yaml_config_name = sys._getframe().f_code.co_name + '.yaml'
     self.yaml_content['phase'].append({
         'name': 'phase2',
         'model': '{workspace}/model.py',  # user-defined model
         'dataset_name': 'dataset_infer',  # select dataset by name
         'thread_num': 1
     })
     self.run_yaml()
     built_in.equals(self.pro.returncode, 0, self.err_msg)
     built_in.not_contains(self.err, 'Traceback', self.err_msg)
     built_in.regex_match_len(self.out, 'epoch.+done', 4, self.err_msg)
Beispiel #30
0
 def test_mode_str_ps_local_cluster_1p_2t_geo_c2(self):
     """test_mode_str_ps_local_cluster_1p_2t_geo_c2."""
     self.yaml_config_name = sys._getframe().f_code.co_name + '.yaml'
     self.yaml_content["mode"] = "runner0"
     self.yaml_content["runner"][0]["class"] = "local_cluster_train"
     self.yaml_content["runner"][0]["distribute_strategy"] = "geo"
     self.yaml_content["runner"][0]["worker_num"] = 2
     self.yaml_content["runner"][0]["server_num"] = 1
     self.yaml_content["dataset"][0]["data_path"] = "criteo_data"
     self.run_yaml()
     built_in.equals(self.pro.returncode, 0, self.err_msg)
     built_in.regex_match_len('logs/worker.0', self.epoch_re, 2, self.err_msg)
     built_in.regex_match_len('logs/worker.1', self.epoch_re, 2, self.err_msg)