ROCm / MIVisionX

MIVisionX toolkit is a set of comprehensive computer vision and machine intelligence libraries, utilities, and applications bundled into a single toolkit. AMD MIVisionX also delivers a highly optimized open-source implementation of the Khronos OpenVX™ and OpenVX™ Extensions.
https://rocm.docs.amd.com/projects/MIVisionX/en/latest/
MIT License
186 stars 74 forks source link

runvx crashes when running samples #305

Closed vitos23 closed 4 years ago

vitos23 commented 4 years ago

OS: Windows 10 2004 CPU: Ryzen 7 2700X GPU: NVIDIA RTX 2080

I built MIVisionX 1.8 from sources in Visual Studio 2019 and tried to run samples but runvx crashed. Then I installed MIVisionX 1.6 from msi package that also doesn't work. Message I get when running:

runvx.exe 1.0.0 OK: using AMD OpenVX 1.0.1 OK: OpenVX using GPU device#0 (GeForce RTX 2080) [OpenCL 1.2 CUDA] [SvmCaps 0 1] ERROR: clCreateCommandQueueWithProperties(00000184A1ED2160,00000184A1C5E900,0,*) => -30 ERROR: vxVerifyGraph(graph) failed (-1:VX_FAILURE)

paveltc commented 4 years ago

@kiritigowda I don't think this error is specific to runvx. It seems like an OpenCL issue. @rrawther Can you please comment?

kiritigowda commented 4 years ago

@Vitaliy223 I tried the samples from the TOT using

AMD Ryzen™ 7 PRO 3700U Processor (2.30GHz, up to 4.0GHz Max Boost, 4 cores, 4MB Cache)
Integrated AMD Radeon™ RX Vega 10 Graphics

See the results below. We have not tested the OpenCL flow with an NVIDIA GPU

runvx.exe 1.0.0
OK: using AMD OpenVX 1.0.1
OK: enabled graph scheduling in separate threads
OK: OpenVX scheduling 0 nodes on CPU and 12 nodes on GPU
OK: OpenVX using GPU device#0 (gfx902) [OpenCL 2.0 AMD-APP (3004.8)] [SvmCaps 0 0]
csv,HEADER ,STATUS, COUNT,cur-ms,avg-ms,min-ms,clenqueue-ms,clwait-ms,clwrite-ms,clread-ms
OK: capturing 480x360 image(s) into 480x360 RGB image buffer
csv,OVERALL,  PASS,     1,      ,  2.25,  2.25,  0.03,  1.47,  0.67,  0.00 (median 2.249)
> total elapsed time:   0.14 sec
Abort: Press any key to exit...
OK: OpenCL buffer usage: 708992, 2/2
vitos23 commented 4 years ago

I also tried to compile MIVisionX with OpenCL from Nvidia CUDA Toolkit and got another error:

runvx.exe 1.0.0 OK: using AMD OpenVX 1.0.1 OK: enabled graph scheduling in separate threads OK: OpenVX scheduling 1 nodes on CPU and 3 nodes on GPU OK: OpenVX using GPU device#0 (GeForce RTX 2080) [OpenCL 1.2 CUDA] [1] csv,HEADER ,STATUS, COUNT,cur-ms,avg-ms,min-ms,clenqueue-ms,clwait-ms,clwrite-ms,clread-ms OK: capturing 768x512 image(s) into 480x360 RGB image buffer with resize ERROR: clWaitForEvents(1,0000025F5E390950) failed(-5) for group#1 ERROR: agoWaitForNodesCompletion: launched=1 supernode wait failed ERROR: agoWaitForNodesCompletion failed (-1:(null)) ERROR: vxScheduleGraph() failed (-1:VX_FAILURE) OK: OpenCL buffer usage: 1754704, 4/4

rrawther commented 4 years ago

@We never validated OpenVX with OpenCL from NVidia CUDA Toolkit. This is a new feature to support.

vitos23 commented 4 years ago

It doesn't work with any version of opencl. Thanks for your help anyway.

kiritigowda commented 4 years ago

@Vitaliy223 if you do find any resolution for this please create a pull request and we will accept it. I am going to close this bug as the GPU is not a supported or tested hardware.

Thanks!