Community
cancel
Showing results for 
Search instead for 
Did you mean: 
wang__xianju
Beginner
125 Views

Movidius Crashes when the input image is large

Hi , 
I converted my CNN model using mo_tf.py into different input resolutions and tested both with Movidius and Movidius X. When the resolution is large, Movidius X crashed.  My model is very small model and the bin file is only around 168K Bytes. 

Input Resolutions: 

1) 256x256x3

Movidius worked fine, Movidius X worked fine.

2)900x900x3

Movidius worked fine, Movidius X worked fine.

3)1280x1024x3

Movidius worked fine, Movidius X crashed. The error message is shown below. 

Thanks.

 

Xianju

I: [ncAPI] [    606161] ncDeviceOpen:738    ncDeviceOpen() XLinkBootRemote is running for 1.2-ma2480...

I: [ncAPI] [    606375] ncDeviceOpen:754    ncDeviceOpen() XLinkBootRemote returned success X_LINK_SUCCESS for 1.2-ma2480
I: [xLink] [    606789] eventSchedulerRun:545    Scheduler thread started
I: [xLink] [    606789] eventReader:216    eventReader started
I: [ncAPI] [    606789] ncDeviceOpen:807    XLinkConnect done - link Id 1

I: [ncAPI] [    606789] ncDeviceOpen:840    Booted 1.2-ma2480 (2.7-) -> VSC

I: [ncAPI] [    607791] getDevAttributes:962    Device attributes

I: [ncAPI] [    607791] getDevAttributes:964    Device FW version: 444c4454.2480.0.0

I: [ncAPI] [    607791] getDevAttributes:965    Maximum graphs: 10

I: [ncAPI] [    607791] getDevAttributes:966    Maximum fifos: 20

I: [ncAPI] [    607791] getDevAttributes:967    Maximum graph option class: 1

I: [ncAPI] [    607791] getDevAttributes:968    Maximum device option class: 2

I: [ncAPI] [    607791] getDevAttributes:969    Device memory capacity: 510894752

[Info   ][VPU][MyriadPlugin] Device #0 MYRIAD-X allocated
[Info   ][VPU][GraphCompiler] blobSize=221504
I: [ncAPI] [    607988] ncGraphAllocate:1729    Starting Graph allocation sequence

I: [ncAPI] [    607991] ncGraphAllocate:1814    Sent graph
E: [xLink] [    610973] handleIncomingEvent:279    handleIncomingEvent() Read failed -4

E: [xLink] [    610973] dispatcherEventReceive:347    dispatcherEventReceive() Read failed -4 | event 0x7f4c1e799ea0 XLINK_WRITE_REQ

E: [xLink] [    610973] eventReader:233    eventReader stopped
E: [xLink] [    610973] dispatcherEventSend:934    Write failed event -4

E: [xLink] [    610973] XLinkReadDataWithTimeOut:1343    Event data is invalid
E: [ncAPI] [    610973] ncGraphAllocate:1822    Can't read input tensor descriptors of the graph, rc: X_LINK_ERROR
E: [watchdog] [    610973] sendPingMessage:132    Failed send ping message: X_LINK_ERROR
I: [ncAPI] [    610980] ncDeviceClose:1496    Removing device...
W: [ncAPI] [    610980] ncDeviceClose:1547    Failed to close stream, rc: X_LINK_ERROR
W: [ncAPI] [    610980] ncDeviceClose:1552    Failed to close stream, rc: X_LINK_ERROR
W: [ncAPI] [    610980] ncDeviceClose:1564    Failed to reset, rc: X_LINK_ERROR
I: [ncAPI] [    611283] destroyDeviceHandle:1439    Destroying device handler
[ ERROR ] Failed to allocate graph: NC_ERROR

0 Kudos
1 Reply
arunav
Beginner
125 Views

Hi,

I am using the Movidius Graph file using NCAPI.

I am using the following code for reading the graph file:

"""NCAPI v2"""

### initialization
from mvnc import mvncapi
import mvnc.mvncapi as fx

########################  Device Initialization  #######################
device_list = fx.enumerate_devices()
device = fx.Device(device_list[0])
########################################################################

device.open()

#######################  Load  Neural Network   ########################

# Initialize a graph from file at some GRAPH_FILEPATH
GRAPH_FILEPATH = 'model/graph/graph_file_for_tm_npu'

with open(GRAPH_FILEPATH, mode='rb') as f:
    graph_buffer = f.read()

graph = fx.Graph('model/graph/graph_file_for_tm_npu')

print("able to read the graph successfully .... !")

input_descs = graph.get_option(fx.GraphOption.RO_INPUT_TENSOR_DESCRIPTORS)

print(input_descs)

# CONVENIENCE FUNCTION: 
# Allocate the graph to the device and create input/output Fifos with default options in one call
# input_fifo, output_fifo = graph.allocate_with_fifos(device, graph_buffer)
########################################################################

device.close()
device.destroy()

But I am getting the following error 

 

---------------------------------------------------------------------------
Exception                                 Traceback (most recent call last)
<ipython-input-1-7ff11ca99aa0> in <module>
     24 print("able to read the graph successfully .... !")
     25 
---> 26 input_descs = graph.get_option(fx.GraphOption.RO_INPUT_TENSOR_DESCRIPTORS)
     27 
     28 print(input_descs)

/usr/lib/python3.5/site-packages/mvnc/mvncapi.py in get_option(self, option)
    688                 self.handle, GraphOption.RO_INPUT_COUNT.value, byref(desc_count), byref(optsize))
    689             if status != Status.OK.value:
--> 690                 raise Exception(Status(status))
    691 
    692             # Create an appropriately sized buffer for getting the TensorDescriptor data

Exception: Status.NOT_ALLOCATED

 

Can you please help me knowing what is the problem using NCAPI?

 

Please help

 

Kind Regards

Arun

Reply