- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
We tried to load the same neural network on three different FPGAs as shown in the program below.
#include "inference_engine.hpp"
int main(int argc, char *argv[])
{
InferenceEngine::Core core;
auto network1 = core.ReadNetwork(".xml");
auto exeNetwork1 = core.LoadNetwork(network1, "FPGA.0");
auto network2 = core.ReadNetwork(".xml");
auto exeNetwork2 = core.LoadNetwork(network2, "FPGA.1");
auto network3 = core.ReadNetwork(".xml");
auto exeNetwork3 = core.LoadNetwork(network3, "FPGA.2");
return 0;
}
However, the OpenVINO program crashed with the error shown below. However, commenting out any of the three networks would fix the problem.
Error initializing DMA: 5
Error initializing mmd dma
Error initializing bsp
Error Code: 147
Error Description: Error: Failure due to generic standard exception.User requested device 2 is invalid
File: /home/jenkins/agent/workspace/private-ci/ie/build-linux-ubuntu16/b/repos/fpga-plugin/thirdparty/dla/runtime/core/src/new_device.cpp
Function: initialize
Line #: 101
terminate called after throwing an instance of 'InferenceEngine::details::InferenceEngineException'
what(): Failed to create FPGA device handle with ID 2
Aborted (core dumped)
Environment:
Ubuntu 16.04
OpenVINO version: 2020.0301
Aocl version: 19.2
Intel® Programmable Acceleration Card Stack version: 1.2
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello Tony7,
Thank you for contacting us.
The error of “Failure due to generic standard exception. User requested device 2 is invalid” is due to the Inference Engine Core class only supports 2 FPGA devices, FPGA.0 and FPGA.1. ID 2 is not recognized as mentioned in InferenceEngine::Core Class Reference GetAvailableDevices().
Regards,
Zulkifli
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Zulkifli,
Thanks for the reply.
I created the program below to print the available devices, and FPGA.2 is recognized as one of the available devices.
InferenceEngine::Core core;
auto devices = core.GetAvailableDevices();
for (auto device: devices){
cout << device << endl;
}
The output of the program is shown below.
(aocl) autodrive@AUTODRIVE-BOLT:~/dla/new_openvino_test/benchmark_ws$ ./devel/lib/zeus_inference_engine/YoloTest
CPU
FPGA.0
FPGA.1
FPGA.2
Regards,
Tony
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello Tony7,
Multiple FPGA devices can be supported for OpenVINO simultaneously if they are running different models in each respective cards as per below configuration example:
Card 1: Object Detection with SSD-VGG Sample
Card 2: Image Segmentation Sample with FCN-8.
Card 3: Object Detection for Faster R-CNN Sample
Card 4: Image Classification Sample with Alexnet.
The step can be obtained at FPGA Plugin - OpenVINO Toolkit
However, the current configuration only supports 2 FPGA devices for the same model.
Regards,
Zulkifli
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello,
This thread will no longer be monitored since we have provided a solution. If you need any additional information from Intel, please submit a new question.
Regards,
Zulkifli

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page