[EISW-89820] [releases/2023/0] Rename VPUX to NPU (#19002)
* Change `VPUX` occurences to `NPU` * Change library for `NPU` device in `api_conformance_helpers.hpp` * Rename `MYRIAD plugin` * Switch `HARDWARE_AWARE_IGNORED_PATTERNS` VPU to NPU * Rename DEVICE_KEEMBAY to DEVICE_NPU * Rename VPUX_DEVICE_NAME to NPU_DEVICE_NAME * Rename vpu_patterns to npu_patterns * Change VPUX occurences to NPU after review * Remove VPUX device comment * Change VPUX/vpu to NPU in tests/time_tests * Rename VPU to NPU in docs after review * Rename VPU to NPU in tools/pot after review * Renamed vpu.json to npu.json in tools/pot after review * Restore CommonTestUtils::DEVICE_KEEMBAY --------- Co-authored-by: MirceaDan99 <mircea-aurelian.dan@intel.com>
This commit is contained in:
@@ -11,7 +11,7 @@
|
||||
The Automatic Batching Execution mode (or Auto-batching for short) performs automatic batching on-the-fly to improve device utilization by grouping inference requests together, without programming effort from the user.
|
||||
With Automatic Batching, gathering the input and scattering the output from the individual inference requests required for the batch happen transparently, without affecting the application code.
|
||||
|
||||
Auto Batching can be used :ref:`directly as a virtual device <auto-batching-as-device>` or as an :ref:`option for inference on CPU/GPU/VPU <auto-batching-as-option>` (by means of configuration/hint). These 2 ways are provided for the user to enable the BATCH devices **explicitly** or **implicitly**, with the underlying logic remaining the same. An example of the difference is that the CPU device doesn’t support implicitly to enable BATCH device, commands such as ``./benchmark_app -m <model> -d CPU -hint tput`` will not apply BATCH device **implicitly**, but ``./benchmark_app -m <model> -d "BATCH:CPU(16)`` can **explicitly** load BATCH device.
|
||||
Auto Batching can be used :ref:`directly as a virtual device <auto-batching-as-device>` or as an :ref:`option for inference on CPU/GPU/NPU <auto-batching-as-option>` (by means of configuration/hint). These 2 ways are provided for the user to enable the BATCH devices **explicitly** or **implicitly**, with the underlying logic remaining the same. An example of the difference is that the CPU device doesn’t support implicitly to enable BATCH device, commands such as ``./benchmark_app -m <model> -d CPU -hint tput`` will not apply BATCH device **implicitly**, but ``./benchmark_app -m <model> -d "BATCH:CPU(16)`` can **explicitly** load BATCH device.
|
||||
|
||||
Auto-batching primarily targets the existing code written for inferencing many requests, each instance with the batch size 1. To get corresponding performance improvements, the application **must be running multiple inference requests simultaneously**.
|
||||
Auto-batching can also be used via a particular *virtual* device.
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -191,7 +191,7 @@ Tune quantization parameters
|
||||
regex = '.*layer_.*'
|
||||
nncf.quantize(model, dataset, ignored_scope=nncf.IgnoredScope(patterns=regex))
|
||||
|
||||
* ``target_device`` - defines the target device, the specificity of which will be taken into account during optimization. The following values are supported: ``ANY`` (default), ``CPU``, ``CPU_SPR``, ``GPU``, and ``VPU``.
|
||||
* ``target_device`` - defines the target device, the specificity of which will be taken into account during optimization. The following values are supported: ``ANY`` (default), ``CPU``, ``CPU_SPR``, ``GPU``, and ``NPU``.
|
||||
|
||||
.. code-block:: sh
|
||||
|
||||
|
||||
@@ -96,7 +96,7 @@ Several execution modes are supported via the ``-d`` flag:
|
||||
|
||||
- ``CPU`` - All calculations are performed on CPU device using CPU Plugin.
|
||||
- ``GPU`` - All calculations are performed on GPU device using GPU Plugin.
|
||||
- ``VPUX`` - All calculations are performed on VPUX device using VPUX Plugin.
|
||||
- ``NPU`` - All calculations are performed on NPU device using NPU Plugin.
|
||||
- ``GNA_AUTO`` - GNA hardware is used if available and the driver is installed. Otherwise, the GNA device is emulated in fast-but-not-bit-exact mode.
|
||||
- ``GNA_HW`` - GNA hardware is used if available and the driver is installed. Otherwise, an error will occur.
|
||||
- ``GNA_SW`` - Deprecated. The GNA device is emulated in fast-but-not-bit-exact mode.
|
||||
@@ -144,7 +144,7 @@ Usage message:
|
||||
-i "<path>" Required. Path(s) to input file(s). Usage for a single file/layer: <input_file.ark> or <input_file.npz>. Example of usage for several files/layers: <layer1>:<port_num1>=<input_file1.ark>,<layer2>:<port_num2>=<input_file2.ark>.
|
||||
-m "<path>" Required. Path to an .xml file with a trained model (required if -rg is missing).
|
||||
-o "<path>" Optional. Output file name(s) to save scores (inference results). Example of usage for a single file/layer: <output_file.ark> or <output_file.npz>. Example of usage for several files/layers: <layer1>:<port_num1>=<output_file1.ark>,<layer2>:<port_num2>=<output_file2.ark>.
|
||||
-d "<device>" Optional. Specify a target device to infer on. CPU, GPU, VPUX, GNA_AUTO, GNA_HW, GNA_HW_WITH_SW_FBACK, GNA_SW_FP32, GNA_SW_EXACT and HETERO with combination of GNA as the primary device and CPU as a secondary (e.g. HETERO:GNA,CPU) are supported. The sample will look for a suitable plugin for device specified.
|
||||
-d "<device>" Optional. Specify a target device to infer on. CPU, GPU, NPU, GNA_AUTO, GNA_HW, GNA_HW_WITH_SW_FBACK, GNA_SW_FP32, GNA_SW_EXACT and HETERO with combination of GNA as the primary device and CPU as a secondary (e.g. HETERO:GNA,CPU) are supported. The sample will look for a suitable plugin for device specified.
|
||||
-pc Optional. Enables per-layer performance report.
|
||||
-q "<mode>" Optional. Input quantization mode for GNA: static (default) or user defined (use with -sf).
|
||||
-qb "<integer>" Optional. Weight resolution in bits for GNA quantization: 8 or 16 (default)
|
||||
@@ -162,7 +162,7 @@ Usage message:
|
||||
-compile_target "<string>" Optional. Specify GNA compile target generation. May be one of GNA_TARGET_2_0, GNA_TARGET_3_0. By default, generation corresponds to the GNA HW available in the system or the latest fully supported generation by the software. See the GNA Plugin's GNA_COMPILE_TARGET config option description.
|
||||
-memory_reuse_off Optional. Disables memory optimizations for compiled model.
|
||||
|
||||
Available target devices: CPU GNA GPU VPUX
|
||||
Available target devices: CPU GNA GPU NPU
|
||||
|
||||
|
||||
.. _model-preparation-speech:
|
||||
|
||||
@@ -24,7 +24,7 @@ static const char model_message[] = "Required. Path to an .xml file with a train
|
||||
|
||||
/// @brief message for assigning calculation to device
|
||||
static const char target_device_message[] =
|
||||
"Optional. Specify a target device to infer on. CPU, GPU, VPUX, GNA_AUTO, GNA_HW, "
|
||||
"Optional. Specify a target device to infer on. CPU, GPU, NPU, GNA_AUTO, GNA_HW, "
|
||||
"GNA_HW_WITH_SW_FBACK, GNA_SW_FP32, "
|
||||
"GNA_SW_EXACT and HETERO with combination of GNA as the primary device and CPU"
|
||||
" as a secondary (e.g. HETERO:GNA,CPU) are supported. "
|
||||
@@ -274,7 +274,7 @@ bool parse_and_check_command_line(int argc, char* argv[]) {
|
||||
"HETERO:GNA_HW,CPU",
|
||||
"HETERO:GNA_SW_EXACT,CPU",
|
||||
"HETERO:GNA_SW_FP32,CPU",
|
||||
"VPUX"};
|
||||
"NPU"};
|
||||
|
||||
if (std::find(supportedDevices.begin(), supportedDevices.end(), FLAGS_d) == supportedDevices.end()) {
|
||||
throw std::logic_error("Specified device is not supported.");
|
||||
|
||||
@@ -95,7 +95,7 @@ Several execution modes are supported via the ``-d`` flag:
|
||||
|
||||
- ``CPU`` - All calculations are performed on CPU device using CPU Plugin.
|
||||
- ``GPU`` - All calculations are performed on GPU device using GPU Plugin.
|
||||
- ``VPUX`` - All calculations are performed on VPUX device using VPUX Plugin.
|
||||
- ``NPU`` - All calculations are performed on NPU device using NPU Plugin.
|
||||
- ``GNA_AUTO`` - GNA hardware is used if available and the driver is installed. Otherwise, the GNA device is emulated in fast-but-not-bit-exact mode.
|
||||
- ``GNA_HW`` - GNA hardware is used if available and the driver is installed. Otherwise, an error will occur.
|
||||
- ``GNA_SW`` - Deprecated. The GNA device is emulated in fast-but-not-bit-exact mode.
|
||||
@@ -155,7 +155,7 @@ Usage message:
|
||||
Usage for a single file/layer: <reference_file.ark> or <reference_file.npz>.
|
||||
Example of usage for several files/layers: <layer1>:<port_num1>=<reference_file1.ark>,<layer2>:<port_num2>=<reference_file2.ark>.
|
||||
-d DEVICE, --device DEVICE
|
||||
Optional. Specify a target device to infer on. CPU, GPU, VPUX, GNA_AUTO, GNA_HW, GNA_SW_FP32,
|
||||
Optional. Specify a target device to infer on. CPU, GPU, NPU, GNA_AUTO, GNA_HW, GNA_SW_FP32,
|
||||
GNA_SW_EXACT and HETERO with combination of GNA as the primary device and CPU as a secondary (e.g.
|
||||
HETERO:GNA,CPU) are supported. The sample will look for a suitable plugin for device specified.
|
||||
Default value is CPU.
|
||||
|
||||
@@ -32,7 +32,7 @@ def build_arg_parser() -> argparse.ArgumentParser:
|
||||
'Example of usage for several files/layers: <layer1>:<port_num1>=<reference_file1.ark>,<layer2>:<port_num2>=<reference_file2.ark>.')
|
||||
args.add_argument('-d', '--device', default='CPU', type=str,
|
||||
help='Optional. Specify a target device to infer on. '
|
||||
'CPU, GPU, VPUX, GNA_AUTO, GNA_HW, GNA_SW_FP32, GNA_SW_EXACT and HETERO with combination of GNA'
|
||||
'CPU, GPU, NPU, GNA_AUTO, GNA_HW, GNA_SW_FP32, GNA_SW_EXACT and HETERO with combination of GNA'
|
||||
' as the primary device and CPU as a secondary (e.g. HETERO:GNA,CPU) are supported. '
|
||||
'The sample will look for a suitable plugin for device specified. Default value is CPU.')
|
||||
args.add_argument('-bs', '--batch_size', type=int, choices=range(1, 9), metavar='[1-8]',
|
||||
|
||||
@@ -50,7 +50,7 @@ DECLARE_VPU_CONFIG(MYRIAD_PCIE);
|
||||
DECLARE_VPU_CONFIG(MYRIAD_USB);
|
||||
|
||||
/**
|
||||
* @brief Optimize vpu plugin execution to maximize throughput.
|
||||
* @brief Optimize MYRIAD plugin execution to maximize throughput.
|
||||
* This option should be used with integer value which is the requested number of streams.
|
||||
* The only possible values are:
|
||||
* 1
|
||||
|
||||
@@ -215,7 +215,7 @@ IE::Parameter AutoExecutableNetwork::GetMetric(const std::string& name) const {
|
||||
iie.what());
|
||||
}
|
||||
real = (std::max)(requests, optimalBatchSize);
|
||||
} else if (deviceInfo.deviceName.find("VPUX") != std::string::npos) {
|
||||
} else if (deviceInfo.deviceName.find("NPU") != std::string::npos) {
|
||||
real = 8u;
|
||||
} else {
|
||||
real = upperBoundStreamsNum ? 2 * upperBoundStreamsNum : defaultNumForTPUT;
|
||||
|
||||
@@ -644,10 +644,10 @@ void AutoSchedule::TryToLoadNetWork(AutoLoadContext& context, const std::string&
|
||||
}
|
||||
// need to reload network, unregister it's priority
|
||||
// there maybe potential issue.
|
||||
// for example they are dGPU, VPUX, iGPU, customer want to LoadNetwork with
|
||||
// configure 0 dGPU, 1 VPUX, if dGPU load failed,
|
||||
// the result will be not sure, maybe two network are loaded into VPUX,
|
||||
// maybe 0 is loaded to VPUX, 1 is loaded to iGPU
|
||||
// for example they are dGPU, NPU, iGPU, customer want to LoadNetwork with
|
||||
// configure 0 dGPU, 1 NPU, if dGPU load failed,
|
||||
// the result will be not sure, maybe two network are loaded into NPU,
|
||||
// maybe 0 is loaded to NPU, 1 is loaded to iGPU
|
||||
_autoSContext->_plugin->UnregisterPriority(_autoSContext->_modelPriority, context.deviceInfo.uniqueName);
|
||||
// remove the current device from deviceList
|
||||
auto eraseDevice = deviceChecker().checkAndReturnIfDeviceInList(device, deviceList, true);
|
||||
|
||||
@@ -533,7 +533,7 @@ std::list<DeviceInformation> MultiDeviceInferencePlugin::GetValidDevice(
|
||||
std::list<DeviceInformation> dGPU;
|
||||
std::list<DeviceInformation> iGPU;
|
||||
std::list<DeviceInformation> MYRIAD;
|
||||
std::list<DeviceInformation> VPUX;
|
||||
std::list<DeviceInformation> NPU;
|
||||
|
||||
for (auto& item : metaDevices) {
|
||||
if (item.deviceName.find("CPU") == 0) {
|
||||
@@ -544,8 +544,8 @@ std::list<DeviceInformation> MultiDeviceInferencePlugin::GetValidDevice(
|
||||
MYRIAD.push_back(item);
|
||||
continue;
|
||||
}
|
||||
if (item.deviceName.find("VPUX") == 0) {
|
||||
VPUX.push_back(item);
|
||||
if (item.deviceName.find("NPU") == 0) {
|
||||
NPU.push_back(item);
|
||||
continue;
|
||||
}
|
||||
if (item.deviceName.find("GPU") == 0) {
|
||||
@@ -566,14 +566,14 @@ std::list<DeviceInformation> MultiDeviceInferencePlugin::GetValidDevice(
|
||||
}
|
||||
}
|
||||
|
||||
// Priority of selecting device: dGPU > VPUX > iGPU > MYRIAD > CPU
|
||||
// Priority of selecting device: dGPU > NPU > iGPU > MYRIAD > CPU
|
||||
std::list<DeviceInformation> devices;
|
||||
if (networkPrecision == "INT8") {
|
||||
devices.splice(devices.end(), VPUX);
|
||||
devices.splice(devices.end(), NPU);
|
||||
devices.splice(devices.end(), dGPU);
|
||||
} else {
|
||||
devices.splice(devices.end(), dGPU);
|
||||
devices.splice(devices.end(), VPUX);
|
||||
devices.splice(devices.end(), NPU);
|
||||
}
|
||||
devices.splice(devices.end(), iGPU);
|
||||
devices.splice(devices.end(), MYRIAD);
|
||||
|
||||
@@ -7,7 +7,7 @@ namespace MultiDevicePlugin {
|
||||
// AUTO will enable the blocklist if
|
||||
// 1.No device priority passed to AUTO/MULTI.(eg. core.compile_model(model, "AUTO", configs);)
|
||||
// 2.No valid device parsed out from device priority (eg. core.compile_model(model, "AUTO:-CPU,-GPU", configs);).
|
||||
const std::set<std::string> PluginConfig::_deviceBlocklist = {"VPUX", "GNA", "notIntelGPU"};
|
||||
const std::set<std::string> PluginConfig::_deviceBlocklist = {"NPU", "GNA", "notIntelGPU"};
|
||||
|
||||
PluginConfig::PluginConfig() {
|
||||
set_default();
|
||||
|
||||
@@ -43,27 +43,27 @@ public:
|
||||
ov::SoPtr<IExecutableNetworkInternal> mockExeNetwork;
|
||||
ov::SoPtr<IExecutableNetworkInternal> mockExeNetworkGPU_0;
|
||||
ov::SoPtr<IExecutableNetworkInternal> mockExeNetworkGPU_1;
|
||||
ov::SoPtr<IExecutableNetworkInternal> mockExeNetworkVPUX;
|
||||
ov::SoPtr<IExecutableNetworkInternal> mockExeNetworkNPU;
|
||||
|
||||
std::shared_ptr<NiceMock<MockIInferRequestInternal>> inferReqInternal;
|
||||
std::shared_ptr<NiceMock<MockIInferRequestInternal>> inferReqInternalGPU_0;
|
||||
std::shared_ptr<NiceMock<MockIInferRequestInternal>> inferReqInternalGPU_1;
|
||||
std::shared_ptr<NiceMock<MockIInferRequestInternal>> inferReqInternalVPUX;
|
||||
std::shared_ptr<NiceMock<MockIInferRequestInternal>> inferReqInternalNPU;
|
||||
|
||||
std::shared_ptr<NiceMock<MockIExecutableNetworkInternal>> mockIExeNet;
|
||||
std::shared_ptr<NiceMock<MockIExecutableNetworkInternal>> mockIExeNetGPU_0;
|
||||
std::shared_ptr<NiceMock<MockIExecutableNetworkInternal>> mockIExeNetGPU_1;
|
||||
std::shared_ptr<NiceMock<MockIExecutableNetworkInternal>> mockIExeNetVPUX;
|
||||
std::shared_ptr<NiceMock<MockIExecutableNetworkInternal>> mockIExeNetNPU;
|
||||
|
||||
std::shared_ptr<mockAsyncInferRequest> mockInferrequest;
|
||||
std::shared_ptr<mockAsyncInferRequest> mockInferrequestGPU_0;
|
||||
std::shared_ptr<mockAsyncInferRequest> mockInferrequestGPU_1;
|
||||
std::shared_ptr<mockAsyncInferRequest> mockInferrequestVPUX;
|
||||
std::shared_ptr<mockAsyncInferRequest> mockInferrequestNPU;
|
||||
|
||||
std::shared_ptr<ImmediateExecutor> mockExecutor;
|
||||
std::shared_ptr<ImmediateExecutor> mockExecutorGPU_0;
|
||||
std::shared_ptr<ImmediateExecutor> mockExecutorGPU_1;
|
||||
std::shared_ptr<ImmediateExecutor> mockExecutorVPUX;
|
||||
std::shared_ptr<ImmediateExecutor> mockExecutorNPU;
|
||||
|
||||
size_t optimalNum;
|
||||
|
||||
@@ -110,19 +110,19 @@ public:
|
||||
inferReqInternal.reset();
|
||||
inferReqInternalGPU_0.reset();
|
||||
inferReqInternalGPU_1.reset();
|
||||
inferReqInternalVPUX.reset();
|
||||
inferReqInternalNPU.reset();
|
||||
mockIExeNet.reset();
|
||||
mockIExeNetGPU_0.reset();
|
||||
mockIExeNetGPU_1.reset();
|
||||
mockIExeNetVPUX.reset();
|
||||
mockIExeNetNPU.reset();
|
||||
mockIExeNet.reset();
|
||||
mockIExeNetGPU_0.reset();
|
||||
mockIExeNetGPU_1.reset();
|
||||
mockIExeNetVPUX.reset();
|
||||
mockIExeNetNPU.reset();
|
||||
mockExecutor.reset();
|
||||
mockExecutorGPU_0.reset();
|
||||
mockExecutorGPU_1.reset();
|
||||
mockExecutorVPUX.reset();
|
||||
mockExecutorNPU.reset();
|
||||
}
|
||||
|
||||
void SetUp() override {
|
||||
@@ -136,8 +136,8 @@ public:
|
||||
mockIExeNetGPU_1 = std::make_shared<NiceMock<MockIExecutableNetworkInternal>>();
|
||||
mockExeNetworkGPU_1 = {mockIExeNetGPU_1, {}};
|
||||
|
||||
mockIExeNetVPUX = std::make_shared<NiceMock<MockIExecutableNetworkInternal>>();
|
||||
mockExeNetworkVPUX = {mockIExeNetVPUX, {}};
|
||||
mockIExeNetNPU = std::make_shared<NiceMock<MockIExecutableNetworkInternal>>();
|
||||
mockExeNetworkNPU = {mockIExeNetNPU, {}};
|
||||
|
||||
// prepare mockicore and cnnNetwork for loading
|
||||
core = std::make_shared<NiceMock<MockICore>>();
|
||||
@@ -150,7 +150,7 @@ public:
|
||||
IE_SET_METRIC(SUPPORTED_CONFIG_KEYS, supportConfigs, {});
|
||||
ON_CALL(*core, GetMetric(_, StrEq(METRIC_KEY(SUPPORTED_CONFIG_KEYS)), _)).WillByDefault(Return(supportConfigs));
|
||||
ON_CALL(*core, GetConfig(_, StrEq(ov::compilation_num_threads.name()))).WillByDefault(Return(12));
|
||||
std::vector<std::string> availableDevs = {"CPU", "GPU.0", "GPU.1", "VPUX"};
|
||||
std::vector<std::string> availableDevs = {"CPU", "GPU.0", "GPU.1", "NPU"};
|
||||
ON_CALL(*core, GetAvailableDevices()).WillByDefault(Return(availableDevs));
|
||||
|
||||
std::vector<std::string> metrics = {METRIC_KEY(SUPPORTED_CONFIG_KEYS)};
|
||||
@@ -173,7 +173,7 @@ public:
|
||||
::testing::Matcher<const std::string&>(StrEq(CommonTestUtils::DEVICE_KEEMBAY)),
|
||||
::testing::Matcher<const Config&>(_))).WillByDefault(InvokeWithoutArgs([this]() {
|
||||
std::this_thread::sleep_for(std::chrono::milliseconds(200));
|
||||
return mockExeNetworkVPUX; }));
|
||||
return mockExeNetworkNPU; }));
|
||||
|
||||
ON_CALL(*core, LoadNetwork(::testing::Matcher<const InferenceEngine::CNNNetwork&>(_),
|
||||
::testing::Matcher<const std::string&>(StrEq(CommonTestUtils::DEVICE_CPU)),
|
||||
@@ -224,9 +224,9 @@ public:
|
||||
ON_CALL(*mockIExeNetGPU_1.get(), GetMetric(StrEq(METRIC_KEY(OPTIMAL_NUMBER_OF_INFER_REQUESTS))))
|
||||
.WillByDefault(Return(optimalNum));
|
||||
|
||||
inferReqInternalVPUX = std::make_shared<NiceMock<MockIInferRequestInternal>>();
|
||||
mockExecutorVPUX = std::make_shared<ImmediateExecutor>();
|
||||
ON_CALL(*mockIExeNetVPUX.get(), GetMetric(StrEq(METRIC_KEY(OPTIMAL_NUMBER_OF_INFER_REQUESTS))))
|
||||
inferReqInternalNPU = std::make_shared<NiceMock<MockIInferRequestInternal>>();
|
||||
mockExecutorNPU = std::make_shared<ImmediateExecutor>();
|
||||
ON_CALL(*mockIExeNetNPU.get(), GetMetric(StrEq(METRIC_KEY(OPTIMAL_NUMBER_OF_INFER_REQUESTS))))
|
||||
.WillByDefault(Return(optimalNum));
|
||||
}
|
||||
};
|
||||
@@ -275,12 +275,12 @@ TEST_P(AutoRuntimeFallback, releaseResource) {
|
||||
std::this_thread::sleep_for(std::chrono::milliseconds(0));
|
||||
return mockInferrequestGPU_1; }));
|
||||
}
|
||||
} else if (deviceName == "VPUX") {
|
||||
mockInferrequestVPUX = std::make_shared<mockAsyncInferRequest>(
|
||||
inferReqInternalVPUX, mockExecutorVPUX, nullptr, ifThrow);
|
||||
ON_CALL(*mockIExeNetVPUX.get(), CreateInferRequest()).WillByDefault(InvokeWithoutArgs([this]() {
|
||||
} else if (deviceName == "NPU") {
|
||||
mockInferrequestNPU = std::make_shared<mockAsyncInferRequest>(
|
||||
inferReqInternalNPU, mockExecutorNPU, nullptr, ifThrow);
|
||||
ON_CALL(*mockIExeNetNPU.get(), CreateInferRequest()).WillByDefault(InvokeWithoutArgs([this]() {
|
||||
std::this_thread::sleep_for(std::chrono::milliseconds(0));
|
||||
return mockInferrequestVPUX; }));
|
||||
return mockInferrequestNPU; }));
|
||||
} else {
|
||||
return;
|
||||
}
|
||||
@@ -321,10 +321,10 @@ const std::vector<ConfigParams> testConfigs = {
|
||||
ConfigParams{{{"GPU.0", false}, {"CPU", true}}, 2, true, false, false, false},
|
||||
ConfigParams{{{"GPU.0", true}, {"CPU", true}}, 2, true, true, false, false},
|
||||
// 3 devices
|
||||
ConfigParams{{{"GPU.0", false}, {"GPU.1", false}, {"VPUX", false}}, 1, true, false, false, false},
|
||||
ConfigParams{{{"GPU.0", true}, {"GPU.1", false}, {"VPUX", false}}, 2, true, false, false, false},
|
||||
ConfigParams{{{"GPU.0", true}, {"GPU.1", true}, {"VPUX", false}}, 3, true, false, false, false},
|
||||
ConfigParams{{{"GPU.0", true}, {"GPU.1", true}, {"VPUX", true}}, 3, true, true, false, false},
|
||||
ConfigParams{{{"GPU.0", false}, {"GPU.1", false}, {"NPU", false}}, 1, true, false, false, false},
|
||||
ConfigParams{{{"GPU.0", true}, {"GPU.1", false}, {"NPU", false}}, 2, true, false, false, false},
|
||||
ConfigParams{{{"GPU.0", true}, {"GPU.1", true}, {"NPU", false}}, 3, true, false, false, false},
|
||||
ConfigParams{{{"GPU.0", true}, {"GPU.1", true}, {"NPU", true}}, 3, true, true, false, false},
|
||||
//CPU_HELP does not throw
|
||||
ConfigParams{{{"GPU.0", false}, {"GPU.1", false}, {"CPU", false}}, 2, true, false, false, false},
|
||||
ConfigParams{{{"GPU.0", true}, {"GPU.1", false}, {"CPU", false}}, 2, true, false, false, false},
|
||||
@@ -345,10 +345,10 @@ const std::vector<ConfigParams> testConfigs = {
|
||||
ConfigParams{{{"GPU.0", false}, {"CPU", true}}, 2, false, true, false, false},
|
||||
ConfigParams{{{"GPU.0", true}, {"CPU", true}}, 2, false, true, false, false},
|
||||
// 3 devices
|
||||
ConfigParams{{{"GPU.0", false}, {"GPU.1", false}, {"VPUX", false}}, 1, false, false, false, false},
|
||||
ConfigParams{{{"GPU.0", true}, {"GPU.1", false}, {"VPUX", false}}, 1, false, true, false, false},
|
||||
ConfigParams{{{"GPU.0", true}, {"GPU.1", true}, {"VPUX", false}}, 1, false, true, false, false},
|
||||
ConfigParams{{{"GPU.0", true}, {"GPU.1", true}, {"VPUX", true}}, 1, false, true, false, false},
|
||||
ConfigParams{{{"GPU.0", false}, {"GPU.1", false}, {"NPU", false}}, 1, false, false, false, false},
|
||||
ConfigParams{{{"GPU.0", true}, {"GPU.1", false}, {"NPU", false}}, 1, false, true, false, false},
|
||||
ConfigParams{{{"GPU.0", true}, {"GPU.1", true}, {"NPU", false}}, 1, false, true, false, false},
|
||||
ConfigParams{{{"GPU.0", true}, {"GPU.1", true}, {"NPU", true}}, 1, false, true, false, false},
|
||||
//CPU_HELP does not throw
|
||||
ConfigParams{{{"GPU.0", false}, {"GPU.1", false}, {"CPU", false}}, 2, false, false, false, false},
|
||||
ConfigParams{{{"GPU.0", true}, {"GPU.1", false}, {"CPU", false}}, 2, false, false, false, false},
|
||||
@@ -358,8 +358,8 @@ const std::vector<ConfigParams> testConfigs = {
|
||||
ConfigParams{{{"GPU.0", true}, {"GPU.1", false}, {"CPU", true}}, 2, false, true, false, false},
|
||||
ConfigParams{{{"GPU.0", true}, {"GPU.1", true}, {"CPU", true}}, 2, false, true, false, false},
|
||||
// loadFail and CreateInferRequestFail
|
||||
ConfigParams{{{"GPU.0", true}, {"GPU.1", false}, {"VPUX", false}}, 3, true, false, true, false},
|
||||
ConfigParams{{{"GPU.0", true}, {"GPU.1", false}, {"VPUX", false}}, 3, true, false, false, true},
|
||||
ConfigParams{{{"GPU.0", true}, {"GPU.1", false}, {"NPU", false}}, 3, true, false, true, false},
|
||||
ConfigParams{{{"GPU.0", true}, {"GPU.1", false}, {"NPU", false}}, 3, true, false, false, true},
|
||||
};
|
||||
|
||||
INSTANTIATE_TEST_SUITE_P(smoke_AutoRuntimeFallback, AutoRuntimeFallback,
|
||||
|
||||
@@ -217,7 +217,7 @@ TEST_P(AutoLoadFailedTest, LoadCNNetWork) {
|
||||
|
||||
metaDevices.push_back(std::move(devInfo));
|
||||
// set the return value of SelectDevice
|
||||
// for example if there are three device, if will return GPU on the first call, and then MYRIAD
|
||||
// for example if there are three device, if will return GPU on the first call, and then NPU
|
||||
// at last CPU
|
||||
ON_CALL(*plugin, SelectDevice(Property(&std::vector<DeviceInformation>::size, Eq(selDevsSize)), _, _))
|
||||
.WillByDefault(Return(metaDevices[deviceConfigs.size() - selDevsSize]));
|
||||
@@ -272,12 +272,12 @@ TEST_P(AutoLoadFailedTest, LoadCNNetWork) {
|
||||
// { true, false, GENERAL, 3 device, 2, 3, 2}
|
||||
//
|
||||
// there are three devices for loading
|
||||
// CPU load for accelerator success, but GPU will load faild and then select MYRIAD and load again
|
||||
// CPU load for accelerator success, but GPU will load faild and then select NPU and load again
|
||||
// LoadExeNetworkImpl will not throw exception and can continue to run,
|
||||
// it will select twice, first select GPU, second select MYRIAD
|
||||
// it will load network three times(CPU, GPU, MYRIAD)
|
||||
// it will select twice, first select GPU, second select NPU
|
||||
// it will load network three times(CPU, GPU, NPU)
|
||||
// the inference request num is loadSuccessCount * optimalNum, in this test case optimalNum is 2
|
||||
// so inference request num is 4 (CPU 2, MYRIAD 2)
|
||||
// so inference request num is 4 (CPU 2, NPU 2)
|
||||
//
|
||||
const std::vector<ConfigParams> testConfigs = {ConfigParams {true, false, GENERAL, {DeviceParams {CommonTestUtils::DEVICE_GPU, true},
|
||||
DeviceParams {CommonTestUtils::DEVICE_KEEMBAY, true},
|
||||
|
||||
@@ -254,12 +254,12 @@ TEST_P(ExecNetworkGetMetricOptimalNumInferReq, OPTIMAL_NUMBER_OF_INFER_REQUESTS)
|
||||
InferenceEngine::PluginConfigParams::THROUGHPUT}}, actualCustomerNum, ""});
|
||||
// enable autoBatch
|
||||
IE_SET_METRIC(OPTIMAL_BATCH_SIZE, gpuOptimalBatchNum, 8);
|
||||
IE_SET_METRIC(OPTIMAL_BATCH_SIZE, keembayOptimalBatchNum, 1);
|
||||
IE_SET_METRIC(OPTIMAL_BATCH_SIZE, npuOptimalBatchNum, 1);
|
||||
IE_SET_METRIC(RANGE_FOR_STREAMS, rangeOfStreams, std::make_tuple<unsigned int, unsigned int>(1, 3));
|
||||
ON_CALL(*core.get(), GetMetric(StrEq(CommonTestUtils::DEVICE_GPU), StrEq(METRIC_KEY(OPTIMAL_BATCH_SIZE)), _))
|
||||
.WillByDefault(RETURN_MOCK_VALUE(gpuOptimalBatchNum));
|
||||
ON_CALL(*core.get(), GetMetric(StrEq(CommonTestUtils::DEVICE_KEEMBAY), StrEq(METRIC_KEY(OPTIMAL_BATCH_SIZE)), _))
|
||||
.WillByDefault(RETURN_MOCK_VALUE(keembayOptimalBatchNum));
|
||||
.WillByDefault(RETURN_MOCK_VALUE(npuOptimalBatchNum));
|
||||
ON_CALL(*core.get(), GetMetric(_, StrEq(METRIC_KEY(RANGE_FOR_STREAMS)), _))
|
||||
.WillByDefault(RETURN_MOCK_VALUE(rangeOfStreams));
|
||||
ON_CALL(*core.get(), GetConfig(_, StrEq(CONFIG_KEY(PERFORMANCE_HINT))))
|
||||
|
||||
@@ -32,8 +32,8 @@ using ::testing::_;
|
||||
using Config = std::map<std::string, std::string>;
|
||||
using namespace MockMultiDevice;
|
||||
|
||||
const std::vector<std::string> availableDevs = {"CPU", "GPU", "VPUX"};
|
||||
const std::vector<std::string> availableDevsWithId = {"CPU", "GPU.0", "GPU.1", "VPUX"};
|
||||
const std::vector<std::string> availableDevs = {"CPU", "GPU", "NPU"};
|
||||
const std::vector<std::string> availableDevsWithId = {"CPU", "GPU.0", "GPU.1", "NPU"};
|
||||
using Params = std::tuple<std::string, std::string>;
|
||||
using ConfigParams = std::tuple<
|
||||
std::vector<std::string>, // Available devices retrieved from Core
|
||||
@@ -141,8 +141,8 @@ const std::vector<Params> testConfigsWithId = {Params{" ", " "},
|
||||
Params{"CPU,,GPU", "CPU,GPU.0,GPU.1"},
|
||||
Params{"CPU, ,GPU", "CPU, ,GPU.0,GPU.1"},
|
||||
Params{"CPU,GPU,GPU.1", "CPU,GPU.0,GPU.1"},
|
||||
Params{"CPU,GPU,VPUX,INVALID_DEVICE", "CPU,GPU.0,GPU.1,VPUX,INVALID_DEVICE"},
|
||||
Params{"VPUX,GPU,CPU,-GPU.0", "VPUX,GPU.1,CPU"},
|
||||
Params{"CPU,GPU,NPU,INVALID_DEVICE", "CPU,GPU.0,GPU.1,NPU,INVALID_DEVICE"},
|
||||
Params{"NPU,GPU,CPU,-GPU.0", "NPU,GPU.1,CPU"},
|
||||
Params{"-GPU.0,GPU,CPU", "GPU.1,CPU"},
|
||||
Params{"-GPU.0,GPU", "GPU.1"},
|
||||
Params{"-GPU,GPU.0", "GPU.0"},
|
||||
@@ -176,10 +176,10 @@ const std::vector<Params> testConfigs = {Params{" ", " "},
|
||||
Params{"CPU,GPU,GPU.0", "CPU,GPU"},
|
||||
Params{"CPU,GPU,GPU.1", "CPU,GPU,GPU.1"},
|
||||
Params{"CPU,GPU.1,GPU", "CPU,GPU.1,GPU"},
|
||||
Params{"CPU,VPUX", "CPU,VPUX"},
|
||||
Params{"CPU,-VPUX", "CPU"},
|
||||
Params{"CPU,NPU", "CPU,NPU"},
|
||||
Params{"CPU,-NPU", "CPU"},
|
||||
Params{"CPU,-INVALID_DEVICE", "CPU"},
|
||||
Params{"CPU,GPU,VPUX", "CPU,GPU,VPUX"}};
|
||||
Params{"CPU,GPU,NPU", "CPU,GPU,NPU"}};
|
||||
|
||||
const std::vector<Params> testConfigsWithIdNotInteldGPU = {Params{" ", " "},
|
||||
Params{"", "CPU,GPU.0"},
|
||||
@@ -189,8 +189,8 @@ const std::vector<Params> testConfigsWithIdNotInteldGPU = {Params{" ", " "},
|
||||
Params{"CPU,,GPU", "CPU,GPU.0,GPU.1"},
|
||||
Params{"CPU, ,GPU", "CPU, ,GPU.0,GPU.1"},
|
||||
Params{"CPU,GPU,GPU.1", "CPU,GPU.0,GPU.1"},
|
||||
Params{"CPU,GPU,VPUX,INVALID_DEVICE", "CPU,GPU.0,GPU.1,VPUX,INVALID_DEVICE"},
|
||||
Params{"VPUX,GPU,CPU,-GPU.0", "VPUX,GPU.1,CPU"},
|
||||
Params{"CPU,GPU,NPU,INVALID_DEVICE", "CPU,GPU.0,GPU.1,NPU,INVALID_DEVICE"},
|
||||
Params{"NPU,GPU,CPU,-GPU.0", "NPU,GPU.1,CPU"},
|
||||
Params{"-GPU.0,GPU,CPU", "GPU.1,CPU"},
|
||||
Params{"-GPU.0,GPU", "GPU.1"},
|
||||
Params{"-GPU,GPU.0", "GPU.0"},
|
||||
|
||||
@@ -86,7 +86,7 @@ public:
|
||||
IE_SET_METRIC(OPTIMIZATION_CAPABILITIES, cpuCability, {"FP32", "FP16", "INT8", "BIN"});
|
||||
IE_SET_METRIC(OPTIMIZATION_CAPABILITIES, gpuCability, {"FP32", "FP16", "BATCHED_BLOB", "BIN"});
|
||||
IE_SET_METRIC(OPTIMIZATION_CAPABILITIES, myriadCability, {"FP16"});
|
||||
IE_SET_METRIC(OPTIMIZATION_CAPABILITIES, vpuxCability, {"INT8"});
|
||||
IE_SET_METRIC(OPTIMIZATION_CAPABILITIES, npuCability, {"INT8"});
|
||||
ON_CALL(*core, GetMetric(StrEq(CommonTestUtils::DEVICE_CPU),
|
||||
StrEq(METRIC_KEY(OPTIMIZATION_CAPABILITIES)), _)).WillByDefault(RETURN_MOCK_VALUE(cpuCability));
|
||||
ON_CALL(*core, GetMetric(HasSubstr("GPU"),
|
||||
@@ -94,7 +94,7 @@ public:
|
||||
ON_CALL(*core, GetMetric(StrEq("MYRIAD"),
|
||||
StrEq(METRIC_KEY(OPTIMIZATION_CAPABILITIES)), _)).WillByDefault(RETURN_MOCK_VALUE(myriadCability));
|
||||
ON_CALL(*core, GetMetric(StrEq(CommonTestUtils::DEVICE_KEEMBAY),
|
||||
StrEq(METRIC_KEY(OPTIMIZATION_CAPABILITIES)), _)).WillByDefault(RETURN_MOCK_VALUE(vpuxCability));
|
||||
StrEq(METRIC_KEY(OPTIMIZATION_CAPABILITIES)), _)).WillByDefault(RETURN_MOCK_VALUE(npuCability));
|
||||
ON_CALL(*core, GetMetric(HasSubstr("GPU"),
|
||||
StrEq(METRIC_KEY(DEVICE_ARCHITECTURE)), _)).WillByDefault(Return("GPU: vendor=0x8086 arch=0"));
|
||||
ON_CALL(*core, GetMetric(StrEq("GPU"),
|
||||
@@ -127,13 +127,13 @@ TEST_P(KeyNetworkPriorityTest, SelectDevice) {
|
||||
{"GPU.0", {}, 2, "01", "iGPU_01", 1},
|
||||
{"GPU.1", {}, 2, "01", "dGPU_01", 2},
|
||||
{"MYRIAD", {}, 2, "01", "MYRIAD_01", 3},
|
||||
{CommonTestUtils::DEVICE_KEEMBAY, {}, 2, "01", "VPUX_01", 4}};
|
||||
{CommonTestUtils::DEVICE_KEEMBAY, {}, 2, "01", "NPU_01", 4}};
|
||||
} else {
|
||||
metaDevices = {{CommonTestUtils::DEVICE_CPU, {}, 2, "", "CPU_01", 0},
|
||||
{"GPU.0", {}, 2, "01", "iGPU_01", 0},
|
||||
{"GPU.1", {}, 2, "01", "dGPU_01", 0},
|
||||
{"MYRIAD", {}, 2, "01", "MYRIAD_01", 0},
|
||||
{CommonTestUtils::DEVICE_KEEMBAY, {}, 2, "01", "VPUX_01", 0}};
|
||||
{CommonTestUtils::DEVICE_KEEMBAY, {}, 2, "01", "NPU_01", 0}};
|
||||
}
|
||||
|
||||
EXPECT_CALL(*plugin, SelectDevice(_, _, _)).Times(sizeOfConfigs);
|
||||
@@ -156,13 +156,13 @@ TEST_P(KeyNetworkPriorityTest, MultiThreadsSelectDevice) {
|
||||
{"GPU.0", {}, 2, "01", "iGPU_01", 1},
|
||||
{"GPU.1", {}, 2, "01", "dGPU_01", 2},
|
||||
{"MYRIAD", {}, 2, "01", "MYRIAD_01", 3},
|
||||
{CommonTestUtils::DEVICE_KEEMBAY, {}, 2, "01", "VPUX_01", 4}};
|
||||
{CommonTestUtils::DEVICE_KEEMBAY, {}, 2, "01", "NPU_01", 4}};
|
||||
} else {
|
||||
metaDevices = {{CommonTestUtils::DEVICE_CPU, {}, 2, "", "CPU_01", 0},
|
||||
{"GPU.0", {}, 2, "01", "iGPU_01", 0},
|
||||
{"GPU.1", {}, 2, "01", "dGPU_01", 0},
|
||||
{"MYRIAD", {}, 2, "01", "MYRIAD_01", 0},
|
||||
{CommonTestUtils::DEVICE_KEEMBAY, {}, 2, "01", "VPUX_01", 0}};
|
||||
{CommonTestUtils::DEVICE_KEEMBAY, {}, 2, "01", "NPU_01", 0}};
|
||||
}
|
||||
|
||||
EXPECT_CALL(*plugin, SelectDevice(_, _, _)).Times(sizeOfConfigs * 2);
|
||||
@@ -225,27 +225,27 @@ const std::vector<ConfigParams> testConfigs = {
|
||||
PriorityParams {1, "iGPU_01"},
|
||||
PriorityParams {2, "CPU_01"},
|
||||
PriorityParams {3, "MYRIAD_01"}}},
|
||||
ConfigParams {"INT8", false, {PriorityParams {0, "VPUX_01"},
|
||||
ConfigParams {"INT8", false, {PriorityParams {0, "NPU_01"},
|
||||
PriorityParams {1, "CPU_01"},
|
||||
PriorityParams {2, "CPU_01"},
|
||||
PriorityParams {2, "CPU_01"}}},
|
||||
ConfigParams {"INT8", false, {PriorityParams {2, "VPUX_01"},
|
||||
ConfigParams {"INT8", false, {PriorityParams {2, "NPU_01"},
|
||||
PriorityParams {3, "CPU_01"},
|
||||
PriorityParams {4, "CPU_01"},
|
||||
PriorityParams {5, "CPU_01"}}},
|
||||
ConfigParams {"INT8", false, {PriorityParams {2, "VPUX_01"},
|
||||
PriorityParams {0, "VPUX_01"},
|
||||
ConfigParams {"INT8", false, {PriorityParams {2, "NPU_01"},
|
||||
PriorityParams {0, "NPU_01"},
|
||||
PriorityParams {2, "CPU_01"},
|
||||
PriorityParams {2, "CPU_01"}}},
|
||||
ConfigParams {"INT8", false, {PriorityParams {2, "VPUX_01"},
|
||||
PriorityParams {0, "VPUX_01"},
|
||||
ConfigParams {"INT8", false, {PriorityParams {2, "NPU_01"},
|
||||
PriorityParams {0, "NPU_01"},
|
||||
PriorityParams {2, "CPU_01"},
|
||||
PriorityParams {3, "CPU_01"}}},
|
||||
ConfigParams {"INT8", false, {PriorityParams {0, "VPUX_01"},
|
||||
ConfigParams {"INT8", false, {PriorityParams {0, "NPU_01"},
|
||||
PriorityParams {1, "CPU_01"},
|
||||
PriorityParams {2, "CPU_01"},
|
||||
PriorityParams {3, "CPU_01"},
|
||||
PriorityParams {0, "VPUX_01"},
|
||||
PriorityParams {0, "NPU_01"},
|
||||
PriorityParams {1, "CPU_01"},
|
||||
PriorityParams {2, "CPU_01"},
|
||||
PriorityParams {3, "CPU_01"}}},
|
||||
@@ -277,8 +277,8 @@ const std::vector<ConfigParams> testConfigs = {
|
||||
// {CommonTestUtils::DEVICE_GPU, {}, 2, "01", "iGPU_01", 1},
|
||||
// {CommonTestUtils::DEVICE_GPU, {}, 2, "01", "dGPU_01", 2},
|
||||
// {"MYRIAD", {}, 2, "01", "MYRIAD_01", 3},
|
||||
// {CommonTestUtils::DEVICE_KEEMBAY, {}, 2, "01", "VPUX_01", 4}};
|
||||
// cpu > igpu > dgpu > MYRIAD > VPUX
|
||||
// {CommonTestUtils::DEVICE_KEEMBAY, {}, 2, "01", "NPU_01", 4}};
|
||||
// cpu > igpu > dgpu > MYRIAD > NPU
|
||||
ConfigParams {"FP32", true, {PriorityParams {0, "CPU_01"},
|
||||
PriorityParams {1, "iGPU_01"},
|
||||
PriorityParams {2, "dGPU_01"},
|
||||
@@ -304,29 +304,29 @@ const std::vector<ConfigParams> testConfigs = {
|
||||
PriorityParams {2, "dGPU_01"},
|
||||
PriorityParams {3, "MYRIAD_01"}}},
|
||||
ConfigParams {"INT8", true, {PriorityParams {0, "CPU_01"},
|
||||
PriorityParams {1, "VPUX_01"},
|
||||
PriorityParams {2, "VPUX_01"},
|
||||
PriorityParams {2, "VPUX_01"}}},
|
||||
PriorityParams {1, "NPU_01"},
|
||||
PriorityParams {2, "NPU_01"},
|
||||
PriorityParams {2, "NPU_01"}}},
|
||||
ConfigParams {"INT8", true, {PriorityParams {2, "CPU_01"},
|
||||
PriorityParams {3, "VPUX_01"},
|
||||
PriorityParams {4, "VPUX_01"},
|
||||
PriorityParams {5, "VPUX_01"}}},
|
||||
PriorityParams {3, "NPU_01"},
|
||||
PriorityParams {4, "NPU_01"},
|
||||
PriorityParams {5, "NPU_01"}}},
|
||||
ConfigParams {"INT8", true, {PriorityParams {2, "CPU_01"},
|
||||
PriorityParams {0, "CPU_01"},
|
||||
PriorityParams {2, "VPUX_01"},
|
||||
PriorityParams {2, "VPUX_01"}}},
|
||||
PriorityParams {2, "NPU_01"},
|
||||
PriorityParams {2, "NPU_01"}}},
|
||||
ConfigParams {"INT8", true, {PriorityParams {2, "CPU_01"},
|
||||
PriorityParams {0, "CPU_01"},
|
||||
PriorityParams {2, "VPUX_01"},
|
||||
PriorityParams {3, "VPUX_01"}}},
|
||||
PriorityParams {2, "NPU_01"},
|
||||
PriorityParams {3, "NPU_01"}}},
|
||||
ConfigParams {"INT8", true, {PriorityParams {0, "CPU_01"},
|
||||
PriorityParams {1, "VPUX_01"},
|
||||
PriorityParams {2, "VPUX_01"},
|
||||
PriorityParams {3, "VPUX_01"},
|
||||
PriorityParams {1, "NPU_01"},
|
||||
PriorityParams {2, "NPU_01"},
|
||||
PriorityParams {3, "NPU_01"},
|
||||
PriorityParams {0, "CPU_01"},
|
||||
PriorityParams {1, "VPUX_01"},
|
||||
PriorityParams {2, "VPUX_01"},
|
||||
PriorityParams {3, "VPUX_01"}}},
|
||||
PriorityParams {1, "NPU_01"},
|
||||
PriorityParams {2, "NPU_01"},
|
||||
PriorityParams {3, "NPU_01"}}},
|
||||
ConfigParams {"BIN", true, {PriorityParams {0, "CPU_01"},
|
||||
PriorityParams {1, "iGPU_01"},
|
||||
PriorityParams {2, "dGPU_01"},
|
||||
|
||||
@@ -39,10 +39,8 @@ using namespace MockMultiDevice;
|
||||
// const char cpuFullDeviceName[] = "Intel(R) Core(TM) i7-6700 CPU @ 3.40GHz";
|
||||
const char igpuFullDeviceName[] = "Intel(R) Gen9 HD Graphics (iGPU)";
|
||||
const char dgpuFullDeviceName[] = "Intel(R) Iris(R) Xe MAX Graphics (dGPU)";
|
||||
// const char myriadFullDeviceName[] = "Intel Movidius Myriad X VPU";
|
||||
// const char vpuxFullDeviceName[] = "";
|
||||
const std::vector<std::string> availableDevs = {"CPU", "GPU.0", "GPU.1", "VPUX"};
|
||||
const std::vector<std::string> availableDevsNoID = {"CPU", "GPU", "VPUX"};
|
||||
const std::vector<std::string> availableDevs = {"CPU", "GPU.0", "GPU.1", "NPU"};
|
||||
const std::vector<std::string> availableDevsNoID = {"CPU", "GPU", "NPU"};
|
||||
using ConfigParams = std::tuple<
|
||||
std::string, // Priority devices
|
||||
std::vector<DeviceInformation>, // expect metaDevices
|
||||
@@ -201,62 +199,62 @@ TEST_P(ParseMetaDeviceNoIDTest, ParseMetaDevices) {
|
||||
// ConfigParams {devicePriority, expect metaDevices, ifThrowException}
|
||||
|
||||
const std::vector<ConfigParams> testConfigs = {
|
||||
// ConfigParams {"CPU,GPU,MYRIAD,VPUX",
|
||||
// ConfigParams {"CPU,GPU,MYRIAD,NPU",
|
||||
// {{"CPU", {}, -1, "", "CPU_", 0},
|
||||
// {"GPU.0", {}, -1, "0", std::string(igpuFullDeviceName) + "_0", 1},
|
||||
// {"GPU.1", {}, -1, "1", std::string(dgpuFullDeviceName) + "_1", 1},
|
||||
// {"MYRIAD.9.2-ma2480", {}, -1, "9.2-ma2480", "MYRIAD_9.2-ma2480", 2},
|
||||
// {"MYRIAD.9.1-ma2480", {}, -1, "9.1-ma2480", "MYRIAD_9.1-ma2480", 2},
|
||||
// {"VPUX", {}, -1, "", "VPUX_", 3}}, false},
|
||||
// ConfigParams {"VPUX,MYRIAD,GPU,CPU",
|
||||
// {{"VPUX", {}, -1, "", "VPUX_", 0},
|
||||
// {"NPU", {}, -1, "", "NPU_", 3}}, false},
|
||||
// ConfigParams {"NPU,MYRIAD,GPU,CPU",
|
||||
// {{"NPU", {}, -1, "", "NPU_", 0},
|
||||
// {"MYRIAD.9.2-ma2480", {}, -1, "9.2-ma2480", "MYRIAD_9.2-ma2480", 1},
|
||||
// {"MYRIAD.9.1-ma2480", {}, -1, "9.1-ma2480", "MYRIAD_9.1-ma2480", 1},
|
||||
// {"GPU.0", {}, -1, "0", std::string(igpuFullDeviceName) + "_0", 2},
|
||||
// {"GPU.1", {}, -1, "1", std::string(dgpuFullDeviceName) + "_1", 2},
|
||||
// {"CPU", {}, -1, "", "CPU_", 3}}, false},
|
||||
// ConfigParams {"CPU(1),GPU(2),MYRIAD(3),VPUX(4)",
|
||||
// ConfigParams {"CPU(1),GPU(2),MYRIAD(3),NPU(4)",
|
||||
// {{"CPU", {}, 1, "", "CPU_", 0},
|
||||
// {"GPU.0", {}, 2, "0", std::string(igpuFullDeviceName) + "_0", 1},
|
||||
// {"GPU.1", {}, 2, "1", std::string(dgpuFullDeviceName) + "_1", 1},
|
||||
// {"MYRIAD.9.2-ma2480", {}, 3, "9.2-ma2480", "MYRIAD_9.2-ma2480", 2},
|
||||
// {"MYRIAD.9.1-ma2480", {}, 3, "9.1-ma2480", "MYRIAD_9.1-ma2480", 2},
|
||||
// {"VPUX", {}, 4, "", "VPUX_", 3}}, false},
|
||||
// {"NPU", {}, 4, "", "NPU_", 3}}, false},
|
||||
//
|
||||
ConfigParams {"CPU,GPU,VPUX",
|
||||
ConfigParams {"CPU,GPU,NPU",
|
||||
{{"CPU", {}, -1, "", "CPU_", 0},
|
||||
{"GPU.0", {}, -1, "", std::string(igpuFullDeviceName) + "_0", 1},
|
||||
{"GPU.1", {}, -1, "", std::string(dgpuFullDeviceName) + "_1", 1},
|
||||
{"VPUX", {}, -1, "", "VPUX_", 2}}, false},
|
||||
ConfigParams {"VPUX,GPU,CPU",
|
||||
{{"VPUX", {}, -1, "", "VPUX_", 0},
|
||||
{"NPU", {}, -1, "", "NPU_", 2}}, false},
|
||||
ConfigParams {"NPU,GPU,CPU",
|
||||
{{"NPU", {}, -1, "", "NPU_", 0},
|
||||
{"GPU.0", {}, -1, "", std::string(igpuFullDeviceName) + "_0", 1},
|
||||
{"GPU.1", {}, -1, "", std::string(dgpuFullDeviceName) + "_1", 1},
|
||||
{"CPU", {}, -1, "", "CPU_", 2}}, false},
|
||||
ConfigParams {"CPU(1),GPU(2),VPUX(4)",
|
||||
ConfigParams {"CPU(1),GPU(2),NPU(4)",
|
||||
{{"CPU", {}, 1, "", "CPU_", 0},
|
||||
{"GPU.0", {}, 2, "", std::string(igpuFullDeviceName) + "_0", 1},
|
||||
{"GPU.1", {}, 2, "", std::string(dgpuFullDeviceName) + "_1", 1},
|
||||
{"VPUX", {}, 4, "", "VPUX_", 2}}, false},
|
||||
{"NPU", {}, 4, "", "NPU_", 2}}, false},
|
||||
|
||||
ConfigParams {"CPU(-1),GPU,VPUX", {}, true},
|
||||
ConfigParams {"CPU(NA),GPU,VPUX", {}, true},
|
||||
ConfigParams {"CPU(-1),GPU,NPU", {}, true},
|
||||
ConfigParams {"CPU(NA),GPU,NPU", {}, true},
|
||||
|
||||
ConfigParams {"CPU(3),GPU.1,VPUX",
|
||||
ConfigParams {"CPU(3),GPU.1,NPU",
|
||||
{{"CPU", {}, 3, "", "CPU_", 0},
|
||||
{"GPU.1", {}, -1, "", std::string(dgpuFullDeviceName) + "_1", 1},
|
||||
{"VPUX", {}, -1, "", "VPUX_", 2}}, false},
|
||||
ConfigParams {"VPUX,GPU.1,CPU(3)",
|
||||
{{"VPUX", {}, -1, "", "VPUX_", 0},
|
||||
{"NPU", {}, -1, "", "NPU_", 2}}, false},
|
||||
ConfigParams {"NPU,GPU.1,CPU(3)",
|
||||
{{"NPU", {}, -1, "", "NPU_", 0},
|
||||
{"GPU.1", {}, -1, "", std::string(dgpuFullDeviceName) + "_1", 1},
|
||||
{"CPU", {}, 3, "", "CPU_", 2}}, false}
|
||||
};
|
||||
|
||||
const std::vector<ConfigParams> testConfigsNoID = {
|
||||
ConfigParams {"CPU,GPU,VPUX",
|
||||
ConfigParams {"CPU,GPU,NPU",
|
||||
{{"CPU", {}, -1, "", "CPU_", 0},
|
||||
{"GPU", {}, -1, "0", std::string(igpuFullDeviceName) + "_0", 1},
|
||||
{"VPUX", {}, -1, "", "VPUX_", 2}}, false},
|
||||
{"NPU", {}, -1, "", "NPU_", 2}}, false},
|
||||
};
|
||||
|
||||
|
||||
|
||||
@@ -47,10 +47,10 @@ const DeviceInformation CPU_INFO = {CommonTestUtils::DEVICE_CPU, {}, 2, "01", "C
|
||||
const DeviceInformation IGPU_INFO = {"GPU.0", {}, 2, "01", "iGPU_01"};
|
||||
const DeviceInformation DGPU_INFO = {"GPU.1", {}, 2, "01", "dGPU_01"};
|
||||
const DeviceInformation MYRIAD_INFO = {"MYRIAD", {}, 2, "01", "MYRIAD_01" };
|
||||
const DeviceInformation KEEMBAY_INFO = {CommonTestUtils::DEVICE_KEEMBAY, {}, 2, "01", "VPUX_01" };
|
||||
const DeviceInformation NPU_INFO = {CommonTestUtils::DEVICE_KEEMBAY, {}, 2, "01", "NPU_01" };
|
||||
const std::vector<DeviceInformation> fp32DeviceVector = {DGPU_INFO, IGPU_INFO, CPU_INFO, MYRIAD_INFO};
|
||||
const std::vector<DeviceInformation> fp16DeviceVector = {DGPU_INFO, IGPU_INFO, MYRIAD_INFO, CPU_INFO};
|
||||
const std::vector<DeviceInformation> int8DeviceVector = {KEEMBAY_INFO, DGPU_INFO, IGPU_INFO, CPU_INFO};
|
||||
const std::vector<DeviceInformation> int8DeviceVector = {NPU_INFO, DGPU_INFO, IGPU_INFO, CPU_INFO};
|
||||
const std::vector<DeviceInformation> binDeviceVector = {DGPU_INFO, IGPU_INFO, CPU_INFO};
|
||||
const std::vector<DeviceInformation> batchedblobDeviceVector = {DGPU_INFO, IGPU_INFO};
|
||||
std::map<std::string, const std::vector<DeviceInformation>> devicesMap = {{"FP32", fp32DeviceVector},
|
||||
@@ -59,8 +59,8 @@ std::map<std::string, const std::vector<DeviceInformation>> devicesMap = {{"FP32
|
||||
{"BIN", binDeviceVector},
|
||||
{"BATCHED_BLOB", batchedblobDeviceVector}
|
||||
};
|
||||
const std::vector<DeviceInformation> totalDevices = {DGPU_INFO, IGPU_INFO, MYRIAD_INFO, CPU_INFO, KEEMBAY_INFO};
|
||||
const std::vector<DeviceInformation> reverseTotalDevices = {KEEMBAY_INFO, CPU_INFO, MYRIAD_INFO, IGPU_INFO, DGPU_INFO};
|
||||
const std::vector<DeviceInformation> totalDevices = {DGPU_INFO, IGPU_INFO, MYRIAD_INFO, CPU_INFO, NPU_INFO};
|
||||
const std::vector<DeviceInformation> reverseTotalDevices = {NPU_INFO, CPU_INFO, MYRIAD_INFO, IGPU_INFO, DGPU_INFO};
|
||||
const std::vector<std::string> netPrecisions = {"FP32", "FP16", "INT8", "BIN", "BATCHED_BLOB"};
|
||||
std::vector<ConfigParams> testConfigs;
|
||||
|
||||
@@ -238,7 +238,7 @@ public:
|
||||
IE_SET_METRIC(OPTIMIZATION_CAPABILITIES, cpuCability, {"FP32", "FP16", "INT8", "BIN"});
|
||||
IE_SET_METRIC(OPTIMIZATION_CAPABILITIES, gpuCability, {"FP32", "FP16", "BATCHED_BLOB", "BIN", "INT8"});
|
||||
IE_SET_METRIC(OPTIMIZATION_CAPABILITIES, myriadCability, {"FP16"});
|
||||
IE_SET_METRIC(OPTIMIZATION_CAPABILITIES, vpuxCability, {"INT8"});
|
||||
IE_SET_METRIC(OPTIMIZATION_CAPABILITIES, npuCability, {"INT8"});
|
||||
IE_SET_METRIC(DEVICE_ARCHITECTURE, gpuArchitecture, "GPU: vendor=0x8086 arch=0");
|
||||
IE_SET_METRIC(DEVICE_TYPE, dGpuType, Metrics::DeviceType::discrete);
|
||||
IE_SET_METRIC(DEVICE_TYPE, iGpuType, Metrics::DeviceType::integrated);
|
||||
@@ -250,7 +250,7 @@ public:
|
||||
ON_CALL(*core, GetMetric(StrEq("MYRIAD"),
|
||||
StrEq(METRIC_KEY(OPTIMIZATION_CAPABILITIES)), _)).WillByDefault(RETURN_MOCK_VALUE(myriadCability));
|
||||
ON_CALL(*core, GetMetric(StrEq(CommonTestUtils::DEVICE_KEEMBAY),
|
||||
StrEq(METRIC_KEY(OPTIMIZATION_CAPABILITIES)), _)).WillByDefault(RETURN_MOCK_VALUE(vpuxCability));
|
||||
StrEq(METRIC_KEY(OPTIMIZATION_CAPABILITIES)), _)).WillByDefault(RETURN_MOCK_VALUE(npuCability));
|
||||
ON_CALL(*core, GetMetric(HasSubstr("GPU"),
|
||||
StrEq(METRIC_KEY(DEVICE_ARCHITECTURE)), _)).WillByDefault(RETURN_MOCK_VALUE(gpuArchitecture));
|
||||
ON_CALL(*core, GetMetric(StrEq("GPU"),
|
||||
|
||||
@@ -17,7 +17,7 @@ inline const std::string get_plugin_lib_name_by_device(const std::string& device
|
||||
{ "HETERO", "openvino_hetero_plugin" },
|
||||
{ "BATCH", "openvino_auto_batch_plugin" },
|
||||
{ "MULTI", "openvino_auto_plugin" },
|
||||
{ "VPUX", "openvino_intel_vpux_plugin" },
|
||||
{ "NPU", "openvino_intel_npu_plugin" },
|
||||
{ "CPU", "openvino_intel_cpu_plugin" },
|
||||
{ "GNA", "openvino_intel_gna_plugin" },
|
||||
{ "GPU", "openvino_intel_gpu_plugin" },
|
||||
|
||||
@@ -10,8 +10,8 @@ const char *DEVICE_AUTO = "AUTO";
|
||||
const char *DEVICE_CPU = "CPU";
|
||||
const char *DEVICE_GNA = "GNA";
|
||||
const char *DEVICE_GPU = "GPU";
|
||||
const char *DEVICE_KEEMBAY = "NPU";
|
||||
const char *DEVICE_BATCH = "BATCH";
|
||||
const char *DEVICE_KEEMBAY = "VPUX";
|
||||
const char *DEVICE_MULTI = "MULTI";
|
||||
const char *DEVICE_TEMPLATE = "TEMPLATE";
|
||||
const char *DEVICE_HETERO = "HETERO";
|
||||
|
||||
@@ -10,8 +10,8 @@ extern const char* DEVICE_AUTO;
|
||||
extern const char* DEVICE_CPU;
|
||||
extern const char* DEVICE_GNA;
|
||||
extern const char* DEVICE_GPU;
|
||||
extern const char* DEVICE_BATCH;
|
||||
extern const char* DEVICE_KEEMBAY;
|
||||
extern const char* DEVICE_BATCH;
|
||||
extern const char* DEVICE_MULTI;
|
||||
extern const char* DEVICE_TEMPLATE;
|
||||
extern const char* DEVICE_HETERO;
|
||||
|
||||
@@ -1,448 +1,448 @@
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/resnet-50-pytorch/onnx/FP16/resnet-50-pytorch.xml
|
||||
path: ${NPU_MODELS_PKG}/resnet-50-pytorch/onnx/FP16/resnet-50-pytorch.xml
|
||||
name: resnet-50-pytorch
|
||||
precision: FP16
|
||||
framework: onnx
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/resnet-50-pytorch/onnx/FP16/resnet-50-pytorch.xml
|
||||
path: ${NPU_MODELS_PKG}/resnet-50-pytorch/onnx/FP16/resnet-50-pytorch.xml
|
||||
name: resnet-50-pytorch
|
||||
precision: FP16
|
||||
framework: onnx
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/resnet-50-pytorch/onnx/FP16-INT8/resnet-50-pytorch.xml
|
||||
path: ${NPU_MODELS_PKG}/resnet-50-pytorch/onnx/FP16-INT8/resnet-50-pytorch.xml
|
||||
name: resnet-50-pytorch
|
||||
precision: FP16-INT8
|
||||
framework: onnx
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/resnet-50-pytorch/onnx/FP16-INT8/resnet-50-pytorch.xml
|
||||
path: ${NPU_MODELS_PKG}/resnet-50-pytorch/onnx/FP16-INT8/resnet-50-pytorch.xml
|
||||
name: resnet-50-pytorch
|
||||
precision: FP16-INT8
|
||||
framework: onnx
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/mobilenet-v2/caffe/FP16/mobilenet-v2.xml
|
||||
path: ${NPU_MODELS_PKG}/mobilenet-v2/caffe/FP16/mobilenet-v2.xml
|
||||
name: mobilenet-v2
|
||||
precision: FP16
|
||||
framework: caffe
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/mobilenet-v2/caffe/FP16/mobilenet-v2.xml
|
||||
path: ${NPU_MODELS_PKG}/mobilenet-v2/caffe/FP16/mobilenet-v2.xml
|
||||
name: mobilenet-v2
|
||||
precision: FP16
|
||||
framework: caffe
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/mobilenet-v2/caffe/FP16-INT8/mobilenet-v2.xml
|
||||
path: ${NPU_MODELS_PKG}/mobilenet-v2/caffe/FP16-INT8/mobilenet-v2.xml
|
||||
name: mobilenet-v2
|
||||
precision: FP16-INT8
|
||||
framework: caffe
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/mobilenet-v2/caffe/FP16-INT8/mobilenet-v2.xml
|
||||
path: ${NPU_MODELS_PKG}/mobilenet-v2/caffe/FP16-INT8/mobilenet-v2.xml
|
||||
name: mobilenet-v2
|
||||
precision: FP16-INT8
|
||||
framework: caffe
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/faster-rcnn-resnet101-coco-sparse-60-0001/tf/FP16/faster-rcnn-resnet101-coco-sparse-60-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/faster-rcnn-resnet101-coco-sparse-60-0001/tf/FP16/faster-rcnn-resnet101-coco-sparse-60-0001.xml
|
||||
name: faster-rcnn-resnet101-coco-sparse-60-0001
|
||||
precision: FP16
|
||||
framework: tf
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/faster-rcnn-resnet101-coco-sparse-60-0001/tf/FP16/faster-rcnn-resnet101-coco-sparse-60-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/faster-rcnn-resnet101-coco-sparse-60-0001/tf/FP16/faster-rcnn-resnet101-coco-sparse-60-0001.xml
|
||||
name: faster-rcnn-resnet101-coco-sparse-60-0001
|
||||
precision: FP16
|
||||
framework: tf
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/faster-rcnn-resnet101-coco-sparse-60-0001/tf/FP16-INT8/faster-rcnn-resnet101-coco-sparse-60-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/faster-rcnn-resnet101-coco-sparse-60-0001/tf/FP16-INT8/faster-rcnn-resnet101-coco-sparse-60-0001.xml
|
||||
name: faster-rcnn-resnet101-coco-sparse-60-0001
|
||||
precision: FP16-INT8
|
||||
framework: tf
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/faster-rcnn-resnet101-coco-sparse-60-0001/tf/FP16-INT8/faster-rcnn-resnet101-coco-sparse-60-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/faster-rcnn-resnet101-coco-sparse-60-0001/tf/FP16-INT8/faster-rcnn-resnet101-coco-sparse-60-0001.xml
|
||||
name: faster-rcnn-resnet101-coco-sparse-60-0001
|
||||
precision: FP16-INT8
|
||||
framework: tf
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/googlenet-v1/tf/FP16/googlenet-v1.xml
|
||||
path: ${NPU_MODELS_PKG}/googlenet-v1/tf/FP16/googlenet-v1.xml
|
||||
name: googlenet-v1
|
||||
precision: FP16
|
||||
framework: tf
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/googlenet-v1/tf/FP16/googlenet-v1.xml
|
||||
path: ${NPU_MODELS_PKG}/googlenet-v1/tf/FP16/googlenet-v1.xml
|
||||
name: googlenet-v1
|
||||
precision: FP16
|
||||
framework: tf
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/googlenet-v1/tf/FP16-INT8/googlenet-v1.xml
|
||||
path: ${NPU_MODELS_PKG}/googlenet-v1/tf/FP16-INT8/googlenet-v1.xml
|
||||
name: googlenet-v1
|
||||
precision: FP16-INT8
|
||||
framework: tf
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/googlenet-v1/tf/FP16-INT8/googlenet-v1.xml
|
||||
path: ${NPU_MODELS_PKG}/googlenet-v1/tf/FP16-INT8/googlenet-v1.xml
|
||||
name: googlenet-v1
|
||||
precision: FP16-INT8
|
||||
framework: tf
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/googlenet-v3/tf/FP16/googlenet-v3.xml
|
||||
path: ${NPU_MODELS_PKG}/googlenet-v3/tf/FP16/googlenet-v3.xml
|
||||
name: googlenet-v3
|
||||
precision: FP16
|
||||
framework: tf
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/googlenet-v3/tf/FP16/googlenet-v3.xml
|
||||
path: ${NPU_MODELS_PKG}/googlenet-v3/tf/FP16/googlenet-v3.xml
|
||||
name: googlenet-v3
|
||||
precision: FP16
|
||||
framework: tf
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/googlenet-v3/tf/FP16-INT8/googlenet-v3.xml
|
||||
path: ${NPU_MODELS_PKG}/googlenet-v3/tf/FP16-INT8/googlenet-v3.xml
|
||||
name: googlenet-v3
|
||||
precision: FP16-INT8
|
||||
framework: tf
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/googlenet-v3/tf/FP16-INT8/googlenet-v3.xml
|
||||
path: ${NPU_MODELS_PKG}/googlenet-v3/tf/FP16-INT8/googlenet-v3.xml
|
||||
name: googlenet-v3
|
||||
precision: FP16-INT8
|
||||
framework: tf
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/ssd512/caffe/FP16/ssd512.xml
|
||||
path: ${NPU_MODELS_PKG}/ssd512/caffe/FP16/ssd512.xml
|
||||
name: ssd512
|
||||
precision: FP16
|
||||
framework: caffe
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/ssd512/caffe/FP16/ssd512.xml
|
||||
path: ${NPU_MODELS_PKG}/ssd512/caffe/FP16/ssd512.xml
|
||||
name: ssd512
|
||||
precision: FP16
|
||||
framework: caffe
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/ssd512/caffe/FP16-INT8/ssd512.xml
|
||||
path: ${NPU_MODELS_PKG}/ssd512/caffe/FP16-INT8/ssd512.xml
|
||||
name: ssd512
|
||||
precision: FP16-INT8
|
||||
framework: caffe
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/ssd512/caffe/FP16-INT8/ssd512.xml
|
||||
path: ${NPU_MODELS_PKG}/ssd512/caffe/FP16-INT8/ssd512.xml
|
||||
name: ssd512
|
||||
precision: FP16-INT8
|
||||
framework: caffe
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/yolo-v2-ava-0001/tf/FP16/yolo-v2-ava-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/yolo-v2-ava-0001/tf/FP16/yolo-v2-ava-0001.xml
|
||||
name: yolo-v2-ava-0001
|
||||
precision: FP16
|
||||
framework: tf
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/yolo-v2-ava-0001/tf/FP16/yolo-v2-ava-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/yolo-v2-ava-0001/tf/FP16/yolo-v2-ava-0001.xml
|
||||
name: yolo-v2-ava-0001
|
||||
precision: FP16
|
||||
framework: tf
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/yolo-v2-ava-0001/tf/FP16-INT8/yolo-v2-ava-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/yolo-v2-ava-0001/tf/FP16-INT8/yolo-v2-ava-0001.xml
|
||||
name: yolo-v2-ava-0001
|
||||
precision: FP16-INT8
|
||||
framework: tf
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/yolo-v2-ava-0001/tf/FP16-INT8/yolo-v2-ava-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/yolo-v2-ava-0001/tf/FP16-INT8/yolo-v2-ava-0001.xml
|
||||
name: yolo-v2-ava-0001
|
||||
precision: FP16-INT8
|
||||
framework: tf
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/yolo-v2-ava-sparse-35-0001/tf/FP16/yolo-v2-ava-sparse-35-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/yolo-v2-ava-sparse-35-0001/tf/FP16/yolo-v2-ava-sparse-35-0001.xml
|
||||
name: yolo-v2-ava-sparse-35-0001
|
||||
precision: FP16
|
||||
framework: tf
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/yolo-v2-ava-sparse-35-0001/tf/FP16/yolo-v2-ava-sparse-35-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/yolo-v2-ava-sparse-35-0001/tf/FP16/yolo-v2-ava-sparse-35-0001.xml
|
||||
name: yolo-v2-ava-sparse-35-0001
|
||||
precision: FP16
|
||||
framework: tf
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/yolo-v2-ava-sparse-35-0001/tf/FP16-INT8/yolo-v2-ava-sparse-35-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/yolo-v2-ava-sparse-35-0001/tf/FP16-INT8/yolo-v2-ava-sparse-35-0001.xml
|
||||
name: yolo-v2-ava-sparse-35-0001
|
||||
precision: FP16-INT8
|
||||
framework: tf
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/yolo-v2-ava-sparse-35-0001/tf/FP16-INT8/yolo-v2-ava-sparse-35-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/yolo-v2-ava-sparse-35-0001/tf/FP16-INT8/yolo-v2-ava-sparse-35-0001.xml
|
||||
name: yolo-v2-ava-sparse-35-0001
|
||||
precision: FP16-INT8
|
||||
framework: tf
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/yolo-v2-ava-sparse-70-0001/tf/FP16/yolo-v2-ava-sparse-70-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/yolo-v2-ava-sparse-70-0001/tf/FP16/yolo-v2-ava-sparse-70-0001.xml
|
||||
name: yolo-v2-ava-sparse-70-0001
|
||||
precision: FP16
|
||||
framework: tf
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/yolo-v2-ava-sparse-70-0001/tf/FP16/yolo-v2-ava-sparse-70-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/yolo-v2-ava-sparse-70-0001/tf/FP16/yolo-v2-ava-sparse-70-0001.xml
|
||||
name: yolo-v2-ava-sparse-70-0001
|
||||
precision: FP16
|
||||
framework: tf
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/yolo-v2-ava-sparse-70-0001/tf/FP16-INT8/yolo-v2-ava-sparse-70-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/yolo-v2-ava-sparse-70-0001/tf/FP16-INT8/yolo-v2-ava-sparse-70-0001.xml
|
||||
name: yolo-v2-ava-sparse-70-0001
|
||||
precision: FP16-INT8
|
||||
framework: tf
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/yolo-v2-ava-sparse-70-0001/tf/FP16-INT8/yolo-v2-ava-sparse-70-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/yolo-v2-ava-sparse-70-0001/tf/FP16-INT8/yolo-v2-ava-sparse-70-0001.xml
|
||||
name: yolo-v2-ava-sparse-70-0001
|
||||
precision: FP16-INT8
|
||||
framework: tf
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/yolo-v2-tiny-ava-0001/tf/FP16/yolo-v2-tiny-ava-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/yolo-v2-tiny-ava-0001/tf/FP16/yolo-v2-tiny-ava-0001.xml
|
||||
name: yolo-v2-tiny-ava-0001
|
||||
precision: FP16
|
||||
framework: tf
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/yolo-v2-tiny-ava-0001/tf/FP16/yolo-v2-tiny-ava-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/yolo-v2-tiny-ava-0001/tf/FP16/yolo-v2-tiny-ava-0001.xml
|
||||
name: yolo-v2-tiny-ava-0001
|
||||
precision: FP16
|
||||
framework: tf
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/yolo-v2-tiny-ava-0001/tf/FP16-INT8/yolo-v2-tiny-ava-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/yolo-v2-tiny-ava-0001/tf/FP16-INT8/yolo-v2-tiny-ava-0001.xml
|
||||
name: yolo-v2-tiny-ava-0001
|
||||
precision: FP16-INT8
|
||||
framework: tf
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/yolo-v2-tiny-ava-0001/tf/FP16-INT8/yolo-v2-tiny-ava-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/yolo-v2-tiny-ava-0001/tf/FP16-INT8/yolo-v2-tiny-ava-0001.xml
|
||||
name: yolo-v2-tiny-ava-0001
|
||||
precision: FP16-INT8
|
||||
framework: tf
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/yolo-v2-tiny-ava-sparse-30-0001/tf/FP16/yolo-v2-tiny-ava-sparse-30-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/yolo-v2-tiny-ava-sparse-30-0001/tf/FP16/yolo-v2-tiny-ava-sparse-30-0001.xml
|
||||
name: yolo-v2-tiny-ava-sparse-30-0001
|
||||
precision: FP16
|
||||
framework: tf
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/yolo-v2-tiny-ava-sparse-30-0001/tf/FP16/yolo-v2-tiny-ava-sparse-30-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/yolo-v2-tiny-ava-sparse-30-0001/tf/FP16/yolo-v2-tiny-ava-sparse-30-0001.xml
|
||||
name: yolo-v2-tiny-ava-sparse-30-0001
|
||||
precision: FP16
|
||||
framework: tf
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/yolo-v2-tiny-ava-sparse-30-0001/tf/FP16-INT8/yolo-v2-tiny-ava-sparse-30-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/yolo-v2-tiny-ava-sparse-30-0001/tf/FP16-INT8/yolo-v2-tiny-ava-sparse-30-0001.xml
|
||||
name: yolo-v2-tiny-ava-sparse-30-0001
|
||||
precision: FP16-INT8
|
||||
framework: tf
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/yolo-v2-tiny-ava-sparse-30-0001/tf/FP16-INT8/yolo-v2-tiny-ava-sparse-30-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/yolo-v2-tiny-ava-sparse-30-0001/tf/FP16-INT8/yolo-v2-tiny-ava-sparse-30-0001.xml
|
||||
name: yolo-v2-tiny-ava-sparse-30-0001
|
||||
precision: FP16-INT8
|
||||
framework: tf
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/yolo-v2-tiny-ava-sparse-60-0001/tf/FP16/yolo-v2-tiny-ava-sparse-60-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/yolo-v2-tiny-ava-sparse-60-0001/tf/FP16/yolo-v2-tiny-ava-sparse-60-0001.xml
|
||||
name: yolo-v2-tiny-ava-sparse-60-0001
|
||||
precision: FP16
|
||||
framework: tf
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/yolo-v2-tiny-ava-sparse-60-0001/tf/FP16/yolo-v2-tiny-ava-sparse-60-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/yolo-v2-tiny-ava-sparse-60-0001/tf/FP16/yolo-v2-tiny-ava-sparse-60-0001.xml
|
||||
name: yolo-v2-tiny-ava-sparse-60-0001
|
||||
precision: FP16
|
||||
framework: tf
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/yolo-v2-tiny-ava-sparse-60-0001/tf/FP16-INT8/yolo-v2-tiny-ava-sparse-60-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/yolo-v2-tiny-ava-sparse-60-0001/tf/FP16-INT8/yolo-v2-tiny-ava-sparse-60-0001.xml
|
||||
name: yolo-v2-tiny-ava-sparse-60-0001
|
||||
precision: FP16-INT8
|
||||
framework: tf
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/yolo-v2-tiny-ava-sparse-60-0001/tf/FP16-INT8/yolo-v2-tiny-ava-sparse-60-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/yolo-v2-tiny-ava-sparse-60-0001/tf/FP16-INT8/yolo-v2-tiny-ava-sparse-60-0001.xml
|
||||
name: yolo-v2-tiny-ava-sparse-60-0001
|
||||
precision: FP16-INT8
|
||||
framework: tf
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/squeezenet1.1/caffe/FP16/squeezenet1.1.xml
|
||||
path: ${NPU_MODELS_PKG}/squeezenet1.1/caffe/FP16/squeezenet1.1.xml
|
||||
name: squeezenet1.1
|
||||
precision: FP16
|
||||
framework: caffe
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/squeezenet1.1/caffe/FP16/squeezenet1.1.xml
|
||||
path: ${NPU_MODELS_PKG}/squeezenet1.1/caffe/FP16/squeezenet1.1.xml
|
||||
name: squeezenet1.1
|
||||
precision: FP16
|
||||
framework: caffe
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/squeezenet1.1/caffe/FP16-INT8/squeezenet1.1.xml
|
||||
path: ${NPU_MODELS_PKG}/squeezenet1.1/caffe/FP16-INT8/squeezenet1.1.xml
|
||||
name: squeezenet1.1
|
||||
precision: FP16-INT8
|
||||
framework: caffe
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/squeezenet1.1/caffe/FP16-INT8/squeezenet1.1.xml
|
||||
path: ${NPU_MODELS_PKG}/squeezenet1.1/caffe/FP16-INT8/squeezenet1.1.xml
|
||||
name: squeezenet1.1
|
||||
precision: FP16-INT8
|
||||
framework: caffe
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/icnet-camvid-ava-0001/tf/FP16/icnet-camvid-ava-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/icnet-camvid-ava-0001/tf/FP16/icnet-camvid-ava-0001.xml
|
||||
name: icnet-camvid-ava-0001
|
||||
precision: FP16
|
||||
framework: tf
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/icnet-camvid-ava-0001/tf/FP16/icnet-camvid-ava-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/icnet-camvid-ava-0001/tf/FP16/icnet-camvid-ava-0001.xml
|
||||
name: icnet-camvid-ava-0001
|
||||
precision: FP16
|
||||
framework: tf
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/icnet-camvid-ava-0001/tf/FP16-INT8/icnet-camvid-ava-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/icnet-camvid-ava-0001/tf/FP16-INT8/icnet-camvid-ava-0001.xml
|
||||
name: icnet-camvid-ava-0001
|
||||
precision: FP16-INT8
|
||||
framework: tf
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/icnet-camvid-ava-0001/tf/FP16-INT8/icnet-camvid-ava-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/icnet-camvid-ava-0001/tf/FP16-INT8/icnet-camvid-ava-0001.xml
|
||||
name: icnet-camvid-ava-0001
|
||||
precision: FP16-INT8
|
||||
framework: tf
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/icnet-camvid-ava-sparse-30-0001/tf/FP16/icnet-camvid-ava-sparse-30-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/icnet-camvid-ava-sparse-30-0001/tf/FP16/icnet-camvid-ava-sparse-30-0001.xml
|
||||
name: icnet-camvid-ava-sparse-30-0001
|
||||
precision: FP16
|
||||
framework: tf
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/icnet-camvid-ava-sparse-30-0001/tf/FP16/icnet-camvid-ava-sparse-30-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/icnet-camvid-ava-sparse-30-0001/tf/FP16/icnet-camvid-ava-sparse-30-0001.xml
|
||||
name: icnet-camvid-ava-sparse-30-0001
|
||||
precision: FP16
|
||||
framework: tf
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/icnet-camvid-ava-sparse-30-0001/tf/FP16-INT8/icnet-camvid-ava-sparse-30-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/icnet-camvid-ava-sparse-30-0001/tf/FP16-INT8/icnet-camvid-ava-sparse-30-0001.xml
|
||||
name: icnet-camvid-ava-sparse-30-0001
|
||||
precision: FP16-INT8
|
||||
framework: tf
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/icnet-camvid-ava-sparse-30-0001/tf/FP16-INT8/icnet-camvid-ava-sparse-30-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/icnet-camvid-ava-sparse-30-0001/tf/FP16-INT8/icnet-camvid-ava-sparse-30-0001.xml
|
||||
name: icnet-camvid-ava-sparse-30-0001
|
||||
precision: FP16-INT8
|
||||
framework: tf
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/icnet-camvid-ava-sparse-60-0001/tf/FP16/icnet-camvid-ava-sparse-60-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/icnet-camvid-ava-sparse-60-0001/tf/FP16/icnet-camvid-ava-sparse-60-0001.xml
|
||||
name: icnet-camvid-ava-sparse-60-0001
|
||||
precision: FP16
|
||||
framework: tf
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/icnet-camvid-ava-sparse-60-0001/tf/FP16/icnet-camvid-ava-sparse-60-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/icnet-camvid-ava-sparse-60-0001/tf/FP16/icnet-camvid-ava-sparse-60-0001.xml
|
||||
name: icnet-camvid-ava-sparse-60-0001
|
||||
precision: FP16
|
||||
framework: tf
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/icnet-camvid-ava-sparse-60-0001/tf/FP16-INT8/icnet-camvid-ava-sparse-60-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/icnet-camvid-ava-sparse-60-0001/tf/FP16-INT8/icnet-camvid-ava-sparse-60-0001.xml
|
||||
name: icnet-camvid-ava-sparse-60-0001
|
||||
precision: FP16-INT8
|
||||
framework: tf
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/icnet-camvid-ava-sparse-60-0001/tf/FP16-INT8/icnet-camvid-ava-sparse-60-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/icnet-camvid-ava-sparse-60-0001/tf/FP16-INT8/icnet-camvid-ava-sparse-60-0001.xml
|
||||
name: icnet-camvid-ava-sparse-60-0001
|
||||
precision: FP16-INT8
|
||||
framework: tf
|
||||
@@ -1,7 +1,7 @@
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/resnet-50-pytorch/onnx/FP16/resnet-50-pytorch.xml
|
||||
path: ${NPU_MODELS_PKG}/resnet-50-pytorch/onnx/FP16/resnet-50-pytorch.xml
|
||||
name: resnet-50-pytorch
|
||||
precision: FP16
|
||||
framework: onnx
|
||||
@@ -9,7 +9,7 @@
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/resnet-50-pytorch/onnx/FP16/resnet-50-pytorch.xml
|
||||
path: ${NPU_MODELS_PKG}/resnet-50-pytorch/onnx/FP16/resnet-50-pytorch.xml
|
||||
name: resnet-50-pytorch
|
||||
precision: FP16
|
||||
framework: onnx
|
||||
@@ -17,7 +17,7 @@
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/resnet-50-pytorch/onnx/FP16-INT8/resnet-50-pytorch.xml
|
||||
path: ${NPU_MODELS_PKG}/resnet-50-pytorch/onnx/FP16-INT8/resnet-50-pytorch.xml
|
||||
name: resnet-50-pytorch
|
||||
precision: FP16-INT8
|
||||
framework: onnx
|
||||
@@ -25,7 +25,7 @@
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/resnet-50-pytorch/onnx/FP16-INT8/resnet-50-pytorch.xml
|
||||
path: ${NPU_MODELS_PKG}/resnet-50-pytorch/onnx/FP16-INT8/resnet-50-pytorch.xml
|
||||
name: resnet-50-pytorch
|
||||
precision: FP16-INT8
|
||||
framework: onnx
|
||||
@@ -33,7 +33,7 @@
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/mobilenet-v2/caffe/FP16/mobilenet-v2.xml
|
||||
path: ${NPU_MODELS_PKG}/mobilenet-v2/caffe/FP16/mobilenet-v2.xml
|
||||
name: mobilenet-v2
|
||||
precision: FP16
|
||||
framework: caffe
|
||||
@@ -41,7 +41,7 @@
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/mobilenet-v2/caffe/FP16/mobilenet-v2.xml
|
||||
path: ${NPU_MODELS_PKG}/mobilenet-v2/caffe/FP16/mobilenet-v2.xml
|
||||
name: mobilenet-v2
|
||||
precision: FP16
|
||||
framework: caffe
|
||||
@@ -49,7 +49,7 @@
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/mobilenet-v2/caffe/FP16-INT8/mobilenet-v2.xml
|
||||
path: ${NPU_MODELS_PKG}/mobilenet-v2/caffe/FP16-INT8/mobilenet-v2.xml
|
||||
name: mobilenet-v2
|
||||
precision: FP16-INT8
|
||||
framework: caffe
|
||||
@@ -57,7 +57,7 @@
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/mobilenet-v2/caffe/FP16-INT8/mobilenet-v2.xml
|
||||
path: ${NPU_MODELS_PKG}/mobilenet-v2/caffe/FP16-INT8/mobilenet-v2.xml
|
||||
name: mobilenet-v2
|
||||
precision: FP16-INT8
|
||||
framework: caffe
|
||||
@@ -65,7 +65,7 @@
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/faster-rcnn-resnet101-coco-sparse-60-0001/tf/FP16/faster-rcnn-resnet101-coco-sparse-60-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/faster-rcnn-resnet101-coco-sparse-60-0001/tf/FP16/faster-rcnn-resnet101-coco-sparse-60-0001.xml
|
||||
name: faster-rcnn-resnet101-coco-sparse-60-0001
|
||||
precision: FP16
|
||||
framework: tf
|
||||
@@ -73,7 +73,7 @@
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/faster-rcnn-resnet101-coco-sparse-60-0001/tf/FP16/faster-rcnn-resnet101-coco-sparse-60-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/faster-rcnn-resnet101-coco-sparse-60-0001/tf/FP16/faster-rcnn-resnet101-coco-sparse-60-0001.xml
|
||||
name: faster-rcnn-resnet101-coco-sparse-60-0001
|
||||
precision: FP16
|
||||
framework: tf
|
||||
@@ -81,7 +81,7 @@
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/faster-rcnn-resnet101-coco-sparse-60-0001/tf/FP16-INT8/faster-rcnn-resnet101-coco-sparse-60-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/faster-rcnn-resnet101-coco-sparse-60-0001/tf/FP16-INT8/faster-rcnn-resnet101-coco-sparse-60-0001.xml
|
||||
name: faster-rcnn-resnet101-coco-sparse-60-0001
|
||||
precision: FP16-INT8
|
||||
framework: tf
|
||||
@@ -89,7 +89,7 @@
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/faster-rcnn-resnet101-coco-sparse-60-0001/tf/FP16-INT8/faster-rcnn-resnet101-coco-sparse-60-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/faster-rcnn-resnet101-coco-sparse-60-0001/tf/FP16-INT8/faster-rcnn-resnet101-coco-sparse-60-0001.xml
|
||||
name: faster-rcnn-resnet101-coco-sparse-60-0001
|
||||
precision: FP16-INT8
|
||||
framework: tf
|
||||
@@ -97,7 +97,7 @@
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/googlenet-v1/tf/FP16/googlenet-v1.xml
|
||||
path: ${NPU_MODELS_PKG}/googlenet-v1/tf/FP16/googlenet-v1.xml
|
||||
name: googlenet-v1
|
||||
precision: FP16
|
||||
framework: tf
|
||||
@@ -105,7 +105,7 @@
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/googlenet-v1/tf/FP16/googlenet-v1.xml
|
||||
path: ${NPU_MODELS_PKG}/googlenet-v1/tf/FP16/googlenet-v1.xml
|
||||
name: googlenet-v1
|
||||
precision: FP16
|
||||
framework: tf
|
||||
@@ -113,7 +113,7 @@
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/googlenet-v1/tf/FP16-INT8/googlenet-v1.xml
|
||||
path: ${NPU_MODELS_PKG}/googlenet-v1/tf/FP16-INT8/googlenet-v1.xml
|
||||
name: googlenet-v1
|
||||
precision: FP16-INT8
|
||||
framework: tf
|
||||
@@ -121,7 +121,7 @@
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/googlenet-v1/tf/FP16-INT8/googlenet-v1.xml
|
||||
path: ${NPU_MODELS_PKG}/googlenet-v1/tf/FP16-INT8/googlenet-v1.xml
|
||||
name: googlenet-v1
|
||||
precision: FP16-INT8
|
||||
framework: tf
|
||||
@@ -129,7 +129,7 @@
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/googlenet-v3/tf/FP16/googlenet-v3.xml
|
||||
path: ${NPU_MODELS_PKG}/googlenet-v3/tf/FP16/googlenet-v3.xml
|
||||
name: googlenet-v3
|
||||
precision: FP16
|
||||
framework: tf
|
||||
@@ -137,7 +137,7 @@
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/googlenet-v3/tf/FP16/googlenet-v3.xml
|
||||
path: ${NPU_MODELS_PKG}/googlenet-v3/tf/FP16/googlenet-v3.xml
|
||||
name: googlenet-v3
|
||||
precision: FP16
|
||||
framework: tf
|
||||
@@ -145,7 +145,7 @@
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/googlenet-v3/tf/FP16-INT8/googlenet-v3.xml
|
||||
path: ${NPU_MODELS_PKG}/googlenet-v3/tf/FP16-INT8/googlenet-v3.xml
|
||||
name: googlenet-v3
|
||||
precision: FP16-INT8
|
||||
framework: tf
|
||||
@@ -153,7 +153,7 @@
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/googlenet-v3/tf/FP16-INT8/googlenet-v3.xml
|
||||
path: ${NPU_MODELS_PKG}/googlenet-v3/tf/FP16-INT8/googlenet-v3.xml
|
||||
name: googlenet-v3
|
||||
precision: FP16-INT8
|
||||
framework: tf
|
||||
@@ -161,7 +161,7 @@
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/ssd512/caffe/FP16/ssd512.xml
|
||||
path: ${NPU_MODELS_PKG}/ssd512/caffe/FP16/ssd512.xml
|
||||
name: ssd512
|
||||
precision: FP16
|
||||
framework: caffe
|
||||
@@ -169,7 +169,7 @@
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/ssd512/caffe/FP16/ssd512.xml
|
||||
path: ${NPU_MODELS_PKG}/ssd512/caffe/FP16/ssd512.xml
|
||||
name: ssd512
|
||||
precision: FP16
|
||||
framework: caffe
|
||||
@@ -177,7 +177,7 @@
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/ssd512/caffe/FP16-INT8/ssd512.xml
|
||||
path: ${NPU_MODELS_PKG}/ssd512/caffe/FP16-INT8/ssd512.xml
|
||||
name: ssd512
|
||||
precision: FP16-INT8
|
||||
framework: caffe
|
||||
@@ -185,7 +185,7 @@
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/ssd512/caffe/FP16-INT8/ssd512.xml
|
||||
path: ${NPU_MODELS_PKG}/ssd512/caffe/FP16-INT8/ssd512.xml
|
||||
name: ssd512
|
||||
precision: FP16-INT8
|
||||
framework: caffe
|
||||
@@ -193,7 +193,7 @@
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/yolo-v2-ava-0001/tf/FP16/yolo-v2-ava-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/yolo-v2-ava-0001/tf/FP16/yolo-v2-ava-0001.xml
|
||||
name: yolo-v2-ava-0001
|
||||
precision: FP16
|
||||
framework: tf
|
||||
@@ -201,7 +201,7 @@
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/yolo-v2-ava-0001/tf/FP16/yolo-v2-ava-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/yolo-v2-ava-0001/tf/FP16/yolo-v2-ava-0001.xml
|
||||
name: yolo-v2-ava-0001
|
||||
precision: FP16
|
||||
framework: tf
|
||||
@@ -209,7 +209,7 @@
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/yolo-v2-ava-0001/tf/FP16-INT8/yolo-v2-ava-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/yolo-v2-ava-0001/tf/FP16-INT8/yolo-v2-ava-0001.xml
|
||||
name: yolo-v2-ava-0001
|
||||
precision: FP16-INT8
|
||||
framework: tf
|
||||
@@ -217,7 +217,7 @@
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/yolo-v2-ava-0001/tf/FP16-INT8/yolo-v2-ava-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/yolo-v2-ava-0001/tf/FP16-INT8/yolo-v2-ava-0001.xml
|
||||
name: yolo-v2-ava-0001
|
||||
precision: FP16-INT8
|
||||
framework: tf
|
||||
@@ -225,7 +225,7 @@
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/yolo-v2-ava-sparse-35-0001/tf/FP16/yolo-v2-ava-sparse-35-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/yolo-v2-ava-sparse-35-0001/tf/FP16/yolo-v2-ava-sparse-35-0001.xml
|
||||
name: yolo-v2-ava-sparse-35-0001
|
||||
precision: FP16
|
||||
framework: tf
|
||||
@@ -233,7 +233,7 @@
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/yolo-v2-ava-sparse-35-0001/tf/FP16/yolo-v2-ava-sparse-35-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/yolo-v2-ava-sparse-35-0001/tf/FP16/yolo-v2-ava-sparse-35-0001.xml
|
||||
name: yolo-v2-ava-sparse-35-0001
|
||||
precision: FP16
|
||||
framework: tf
|
||||
@@ -241,7 +241,7 @@
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/yolo-v2-ava-sparse-35-0001/tf/FP16-INT8/yolo-v2-ava-sparse-35-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/yolo-v2-ava-sparse-35-0001/tf/FP16-INT8/yolo-v2-ava-sparse-35-0001.xml
|
||||
name: yolo-v2-ava-sparse-35-0001
|
||||
precision: FP16-INT8
|
||||
framework: tf
|
||||
@@ -249,7 +249,7 @@
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/yolo-v2-ava-sparse-35-0001/tf/FP16-INT8/yolo-v2-ava-sparse-35-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/yolo-v2-ava-sparse-35-0001/tf/FP16-INT8/yolo-v2-ava-sparse-35-0001.xml
|
||||
name: yolo-v2-ava-sparse-35-0001
|
||||
precision: FP16-INT8
|
||||
framework: tf
|
||||
@@ -257,7 +257,7 @@
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/yolo-v2-ava-sparse-70-0001/tf/FP16/yolo-v2-ava-sparse-70-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/yolo-v2-ava-sparse-70-0001/tf/FP16/yolo-v2-ava-sparse-70-0001.xml
|
||||
name: yolo-v2-ava-sparse-70-0001
|
||||
precision: FP16
|
||||
framework: tf
|
||||
@@ -265,7 +265,7 @@
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/yolo-v2-ava-sparse-70-0001/tf/FP16/yolo-v2-ava-sparse-70-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/yolo-v2-ava-sparse-70-0001/tf/FP16/yolo-v2-ava-sparse-70-0001.xml
|
||||
name: yolo-v2-ava-sparse-70-0001
|
||||
precision: FP16
|
||||
framework: tf
|
||||
@@ -273,7 +273,7 @@
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/yolo-v2-ava-sparse-70-0001/tf/FP16-INT8/yolo-v2-ava-sparse-70-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/yolo-v2-ava-sparse-70-0001/tf/FP16-INT8/yolo-v2-ava-sparse-70-0001.xml
|
||||
name: yolo-v2-ava-sparse-70-0001
|
||||
precision: FP16-INT8
|
||||
framework: tf
|
||||
@@ -281,7 +281,7 @@
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/yolo-v2-ava-sparse-70-0001/tf/FP16-INT8/yolo-v2-ava-sparse-70-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/yolo-v2-ava-sparse-70-0001/tf/FP16-INT8/yolo-v2-ava-sparse-70-0001.xml
|
||||
name: yolo-v2-ava-sparse-70-0001
|
||||
precision: FP16-INT8
|
||||
framework: tf
|
||||
@@ -289,7 +289,7 @@
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/yolo-v2-tiny-ava-0001/tf/FP16/yolo-v2-tiny-ava-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/yolo-v2-tiny-ava-0001/tf/FP16/yolo-v2-tiny-ava-0001.xml
|
||||
name: yolo-v2-tiny-ava-0001
|
||||
precision: FP16
|
||||
framework: tf
|
||||
@@ -297,7 +297,7 @@
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/yolo-v2-tiny-ava-0001/tf/FP16/yolo-v2-tiny-ava-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/yolo-v2-tiny-ava-0001/tf/FP16/yolo-v2-tiny-ava-0001.xml
|
||||
name: yolo-v2-tiny-ava-0001
|
||||
precision: FP16
|
||||
framework: tf
|
||||
@@ -305,7 +305,7 @@
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/yolo-v2-tiny-ava-0001/tf/FP16-INT8/yolo-v2-tiny-ava-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/yolo-v2-tiny-ava-0001/tf/FP16-INT8/yolo-v2-tiny-ava-0001.xml
|
||||
name: yolo-v2-tiny-ava-0001
|
||||
precision: FP16-INT8
|
||||
framework: tf
|
||||
@@ -313,7 +313,7 @@
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/yolo-v2-tiny-ava-0001/tf/FP16-INT8/yolo-v2-tiny-ava-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/yolo-v2-tiny-ava-0001/tf/FP16-INT8/yolo-v2-tiny-ava-0001.xml
|
||||
name: yolo-v2-tiny-ava-0001
|
||||
precision: FP16-INT8
|
||||
framework: tf
|
||||
@@ -321,7 +321,7 @@
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/yolo-v2-tiny-ava-sparse-30-0001/tf/FP16/yolo-v2-tiny-ava-sparse-30-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/yolo-v2-tiny-ava-sparse-30-0001/tf/FP16/yolo-v2-tiny-ava-sparse-30-0001.xml
|
||||
name: yolo-v2-tiny-ava-sparse-30-0001
|
||||
precision: FP16
|
||||
framework: tf
|
||||
@@ -329,7 +329,7 @@
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/yolo-v2-tiny-ava-sparse-30-0001/tf/FP16/yolo-v2-tiny-ava-sparse-30-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/yolo-v2-tiny-ava-sparse-30-0001/tf/FP16/yolo-v2-tiny-ava-sparse-30-0001.xml
|
||||
name: yolo-v2-tiny-ava-sparse-30-0001
|
||||
precision: FP16
|
||||
framework: tf
|
||||
@@ -337,7 +337,7 @@
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/yolo-v2-tiny-ava-sparse-30-0001/tf/FP16-INT8/yolo-v2-tiny-ava-sparse-30-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/yolo-v2-tiny-ava-sparse-30-0001/tf/FP16-INT8/yolo-v2-tiny-ava-sparse-30-0001.xml
|
||||
name: yolo-v2-tiny-ava-sparse-30-0001
|
||||
precision: FP16-INT8
|
||||
framework: tf
|
||||
@@ -345,7 +345,7 @@
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/yolo-v2-tiny-ava-sparse-30-0001/tf/FP16-INT8/yolo-v2-tiny-ava-sparse-30-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/yolo-v2-tiny-ava-sparse-30-0001/tf/FP16-INT8/yolo-v2-tiny-ava-sparse-30-0001.xml
|
||||
name: yolo-v2-tiny-ava-sparse-30-0001
|
||||
precision: FP16-INT8
|
||||
framework: tf
|
||||
@@ -353,7 +353,7 @@
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/yolo-v2-tiny-ava-sparse-60-0001/tf/FP16/yolo-v2-tiny-ava-sparse-60-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/yolo-v2-tiny-ava-sparse-60-0001/tf/FP16/yolo-v2-tiny-ava-sparse-60-0001.xml
|
||||
name: yolo-v2-tiny-ava-sparse-60-0001
|
||||
precision: FP16
|
||||
framework: tf
|
||||
@@ -361,7 +361,7 @@
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/yolo-v2-tiny-ava-sparse-60-0001/tf/FP16/yolo-v2-tiny-ava-sparse-60-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/yolo-v2-tiny-ava-sparse-60-0001/tf/FP16/yolo-v2-tiny-ava-sparse-60-0001.xml
|
||||
name: yolo-v2-tiny-ava-sparse-60-0001
|
||||
precision: FP16
|
||||
framework: tf
|
||||
@@ -369,7 +369,7 @@
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/yolo-v2-tiny-ava-sparse-60-0001/tf/FP16-INT8/yolo-v2-tiny-ava-sparse-60-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/yolo-v2-tiny-ava-sparse-60-0001/tf/FP16-INT8/yolo-v2-tiny-ava-sparse-60-0001.xml
|
||||
name: yolo-v2-tiny-ava-sparse-60-0001
|
||||
precision: FP16-INT8
|
||||
framework: tf
|
||||
@@ -377,7 +377,7 @@
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/yolo-v2-tiny-ava-sparse-60-0001/tf/FP16-INT8/yolo-v2-tiny-ava-sparse-60-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/yolo-v2-tiny-ava-sparse-60-0001/tf/FP16-INT8/yolo-v2-tiny-ava-sparse-60-0001.xml
|
||||
name: yolo-v2-tiny-ava-sparse-60-0001
|
||||
precision: FP16-INT8
|
||||
framework: tf
|
||||
@@ -385,7 +385,7 @@
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/squeezenet1.1/caffe/FP16/squeezenet1.1.xml
|
||||
path: ${NPU_MODELS_PKG}/squeezenet1.1/caffe/FP16/squeezenet1.1.xml
|
||||
name: squeezenet1.1
|
||||
precision: FP16
|
||||
framework: caffe
|
||||
@@ -393,7 +393,7 @@
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/squeezenet1.1/caffe/FP16/squeezenet1.1.xml
|
||||
path: ${NPU_MODELS_PKG}/squeezenet1.1/caffe/FP16/squeezenet1.1.xml
|
||||
name: squeezenet1.1
|
||||
precision: FP16
|
||||
framework: caffe
|
||||
@@ -401,7 +401,7 @@
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/squeezenet1.1/caffe/FP16-INT8/squeezenet1.1.xml
|
||||
path: ${NPU_MODELS_PKG}/squeezenet1.1/caffe/FP16-INT8/squeezenet1.1.xml
|
||||
name: squeezenet1.1
|
||||
precision: FP16-INT8
|
||||
framework: caffe
|
||||
@@ -409,7 +409,7 @@
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/squeezenet1.1/caffe/FP16-INT8/squeezenet1.1.xml
|
||||
path: ${NPU_MODELS_PKG}/squeezenet1.1/caffe/FP16-INT8/squeezenet1.1.xml
|
||||
name: squeezenet1.1
|
||||
precision: FP16-INT8
|
||||
framework: caffe
|
||||
@@ -417,7 +417,7 @@
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/icnet-camvid-ava-0001/tf/FP16/icnet-camvid-ava-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/icnet-camvid-ava-0001/tf/FP16/icnet-camvid-ava-0001.xml
|
||||
name: icnet-camvid-ava-0001
|
||||
precision: FP16
|
||||
framework: tf
|
||||
@@ -425,7 +425,7 @@
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/icnet-camvid-ava-0001/tf/FP16/icnet-camvid-ava-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/icnet-camvid-ava-0001/tf/FP16/icnet-camvid-ava-0001.xml
|
||||
name: icnet-camvid-ava-0001
|
||||
precision: FP16
|
||||
framework: tf
|
||||
@@ -433,7 +433,7 @@
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/icnet-camvid-ava-0001/tf/FP16-INT8/icnet-camvid-ava-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/icnet-camvid-ava-0001/tf/FP16-INT8/icnet-camvid-ava-0001.xml
|
||||
name: icnet-camvid-ava-0001
|
||||
precision: FP16-INT8
|
||||
framework: tf
|
||||
@@ -441,7 +441,7 @@
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/icnet-camvid-ava-0001/tf/FP16-INT8/icnet-camvid-ava-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/icnet-camvid-ava-0001/tf/FP16-INT8/icnet-camvid-ava-0001.xml
|
||||
name: icnet-camvid-ava-0001
|
||||
precision: FP16-INT8
|
||||
framework: tf
|
||||
@@ -449,7 +449,7 @@
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/icnet-camvid-ava-sparse-30-0001/tf/FP16/icnet-camvid-ava-sparse-30-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/icnet-camvid-ava-sparse-30-0001/tf/FP16/icnet-camvid-ava-sparse-30-0001.xml
|
||||
name: icnet-camvid-ava-sparse-30-0001
|
||||
precision: FP16
|
||||
framework: tf
|
||||
@@ -457,7 +457,7 @@
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/icnet-camvid-ava-sparse-30-0001/tf/FP16/icnet-camvid-ava-sparse-30-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/icnet-camvid-ava-sparse-30-0001/tf/FP16/icnet-camvid-ava-sparse-30-0001.xml
|
||||
name: icnet-camvid-ava-sparse-30-0001
|
||||
precision: FP16
|
||||
framework: tf
|
||||
@@ -465,7 +465,7 @@
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/icnet-camvid-ava-sparse-30-0001/tf/FP16-INT8/icnet-camvid-ava-sparse-30-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/icnet-camvid-ava-sparse-30-0001/tf/FP16-INT8/icnet-camvid-ava-sparse-30-0001.xml
|
||||
name: icnet-camvid-ava-sparse-30-0001
|
||||
precision: FP16-INT8
|
||||
framework: tf
|
||||
@@ -473,7 +473,7 @@
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/icnet-camvid-ava-sparse-30-0001/tf/FP16-INT8/icnet-camvid-ava-sparse-30-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/icnet-camvid-ava-sparse-30-0001/tf/FP16-INT8/icnet-camvid-ava-sparse-30-0001.xml
|
||||
name: icnet-camvid-ava-sparse-30-0001
|
||||
precision: FP16-INT8
|
||||
framework: tf
|
||||
@@ -481,7 +481,7 @@
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/icnet-camvid-ava-sparse-60-0001/tf/FP16/icnet-camvid-ava-sparse-60-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/icnet-camvid-ava-sparse-60-0001/tf/FP16/icnet-camvid-ava-sparse-60-0001.xml
|
||||
name: icnet-camvid-ava-sparse-60-0001
|
||||
precision: FP16
|
||||
framework: tf
|
||||
@@ -489,7 +489,7 @@
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/icnet-camvid-ava-sparse-60-0001/tf/FP16/icnet-camvid-ava-sparse-60-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/icnet-camvid-ava-sparse-60-0001/tf/FP16/icnet-camvid-ava-sparse-60-0001.xml
|
||||
name: icnet-camvid-ava-sparse-60-0001
|
||||
precision: FP16
|
||||
framework: tf
|
||||
@@ -497,7 +497,7 @@
|
||||
- device:
|
||||
name: CPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/icnet-camvid-ava-sparse-60-0001/tf/FP16-INT8/icnet-camvid-ava-sparse-60-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/icnet-camvid-ava-sparse-60-0001/tf/FP16-INT8/icnet-camvid-ava-sparse-60-0001.xml
|
||||
name: icnet-camvid-ava-sparse-60-0001
|
||||
precision: FP16-INT8
|
||||
framework: tf
|
||||
@@ -505,7 +505,7 @@
|
||||
- device:
|
||||
name: GPU
|
||||
model:
|
||||
path: ${VPUX_MODELS_PKG}/icnet-camvid-ava-sparse-60-0001/tf/FP16-INT8/icnet-camvid-ava-sparse-60-0001.xml
|
||||
path: ${NPU_MODELS_PKG}/icnet-camvid-ava-sparse-60-0001/tf/FP16-INT8/icnet-camvid-ava-sparse-60-0001.xml
|
||||
name: icnet-camvid-ava-sparse-60-0001
|
||||
precision: FP16-INT8
|
||||
framework: tf
|
||||
|
||||
@@ -43,7 +43,7 @@ def test_timetest(instance, executable, niter, cl_cache_dir, model_cache, model_
|
||||
:param niter: number of times to run executable
|
||||
:param cl_cache_dir: directory to store OpenCL cache
|
||||
:param cpu_cache: flag to enable model CPU cache
|
||||
:param vpu_compiler: flag to change VPUX compiler type
|
||||
:param npu_compiler: flag to change NPU compiler type
|
||||
:param perf_hint: performance hint (optimize device for latency or throughput settings)
|
||||
:param model_cache_dir: directory to store IE model cache
|
||||
:param test_info: custom `test_info` field of built-in `request` pytest fixture
|
||||
|
||||
4
thirdparty/CMakeLists.txt
vendored
4
thirdparty/CMakeLists.txt
vendored
@@ -600,7 +600,7 @@ endif()
|
||||
#
|
||||
|
||||
if(ENABLE_SAMPLES)
|
||||
# Note: VPUX requires 3.9.0 version, because it contains 'nlohmann::ordered_json'
|
||||
# Note: NPU requires 3.9.0 version, because it contains 'nlohmann::ordered_json'
|
||||
find_package(nlohmann_json 3.9.0 QUIET)
|
||||
if(nlohmann_json_FOUND)
|
||||
# conan creates imported target nlohmann_json::nlohmann_json
|
||||
@@ -610,7 +610,7 @@ if(ENABLE_SAMPLES)
|
||||
else()
|
||||
add_subdirectory(json)
|
||||
|
||||
# this is required only because of VPUX plugin reused this
|
||||
# this is required only because of NPU plugin reused this
|
||||
openvino_developer_export_targets(COMPONENT openvino_common TARGETS nlohmann_json)
|
||||
|
||||
# for nlohmann library versions older than v3.0.0
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
# Copyright (C) 2018-2023 Intel Corporation
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
VPUX_DEVICE_NAME = 'VPUX'
|
||||
NPU_DEVICE_NAME = 'NPU'
|
||||
CPU_DEVICE_NAME = 'CPU'
|
||||
GPU_DEVICE_NAME = 'GPU'
|
||||
HETERO_DEVICE_NAME = 'HETERO'
|
||||
@@ -22,7 +22,7 @@ BINARY_EXTENSIONS = ['.bin']
|
||||
DEVICE_DURATION_IN_SECS = {
|
||||
CPU_DEVICE_NAME: 60,
|
||||
GPU_DEVICE_NAME: 60,
|
||||
VPUX_DEVICE_NAME: 60,
|
||||
NPU_DEVICE_NAME: 60,
|
||||
GNA_DEVICE_NAME: 60,
|
||||
UNKNOWN_DEVICE_TYPE: 120
|
||||
}
|
||||
|
||||
@@ -353,9 +353,9 @@ bool isFP32(const ov::element::Type& type) {
|
||||
static void setDefaultIO(ov::preprocess::PrePostProcessor& preprocessor,
|
||||
const std::vector<ov::Output<ov::Node>>& inputs,
|
||||
const std::vector<ov::Output<ov::Node>>& outputs) {
|
||||
const bool isVPUX = FLAGS_d.find("VPUX") != std::string::npos;
|
||||
const bool isNPU = FLAGS_d.find("NPU") != std::string::npos;
|
||||
|
||||
if (isVPUX) {
|
||||
if (isNPU) {
|
||||
for (size_t i = 0; i < inputs.size(); i++) {
|
||||
preprocessor.input(i).tensor().set_element_type(ov::element::u8);
|
||||
}
|
||||
@@ -622,9 +622,9 @@ bool isFloat(InferenceEngine::Precision precision) {
|
||||
}
|
||||
|
||||
static void setDefaultIO(InferenceEngine::CNNNetwork& network) {
|
||||
const bool isVPUX = FLAGS_d.find("VPUX") != std::string::npos;
|
||||
const bool isNPU = FLAGS_d.find("NPU") != std::string::npos;
|
||||
|
||||
if (isVPUX) {
|
||||
if (isNPU) {
|
||||
const InferenceEngine::Precision u8 = InferenceEngine::Precision::U8;
|
||||
const InferenceEngine::Precision fp32 = InferenceEngine::Precision::FP32;
|
||||
|
||||
|
||||
@@ -54,7 +54,7 @@ size_t InputInfo::depth() const {
|
||||
} // namespace benchmark_app
|
||||
|
||||
uint32_t deviceDefaultDeviceDurationInSeconds(const std::string& device) {
|
||||
static const std::map<std::string, uint32_t> deviceDefaultDurationInSeconds {{"CPU", 60}, {"GPU", 60}, {"VPUX", 60},
|
||||
static const std::map<std::string, uint32_t> deviceDefaultDurationInSeconds {{"CPU", 60}, {"GPU", 60}, {"NPU", 60},
|
||||
{"UNKNOWN", 120}};
|
||||
uint32_t duration = 0;
|
||||
for (const auto& deviceDurationInSeconds : deviceDefaultDurationInSeconds) {
|
||||
|
||||
@@ -13,7 +13,7 @@ Post-Training Optimization Tool includes standalone command-line tool and Python
|
||||
* Per-channel quantization for Convolutional and Fully-Connected layers.
|
||||
* Multiple domains: Computer Vision, Recommendation Systems.
|
||||
* Ability to implement custom calibration pipeline via supported [API](openvino/tools/pot/api/README.md).
|
||||
* Compression for different HW targets such as CPU, GPU, VPU.
|
||||
* Compression for different HW targets such as CPU, GPU, NPU.
|
||||
* Post-training sparsity.
|
||||
|
||||
## Usage
|
||||
|
||||
@@ -14,7 +14,7 @@ the fastest and easiest way to get a quantized model. It requires only some unan
|
||||
|
||||
.. note::
|
||||
|
||||
POT uses inference on the CPU during model optimization. It means that ability to infer the original floating-point model is essential for model optimization. In case of the 8-bit quantization, it is recommended to run POT on the same CPU architecture when optimizing for CPU or VNNI-based CPU when quantizing for a non-CPU device, such as GPU, VPU, or GNA. It should help to avoid the impact of the :doc:`saturation issue <pot_saturation_issue>` that occurs on AVX and SSE-based CPU devices.
|
||||
POT uses inference on the CPU during model optimization. It means that ability to infer the original floating-point model is essential for model optimization. In case of the 8-bit quantization, it is recommended to run POT on the same CPU architecture when optimizing for CPU or VNNI-based CPU when quantizing for a non-CPU device, such as GPU, NPU, or GNA. It should help to avoid the impact of the :doc:`saturation issue <pot_saturation_issue>` that occurs on AVX and SSE-based CPU devices.
|
||||
|
||||
|
||||
Improving accuracy after the Default Quantization
|
||||
@@ -32,7 +32,7 @@ Parameters of the Default Quantization algorithm with basic settings are present
|
||||
# the quantization scheme. For the CPU:
|
||||
# performance - symmetric quantization of weights and activations.
|
||||
# mixed - symmetric weights and asymmetric activations.
|
||||
# accuracy - the same as "mixed" for CPU, GPU, and GNA devices; asymmetric weights and activations for VPU device.
|
||||
# accuracy - the same as "mixed" for CPU, GPU, and GNA devices; asymmetric weights and activations for NPU device.
|
||||
"stat_subset_size": 300 # Size of the subset to calculate activations statistics that can be used
|
||||
# for quantization parameters calculation.
|
||||
}
|
||||
|
||||
@@ -90,7 +90,7 @@ Default Quantization algorithm has mandatory and optional parameters which are d
|
||||
|
||||
* ``"target_device"`` - the following options are available:
|
||||
|
||||
* ``"ANY"`` (or ``"CPU"``) - default option to quantize models for CPU, GPU, or VPU
|
||||
* ``"ANY"`` (or ``"CPU"``) - default option to quantize models for CPU, GPU, or NPU
|
||||
* ``"CPU_SPR"`` - to quantize models for CPU SPR (4th Generation Intel® Xeon® Scalable processor family)
|
||||
* ``"GNA"``, ``"GNA3"``, ``"GNA3.5"`` - to quantize models for GNA devices respectively.
|
||||
|
||||
|
||||
@@ -2,9 +2,9 @@
|
||||
|
||||
## Introduction
|
||||
|
||||
The primary optimization feature of the Post-training Optimization Tool (POT) is the uniform integer quantization which allows substantially increasing inference performance and reducing the model size. Different HW platforms can support different integer precisions and POT is designed to support all of them, for example, 8-bit for CPU, GPU, VPU, 16-bit for GNA. Moreover, POT makes the specification of HW settings transparent for the user by introducing a concept of the `target_device` parameter.
|
||||
The primary optimization feature of the Post-training Optimization Tool (POT) is the uniform integer quantization which allows substantially increasing inference performance and reducing the model size. Different HW platforms can support different integer precisions and POT is designed to support all of them, for example, 8-bit for CPU, GPU, NPU, 16-bit for GNA. Moreover, POT makes the specification of HW settings transparent for the user by introducing a concept of the `target_device` parameter.
|
||||
|
||||
> **NOTE**: There is a special `target_device: "ANY"` which leads to portable quantized models compatible with CPU, GPU, and VPU devices. GNA-quantized models are compatible only with CPU.
|
||||
> **NOTE**: There is a special `target_device: "ANY"` which leads to portable quantized models compatible with CPU, GPU, and NPU devices. GNA-quantized models are compatible only with CPU.
|
||||
|
||||
During the quantization process, the POT tool runs inference of the optimizing model to estimate quantization parameters for input activations of the quantizable operation. It means that a calibration dataset is required to perform quantization. This dataset may have or not have annotation depending on the quantization algorithm that is used.
|
||||
|
||||
|
||||
@@ -17,7 +17,7 @@ class AccuracyAwareQuantization(Algorithm):
|
||||
algos_by_devices = {
|
||||
'ANY': 'AccuracyAwareCommon',
|
||||
'CPU': 'AccuracyAwareCommon',
|
||||
'VPU': 'AccuracyAwareCommon',
|
||||
'NPU': 'AccuracyAwareCommon',
|
||||
'GPU': 'AccuracyAwareCommon',
|
||||
'GNA': 'AccuracyAwareGNA',
|
||||
'GNA3': 'AccuracyAwareGNA',
|
||||
|
||||
@@ -31,11 +31,11 @@ class INT4MixedQuantization(AccuracyAwareCommon):
|
||||
self.original_quantization_config.weights.bits = 8
|
||||
self.original_quantization_config.activations.bits = 8
|
||||
self._config.convert_to_mixed_preset = False
|
||||
self._restrict_for_vpu = True
|
||||
self._restrict_for_npu = True
|
||||
self._engine.calculate_metrics = True
|
||||
|
||||
def _can_set_fq_to_low_bitwidth(self, node):
|
||||
if self._restrict_for_vpu:
|
||||
if self._restrict_for_npu:
|
||||
return (nu.get_node_output(node, 0)[0].type == 'Convolution') and \
|
||||
('group' not in nu.get_node_output(node, 0)[0])
|
||||
return nu.get_node_output(node, 0)[0].type in OPERATIONS_WITH_WEIGHTS
|
||||
|
||||
@@ -528,7 +528,7 @@ def _fake_quantize_to_types(model, hardware_config):
|
||||
|
||||
|
||||
def change_configurations_by_model_type(model, config, fq_configuration, hardware_config):
|
||||
if config['model_type'] == 'transformer' and config['target_device'] in ['ANY', 'CPU', 'CPU_SPR', 'GPU', 'VPU']:
|
||||
if config['model_type'] == 'transformer' and config['target_device'] in ['ANY', 'CPU', 'CPU_SPR', 'GPU', 'NPU']:
|
||||
change_configurations_by_model_type_transformer(model, fq_configuration, hardware_config)
|
||||
|
||||
|
||||
|
||||
@@ -21,7 +21,7 @@ __HARDWARE_CONFIGS_MAP = {'ANY': 'cpu.json',
|
||||
'GNA3': 'gna3.json',
|
||||
'GNA3.5': 'gna3.json',
|
||||
'GPU': 'gpu.json', # Same as cpu.json but without LSTM/GRUSequence quantization
|
||||
'VPU': 'vpu.json',
|
||||
'NPU': 'npu.json',
|
||||
'CPU_SPR': 'cpu.json'}
|
||||
|
||||
|
||||
|
||||
@@ -347,7 +347,7 @@ class Config(Dict):
|
||||
aliases = {'symmetric': 'performance', 'asymmetric': 'accuracy'}
|
||||
preset = aliases.get(preset, preset)
|
||||
presets_aliases_by_device = {
|
||||
'VPU': {'accuracy': 'accuracy'},
|
||||
'NPU': {'accuracy': 'accuracy'},
|
||||
'GNA': {'accuracy': 'accuracy', 'mixed': 'accuracy'},
|
||||
'GNA3': {'accuracy': 'accuracy', 'mixed': 'accuracy'},
|
||||
'GNA3.5': {'accuracy': 'accuracy', 'mixed': 'accuracy'},
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"target_device": "VPU",
|
||||
"target_device": "NPU",
|
||||
"config": {
|
||||
"quantization": {
|
||||
"q8_tn": {
|
||||
@@ -4,7 +4,7 @@
|
||||
from openvino.tools.pot.graph.pattern_utils import get_clamp_mult_const_pattern, \
|
||||
get_softmax_reshape_transpose_gather_matmul_pattern
|
||||
|
||||
def get_vpu_ignored_patterns():
|
||||
def get_npu_ignored_patterns():
|
||||
return {
|
||||
'blocks': [get_softmax_reshape_transpose_gather_matmul_pattern()],
|
||||
'activations': [get_clamp_mult_const_pattern()],
|
||||
@@ -10,7 +10,7 @@ import numpy as np
|
||||
from openvino.tools.pot.version import get_version
|
||||
from .cpu_patterns import get_cpu_ignored_patterns, get_cpu_spr_ignored_patterns
|
||||
from .gpu_patterns import get_gpu_ignored_patterns
|
||||
from .vpu_patterns import get_vpu_ignored_patterns
|
||||
from .npu_patterns import get_npu_ignored_patterns
|
||||
from .gna_patterns import get_gna_ignored_patterns, get_gna3_ignored_patterns
|
||||
from .special_operations import QUANTIZE_AGNOSTIC_OPERATIONS
|
||||
from .node_utils import get_all_node_outputs, get_input_shape
|
||||
@@ -19,7 +19,7 @@ HARDWARE_AWARE_IGNORED_PATTERNS = {
|
||||
'ANY': get_cpu_ignored_patterns(),
|
||||
'CPU': get_cpu_ignored_patterns(),
|
||||
'GPU': get_gpu_ignored_patterns(),
|
||||
'VPU': get_vpu_ignored_patterns(),
|
||||
'NPU': get_npu_ignored_patterns(),
|
||||
'GNA': get_gna_ignored_patterns(),
|
||||
'GNA3': get_gna3_ignored_patterns(),
|
||||
'GNA3.5': get_gna3_ignored_patterns(),
|
||||
|
||||
@@ -7,7 +7,7 @@ from .utils.path import TOOL_CONFIG_PATH
|
||||
DEVICE = [
|
||||
'CPU',
|
||||
'GPU',
|
||||
'VPU'
|
||||
'NPU'
|
||||
]
|
||||
|
||||
|
||||
|
||||
@@ -18,9 +18,9 @@ from .utils.path import TEST_ROOT
|
||||
from .utils.data_helper import load_json
|
||||
|
||||
TEST_MODELS = [
|
||||
('mobilenet-v2-pytorch', 'pytorch', 'MinMaxQuantization', 'performance', 'VPU'),
|
||||
('resnet-50-tf', 'tf', 'DefaultQuantization', 'performance', 'VPU'),
|
||||
('octave-resnet-26-0.25', 'mxnet', 'DefaultQuantization', 'accuracy', 'VPU'),
|
||||
('mobilenet-v2-pytorch', 'pytorch', 'MinMaxQuantization', 'performance', 'NPU'),
|
||||
('resnet-50-tf', 'tf', 'DefaultQuantization', 'performance', 'NPU'),
|
||||
('octave-resnet-26-0.25', 'mxnet', 'DefaultQuantization', 'accuracy', 'NPU'),
|
||||
('concat_depthwise_model', 'pytorch', 'MinMaxQuantization', 'accuracy', 'CPU'),
|
||||
]
|
||||
|
||||
|
||||
Reference in New Issue
Block a user