Skip to content
This repository has been archived by the owner on May 27, 2021. It is now read-only.

test errors #144

Closed
jianghaizhu opened this issue Jan 11, 2018 · 7 comments
Closed

test errors #144

jianghaizhu opened this issue Jan 11, 2018 · 7 comments

Comments

@jianghaizhu
Copy link

jianghaizhu commented Jan 11, 2018

I am using Ubuntu 16.04. Julia 0.6.2 compiled from source, CUDA 8.0.61, driver 375.26, CUDAnative 0.5.3. I have two GPUs, Quadro K620 and GeForce GTX 750 Ti. I have no problem to build CUDAnative. When I ran Pkg.test("CUDAnative"), I got the following errors. I am only showing the beginning and the end of the message.

julia> Pkg.test("CUDAnative")
INFO: Testing CUDAnative
WARNING: Method definition convert(Type{LLVM.LLVMType}, Type{T} where T) in module Interop at /home/zhuj6/.julia/v0.6/LLVM/src/interop/base.jl:54 overwritten in module CUDAnative at /home/zhuj6/.julia/v0.6/CUDAnative/src/cgutils.jl:159.
warning: ignoring debug info with an invalid version (0) in 
warning: ignoring debug info with an invalid version (0) in 
warning: ignoring debug info with an invalid version (0) in 
warning: ignoring debug info with an invalid version (0) in 
warning: ignoring debug info with an invalid version (0) in codegen_child
warning: ignoring debug info with an invalid version (0) in 
child functions: Error During Test
  Got an exception of type LLVM.LLVMException outside of a @test
  LLVM error: All DICompileUnits must be listed in llvm.dbg.cu
  
  Stacktrace:
   [1] verify(::LLVM.Module) at /home/zhuj6/.julia/v0.6/LLVM/src/analysis.jl:11
   [2] #add_entry!#26(::Bool, ::Function, ::LLVM.Module, ::Any, ::Any) at /home/zhuj6/.julia/v0.6/CUDAnative/src/jit.jl:251
   [3] (::CUDAnative.#kw##add_entry!)(::Array{Any,1}, ::CUDAnative.#add_entry!, ::LLVM.Module, ::Any, ::Any) at ./<missing>:0
   [4] #code_llvm#71(::Bool, ::Bool, ::VersionNumber, ::Bool, ::Function, ::Base.AbstractIOBuffer{Array{UInt8,1}}, ::Any, ::Any) at /home/zhuj6/.julia/v0.6/CUDAnative/src/reflection.jl:42
   [5] (::##9#23)(::Base.AbstractIOBuffer{Array{UInt8,1}}) at /home/zhuj6/.julia/v0.6/CUDAnative/test/codegen.jl:50
   [6] #sprint#228(::Void, ::Function, ::Int64, ::Function) at ./strings/io.jl:66
   [7] sprint(::Function) at ./strings/io.jl:82
   [8] macro expansion at /home/zhuj6/.julia/v0.6/CUDAnative/test/codegen.jl:50 [inlined]
   [9] macro expansion at ./test.jl:860 [inlined]
   [10] macro expansion at /home/zhuj6/.julia/v0.6/CUDAnative/test/codegen.jl:45 [inlined]
   [11] macro expansion at ./test.jl:860 [inlined]
   [12] macro expansion at /home/zhuj6/.julia/v0.6/CUDAnative/test/codegen.jl:5 [inlined]
   [13] macro expansion at ./test.jl:860 [inlined]
   [14] anonymous at ./<missing>:?
   [15] include_from_node1(::String) at ./loading.jl:576
   [16] include(::String) at ./sysimg.jl:14
   [17] macro expansion at /home/zhuj6/.julia/v0.6/CUDAnative/test/runtests.jl:14 [inlined]
   [18] macro expansion at ./test.jl:860 [inlined]
   [19] anonymous at ./<missing>:?
   [20] include_from_node1(::String) at ./loading.jl:576
   [21] include(::String) at ./sysimg.jl:14
   [22] process_options(::Base.JLOptions) at ./client.jl:305
   [23] _start() at ./client.jl:371

..........


 > checking for missing docstrings.
 !! 5 docstrings potentially missing:

    CUDAnative.shfl_up_sync
    CUDAnative.shfl_sync
    CUDAnative.shfl_xor_sync
    CUDAnative.sync_warp
    CUDAnative.shfl_down_sync

 > running doctests.
 > checking footnote links.
Documenter: populating indices.
Documenter: rendering document.

Test Summary:                             | Pass  Fail  Error  Total
CUDAnative                                |  118     1      7    126
  base interface                          |                    No tests
  pointer                                 |   20                  20
  code generation                         |   21            6     27
    LLVM IR                               |   14            1     15
      basic reflection                    |    5                   5
      exceptions                          |    3                   3
      sysimg                              |    1                   1
      child functions                     |                 1      1
      JuliaLang/julia#21121               |    1                   1
      kernel calling convention           |    2                   2
      LLVM D32593                         |                    No tests
      julia calling convention            |    2                   2
    PTX assembly                          |    7            5     12
      basic reflection                    |    3                   3
      child functions                     |                 1      1
      entry-point functions               |                 1      1
      delayed lookup                      |    1                   1
      generic call                        |    1                   1
      idempotency                         |                    No tests
      child function reuse                |                 1      1
      child function reuse bis            |                 1      1
      indirect sysimg function use        |    2                   2
      compile for host after PTX          |                 1      1
      LLVM intrinsics                     |                    No tests
  code generation (relying on a device)   |    2                   2
  execution                               |   15            1     16
    cufunction                            |    1                   1
    @cuda                                 |    4            1      5
      reflection                          |                    No tests
      reflection with argument conversion |                    No tests
      dimensions                          |    1                   1
      shared memory                       |                    No tests
      streams                             |                    No tests
      external kernels                    |                    No tests
      return values                       |    1                   1
      calling device function             |                 1      1
    argument passing                      |   10                  10
    profile                               |                    No tests
  device arrays                           |   19                  19
  intrinsics                              |   35                  35
  examples                                |    5     1             6
    hello_world.jl                        |    1                   1
    pairwise.jl                           |          1             1
    peakflops.jl                          |    1                   1
    reduce/verify.jl                      |    1                   1
    scan.jl                               |    1                   1
    vadd.jl                               |    1                   1
  documentation                           |                    No tests
ERROR: LoadError: Some tests did not pass: 118 passed, 1 failed, 7 errored, 0 broken.
while loading /home/zhuj6/.julia/v0.6/CUDAnative/test/runtests.jl, in expression starting on line 6
=============================[ ERROR: CUDAnative ]==============================

failed process: Process(`/home/zhuj6/julia/usr/bin/julia -Cnative -J/home/zhuj6/julia/usr/lib/julia/sys.so --compile=yes --depwarn=yes --check-bounds=yes --code-coverage=none --color=yes --compilecache=yes /home/zhuj6/.julia/v0.6/CUDAnative/test/runtests.jl`, ProcessExited(1)) [1]

================================================================================
ERROR: CUDAnative had test errors

How do I troubleshoot here? Thanks!

@maleadt
Copy link
Member

maleadt commented Jan 11, 2018

Hi, thanks for the report. This has been fixed in d636785, which is part of CUDAnative 0.5.4.
Please update your packages and try again 🙂

@maleadt maleadt closed this as completed Jan 11, 2018
@jianghaizhu
Copy link
Author

Interesting! I just did Pkg.update() and CUDAnative stayed at 0.5.3. I checked that it is not pinned.

julia> Pkg.status("CUDAnative")
 - CUDAnative                    0.5.3

@maleadt
Copy link
Member

maleadt commented Jan 11, 2018

Huh, well I did merge a change to METADATA.jl in JuliaLang/METADATA.jl#12790
I quickly checked all of the deps, and none are requiring eg. Julia 0.7.
Maybe some package is holding back Compat?

@maleadt
Copy link
Member

maleadt commented Jan 11, 2018

Works here...

$ JULIA_PKGDIR=/tmp/x julia -e 'Pkg.init(); Pkg.add("CUDAnative")'                                                                                                                     [master] 
INFO: Initializing package repository /tmp/x/v0.6
INFO: Cloning METADATA from https://github.com/JuliaLang/METADATA.jl
INFO: Cloning cache of CUDAapi from https://github.com/JuliaGPU/CUDAapi.jl.git
INFO: Cloning cache of CUDAdrv from https://github.com/JuliaGPU/CUDAdrv.jl.git
INFO: Cloning cache of CUDAnative from https://github.com/JuliaGPU/CUDAnative.jl.git
INFO: Cloning cache of Compat from https://github.com/JuliaLang/Compat.jl.git
INFO: Cloning cache of LLVM from https://github.com/maleadt/LLVM.jl.git
INFO: Installing CUDAapi v0.3.0
INFO: Installing CUDAdrv v0.7.3
INFO: Installing CUDAnative v0.5.4
INFO: Installing Compat v0.44.0
INFO: Installing LLVM v0.5.1

@jianghaizhu
Copy link
Author

I found out that CUDNN downgrades CUDAapi to 0.2.1, CUDAdrv to 0.6.1, and CUDAnative to 0.5.3. I guess a fix is needed there.

@jianghaizhu
Copy link
Author

CuArrays does the same thing as CUDNN.

@maleadt
Copy link
Member

maleadt commented Jan 11, 2018

CuArrays does the same thing as CUDNN.

Try CuArrays from master, which has this fixed. It also includes CUDNN, so you don't need that package then.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants