def test_launcher_is_not_filtered_by_device_with_tail(self): config_launchers = [ { 'framework': 'dlsdk', 'model': '/absolute_path1', 'weights': '/absolute_path1', 'adapter': 'classification', 'device': 'CPU' }, { 'framework': 'caffe', 'model': '/absolute_path2', 'weights': '/absolute_path2', 'adapter': 'classification', 'device': 'GPU' } ] config = {'models': [{'name': 'name', 'launchers': config_launchers}]} self.arguments.target_devices = ['CPU', 'GPUunexepectedtail'] ConfigReader._filter_launchers(config, self.arguments) launchers = config['models'][0]['launchers'] assert len(launchers) == 1 assert launchers[0] == config_launchers[0]
def test_both_launchers_are_filtered_by_other_devices(self): config_launchers = [ { 'framework': 'dlsdk', 'model': '/absolute_path1', 'weights': '/absolute_path1', 'adapter': 'classification', 'device': 'CPU' }, { 'framework': 'caffe', 'model': '/absolute_path2', 'weights': '/absolute_path2', 'adapter': 'classification', 'device': 'CPU' } ] config = {'models': [{'name': 'name', 'launchers': config_launchers}]} self.arguments.target_devices = ['FPGA', 'MYRIAD'] with pytest.warns(Warning): ConfigReader._filter_launchers(config, self.arguments) launchers = config['models'][0]['launchers'] assert len(launchers) == 0
def test_only_appropriate_launcher_is_filtered_by_user_input_devices(self): config_launchers = [ { 'framework': 'dlsdk', 'model': '/absolute_path1', 'weights': '/absolute_path1', 'adapter': 'classification', 'device': 'CPU' }, { 'framework': 'dlsdk', 'model': '/absolute_path1', 'weights': '/absolute_path1', 'adapter': 'classification', 'device': 'HETERO:CPU,GPU' }, { 'framework': 'caffe', 'model': '/absolute_path2', 'weights': '/absolute_path2', 'adapter': 'classification', 'device': 'GPU' } ] config = {'models': [{'name': 'name', 'launchers': config_launchers}]} self.arguments.target_devices = ['GPU', 'CPU'] ConfigReader._filter_launchers(config, self.arguments) launchers = config['models'][0]['launchers'] assert launchers == [config_launchers[0], config_launchers[2]]
def test_only_appropriate_launcher_is_filtered_by_another_framework(self): config_launchers = [ { 'framework': 'dlsdk', 'model': '/absolute_path1', 'weights': '/absolute_path1', 'adapter': 'classification', 'device': 'CPU' }, { 'framework': 'caffe', 'model': '/absolute_path2', 'weights': '/absolute_path2', 'adapter': 'classification', 'device': 'GPU' } ] config = {'models': [{'name': 'name', 'launchers': config_launchers}]} self.arguments.target_framework = 'caffe' ConfigReader._filter_launchers(config, self.arguments) launchers = config['models'][0]['launchers'] assert len(launchers) == 1 assert launchers[0] == config_launchers[1]
def test_launcher_is_filtered_by_another_framework(self): config = {'models': [{'name': 'name', 'launchers': [{ 'framework': 'dlsdk', 'model': '/absolute_path', 'weights': '/absolute_path', 'adapter': 'classification' }]}]} self.arguments.target_framework = 'caffe' with pytest.warns(Warning): ConfigReader._filter_launchers(config, self.arguments) launchers = config['models'][0]['launchers'] assert len(launchers) == 0
def test_launcher_is_not_filtered_by_the_same_device(self): config_launchers = [{ 'framework': 'dlsdk', 'model': '/absolute_path1', 'weights': '/absolute_path1', 'adapter': 'classification', 'device': 'CPU' }] config = {'models': [{'name': 'name', 'launchers': config_launchers}]} self.arguments.target_devices = ['CPU'] ConfigReader._filter_launchers(config, self.arguments) launchers = config['models'][0]['launchers'] assert launchers == config_launchers