OpenCL.jl icon indicating copy to clipboard operation
OpenCL.jl copied to clipboard

OpenCL test error

Open davidbp opened this issue 7 years ago • 7 comments

I have installed OpenCL.jl but the tests are not passed... Has anyone with an Apple computer succesfully used the package?

julia> Pkg.test("OpenCL")
INFO: Testing OpenCL
Test Summary: | Pass  Total
layout        |    2      2
Test Summary:   | Pass  Total
OpenCL.Platform |   13     13
Test Summary:  | Pass  Total
OpenCL.Context |   41     41
Test Summary: | Pass  Total
OpenCL.Device |   81     81
WARNING: Platform Apple does not seem to suport out of order queues: 
CLError(code=-30, CL_INVALID_VALUE)
Test Summary:   | Pass  ERROR (unhandled task failure): OpenCL Error: OpenCL.Context error: 

Stacktrace:
 [1] raise_context_error(::String, ::String) at /Users/davidbuchaca1/.julia/v0.6/OpenCL/src/context.jl:109
 [2] macro expansion at /Users/davidbuchaca1/.julia/v0.6/OpenCL/src/context.jl:148 [inlined]
 [3] (::OpenCL.cl.##43#44)() at ./task.jl:335
Total
OpenCL.CmdQueue |   41     41
Test Summary: | Pass  Total
OpenCL.Minver |   15     15
Test Callback
Test Callback
Test Summary: | Pass  Total
OpenCL.Event  |   32     32
OpenCL.Program binaries: Test Failed
  Expression: prg2[:binaries] == binaries
   Evaluated: Dict{OpenCL.cl.Device,Array{UInt8,N} where N}() == Dict{OpenCL.cl.Device,Array{UInt8,N} where N}(Pair{OpenCL.cl.Device,Array{UInt8,N} where N}(OpenCL.Device(Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz on Apple @0x00000000ffffffff), UInt8[0x62, 0x70, 0x6c, 0x69, 0x73, 0x74, 0x30, 0x30, 0xd4, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x5f, 0x10, 0x0f, 0x63, 0x6c, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5c, 0x63, 0x6c, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x44, 0x61, 0x74, 0x61, 0x5f, 0x10, 0x11, 0x63, 0x6c, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5e, 0x63, 0x6c, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x44, 0x72, 0x69, 0x76, 0x65, 0x72, 0x11, 0x01, 0x02, 0x4f, 0x11, 0x10, 0x6c, 0xcf, 0xfa, 0xed, 0xfe, 0x07, 0x00, 0x00, 0x01, 0x03, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x30, 0x02, 0x00, 0x00, 0x85, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x19, 0x00, 0x00, 0x00, 0x38, 0x01, 0x00, 0x00, 0x5f, 0x5f, 0x54, 0x45, 0x58, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, ... many 0x00... 0x00, 0x44, 0x00, 0x53, 0x00, 0x56, 0x10, 0xc6, 0x10, 0xea, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0xee]))
Stacktrace:
 [1] macro expansion at /Users/davidbuchaca1/.julia/v0.6/OpenCL/test/test_program.jl:86 [inlined]
 [2] macro expansion at ./test.jl:860 [inlined]
 [3] macro expansion at /Users/davidbuchaca1/.julia/v0.6/OpenCL/test/test_program.jl:75 [inlined]
 [4] macro expansion at ./test.jl:860 [inlined]
 [5] anonymous at ./<missing>:?
OpenCL.Program binaries: Test Failed
  Expression: prg2[:binaries] == binaries
   Evaluated: Dict{OpenCL.cl.Device,Array{UInt8,N} where N}() == Dict{OpenCL.cl.Device,Array{UInt8,N} where N}(Pair{OpenCL.cl.Device,Array{UInt8,N} where N}(OpenCL.Device(AMD Radeon Pro 580 Compute Engine on Apple @0x0000000001021c00), UInt8[0x62, 0x70, 0x6c, 0x69, 0x73, 0x74, 0x30, 0x30, 0xd4, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x5f, 0x10, 0x0f, 0x63, 0x6c, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5c, 0x63, 0x6c, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x44, 0x61, 0x74, 0x61, 0x5f, 0x10, 0x11, 0x63, 0x6c, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5e, 0x63, 0x6c, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x44, 0x72, 0x69, 0x76, 0x65, 0x72, 0x10, 0x00, 0x4f, 0x11, 0x35, 0x5c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  .... may 0x00 ,.... 0xf6]))
Stacktrace:
 [1] macro expansion at /Users/davidbuchaca1/.julia/v0.6/OpenCL/test/test_program.jl:86 [inlined]
 [2] macro expansion at ./test.jl:860 [inlined]
 [3] macro expansion at /Users/davidbuchaca1/.julia/v0.6/OpenCL/test/test_program.jl:75 [inlined]
 [4] macro expansion at ./test.jl:860 [inlined]
 [5] anonymous at ./<missing>:?
Test Summary:                       | Pass  Fail  Total
OpenCL.Program                      |   42     2     44
  OpenCL.Program source constructor |    2            2
  OpenCL.Program info               |   16           16
  OpenCL.Program build              |    8            8
  OpenCL.Program source code        |    2            2
  OpenCL.Program binaries           |   14     2     16
ERROR: LoadError: LoadError: Some tests did not pass: 42 passed, 2 failed, 0 errored, 0 broken.
while loading /Users/davidbuchaca1/.julia/v0.6/OpenCL/test/test_program.jl, in expression starting on line 1
while loading /Users/davidbuchaca1/.julia/v0.6/OpenCL/test/runtests.jl, in expression starting on line 30
======================================================================[ ERROR: OpenCL ]=======================================================================

failed process: Process(`/Applications/Julia-0.6.app/Contents/Resources/julia/bin/julia -Cnative -J/Applications/Julia-0.6.app/Contents/Resources/julia/lib/julia/sys.dylib --compile=yes --depwarn=yes --check-bounds=yes --code-coverage=none --color=yes --compilecache=yes /Users/davidbuchaca1/.julia/v0.6/OpenCL/test/runtests.jl`, ProcessExited(1)) [1]

==============================================================================================================================================================

WARNING: unknown IssueReporter commit 5f686e74, metadata may be ahead of package cache
INFO: No packages to install, update or remove
ERROR: OpenCL had test errors

About the Julia version:

julia> versioninfo()
Julia Version 0.6.2
Commit d386e40c17 (2017-12-13 18:08 UTC)
Platform Info:
  OS: macOS (x86_64-apple-darwin14.5.0)
  CPU: Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz
  WORD_SIZE: 64
  BLAS: libopenblas (USE64BITINT DYNAMIC_ARCH NO_AFFINITY Prescott)
  LAPACK: libopenblas64_
  LIBM: libopenlibm
  LLVM: libLLVM-3.9.1 (ORCJIT, broadwell)

davidbp avatar Apr 12 '18 21:04 davidbp

any comments on the failure of this test? Is this an OpenCL api issue?

rabarar avatar Nov 05 '18 14:11 rabarar

Most likely a problem with Apple's implementation... but it might be wortwhile investigating why one can't query binaries and if it is indeed a limitation on Apple selectivly disabling this test should be okay.

vchuravy avatar Nov 05 '18 15:11 vchuravy

Since apple is deprecating OpenCL in mojave and it won't even be included in the next operating system, is there a way download software from intel/AMD so that we could future-proof this? OSX seems to be pretty Unix like. Maybe it's feasible.

davidbp avatar Nov 05 '18 16:11 davidbp

What about sharing a docker image with OpenCL ?

davidbp avatar Nov 05 '18 19:11 davidbp

I don't have access to a Mac so I can't really advise/provide solutions here. But a docker image might work, getting access to the underlying hardware is tricky.

vchuravy avatar Nov 05 '18 19:11 vchuravy

I just updated OpenCL for julia 0.6 and Pkg.test still fails some tests but the vector addition code form the main page works.

Test Summary:                       | Pass  Fail  Total
OpenCL.Program                      |   63     3     66
  OpenCL.Program source constructor |    3            3
  OpenCL.Program info               |   24           24
  OpenCL.Program build              |   12           12
  OpenCL.Program source code        |    3            3
  OpenCL.Program binaries           |   21     3     24
ERROR: LoadError: LoadError: Some tests did not pass: 63 passed, 3 failed, 0 errored, 0 broken.
while loading /Users/david.buchaca/.julia/v0.6/OpenCL/test/test_program.jl, in expression starting on line 1
while loading /Users/david.buchaca/.julia/v0.6/OpenCL/test/runtests.jl, in expression starting on line 30

davidbp avatar Nov 05 '18 19:11 davidbp

Yes, these failing tests are not critical to everyday usage of OpenCL.jl

vchuravy avatar Nov 06 '18 19:11 vchuravy