Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Running ] test CUDA with OhMyREPL in startup.jl causes some tests to fail #246

Closed
tsela opened this issue Jun 23, 2020 · 2 comments
Closed
Labels
bug Something isn't working

Comments

@tsela
Copy link

tsela commented Jun 23, 2020

Describe the bug

As explained in the title. When I try to test CUDA in the Julia REPL with ] test CUDA, I get the following output:

Click to expand
    Testing CUDA
Status `/tmp/jl_9FE7GU/Manifest.toml`
  [621f4979] AbstractFFTs v0.5.0
  [79e6a3ab] Adapt v2.0.2
  [b99e7846] BinaryProvider v0.5.10
  [fa961155] CEnum v0.4.1
  [052768ef] CUDA v1.0.2
  [bbf7d656] CommonSubexpressions v0.2.0
  [e66e0078] CompilerSupportLibraries_jll v0.3.3+0
  [864edb3b] DataStructures v0.17.18
  [163ba53b] DiffResults v1.0.2
  [b552c78f] DiffRules v1.0.1
  [e2ba6199] ExprTools v0.1.1
  [7a1cc6ca] FFTW v1.2.2
  [f5851436] FFTW_jll v3.3.9+5
  [1a297f60] FillArrays v0.8.11
  [f6369f11] ForwardDiff v0.10.10
  [0c68f7d7] GPUArrays v4.0.0
  [61eb1bfa] GPUCompiler v0.4.0
  [1d5cc7b8] IntelOpenMP_jll v2018.0.3+0
  [929cbde3] LLVM v1.6.0
  [856f044c] MKL_jll v2020.1.216+0
  [1914dd2f] MacroTools v0.5.5
  [a6bfbf70] NNPACK_jll v2018.6.22+0
  [872c559c] NNlib v0.7.0
  [77ba4419] NaNMath v0.3.3
  [efe28fd5] OpenSpecFun_jll v0.5.3+3
  [bac558e1] OrderedCollections v1.2.0
  [189a3867] Reexport v0.2.0
  [ae029012] Requires v1.0.1
  [276daf66] SpecialFunctions v0.10.3
  [90137ffa] StaticArrays v0.12.3
  [a759f4b9] TimerOutputs v0.5.6
  [2a0f44e3] Base64 
  [ade2ca70] Dates 
  [8ba89e20] Distributed 
  [b77e0a4c] InteractiveUtils 
  [76f85450] LibGit2 
  [8f399da3] Libdl 
  [37e2e46d] LinearAlgebra 
  [56ddb016] Logging 
  [d6f4376e] Markdown 
  [44cfe95a] Pkg 
  [de0858da] Printf 
  [3fa0cd96] REPL 
  [9a3f8284] Random 
  [ea8e919c] SHA 
  [9e88b42a] Serialization 
  [6462fe0b] Sockets 
  [2f01184e] SparseArrays 
  [10745b16] Statistics 
  [8dfed614] Test 
  [cf7118a7] UUIDs 
  [4ec0a83e] Unicode 
[ Info: Testing using device GeForce GTX 1050 Ti (compute capability 6.1.0, 3.484 GiB available memory) on CUDA driver 10.2.0 and toolkit 10.2.89
[ Info: Skipping the following tests: cutensor, device/wmma
Test                        (Worker) | Time (s) | GPU GC (s) | GPU GC % | GPU Alloc (MB) | CPU GC (s) | CPU GC % | CPU Alloc (MB) | RSS (MB)
initialization                   (2) |     2.31 |       0.00 |      0.0 |           0.00 |       0.03 |      1.4 |         160.93 |   628.56
apiutils                         (2) |     0.17 |       0.00 |      0.0 |           0.00 |       0.00 |      0.0 |           5.70 |   628.56
array                            (2) |    49.97 |       0.31 |      0.6 |           5.20 |       1.79 |      3.6 |        6924.19 |   928.23
broadcast                        (2) |    19.93 |       0.00 |      0.0 |           0.00 |       0.49 |      2.5 |        1646.68 |   928.23
codegen                          (2) |     3.39 |       0.00 |      0.0 |           0.00 |       0.08 |      2.4 |         318.60 |  1067.69
cublas                           (2) |    46.72 |       0.03 |      0.1 |          11.11 |       1.56 |      3.3 |        6836.25 |  1289.42
cudnn                            (2) |    51.42 |       0.02 |      0.0 |           0.62 |       1.51 |      2.9 |        5940.03 |  2020.76
cufft                            (2) |    16.35 |       0.01 |      0.0 |         144.16 |       0.54 |      3.3 |        2047.33 |  2223.32
curand                           (2) |     3.75 |       0.00 |      0.0 |           0.01 |       0.11 |      2.9 |         441.03 |  2227.61
cusolver                         (2) |    41.61 |       0.05 |      0.1 |        1128.67 |       1.37 |      3.3 |        5399.32 |  2612.80
cusparse                         (2) |    41.52 |       0.01 |      0.0 |          10.73 |       1.02 |      2.5 |        4312.73 |  3022.62
      From worker 2:	ERROR: LoadError: ArgumentError: Package OhMyREPL not found in current path:
      From worker 2:	- Run `import Pkg; Pkg.add("OhMyREPL")` to install the OhMyREPL package.
      From worker 2:	
      From worker 2:	Stacktrace:
      From worker 2:	 [1] require(::Module, ::Symbol) at ./loading.jl:892
      From worker 2:	 [2] include(::Module, ::String) at ./Base.jl:377
      From worker 2:	 [3] include_ifexists at ./client.jl:212 [inlined]
      From worker 2:	 [4] load_julia_startup() at ./client.jl:320
      From worker 2:	 [5] exec_options(::Base.JLOptions) at ./client.jl:259
      From worker 2:	 [6] _start() at ./client.jl:484
      From worker 2:	in expression starting at /home/christophe/.julia/config/startup.jl:2
      From worker 2:	ERROR: LoadError: ArgumentError: Package OhMyREPL not found in current path:
      From worker 2:	- Run `import Pkg; Pkg.add("OhMyREPL")` to install the OhMyREPL package.
      From worker 2:	
      From worker 2:	Stacktrace:
      From worker 2:	 [1] require(::Module, ::Symbol) at ./loading.jl:892
      From worker 2:	 [2] include(::Module, ::String) at ./Base.jl:377
      From worker 2:	 [3] include_ifexists at ./client.jl:212 [inlined]
      From worker 2:	 [4] load_julia_startup() at ./client.jl:320
      From worker 2:	 [5] exec_options(::Base.JLOptions) at ./client.jl:259
      From worker 2:	 [6] _start() at ./client.jl:484
      From worker 2:	in expression starting at /home/christophe/.julia/config/startup.jl:2
      From worker 2:	ERROR: LoadError: ArgumentError: Package OhMyREPL not found in current path:
      From worker 2:	- Run `import Pkg; Pkg.add("OhMyREPL")` to install the OhMyREPL package.
      From worker 2:	

The stacktrace keeps repeating itself afterwards. Running the REPL with julia --startup-file=no does not help. The error still appears. The only way to remove the error is to comment out using OhMyREPL in startup.jl.

To reproduce

Simply install OhMyREPL in the default environment and have using OhMyREPL in the startup.jl file. Then run:

] test CUDA

in the REPL after activating the environment containing CUDA.

Expected behavior

I would expect all the tests to run fine regardless of the presence of using OhMyREPL in the startup.jl file.

Version info

Details on Julia:

versioninfo()
Julia Version 1.4.2
Commit 44fa15b150* (2020-05-23 18:35 UTC)
Platform Info:
  OS: Linux (x86_64-pc-linux-gnu)
  CPU: Intel(R) Core(TM) i7-8700 CPU @ 3.20GHz
  WORD_SIZE: 64
  LIBM: libopenlibm
  LLVM: libLLVM-8.0.1 (ORCJIT, skylake)

Details on CUDA:

CUDA.versioninfo()

There is no CUDA.versioninfo() for me to run (like, literally. I get ERROR: UndefVarError: versioninfo not defined). Installed version of CUDA is 1.0.2 as given by ] status. The stacktrace gives info about my GPU and CUDA driver and toolkit installed. Note that CUDA.version() returns v"10.2.0". I take it there's a typo somewhere.

Additional context

This is on a computer running Ubuntu 20.04, CUDA installed in a pristine environment.

@tsela tsela added the bug Something isn't working label Jun 23, 2020
@Ellipse0934
Copy link
Contributor

I am able to reproduce this.
The error is coming from test/examples.jl.

cd(examples_dir) do
    global examples
    examples = relpath.(examples, Ref(examples_dir))
    @testset for example in examples
        cmd = Base.julia_cmd()
        if Base.JLOptions().project != C_NULL
            cmd = `$cmd --project=$(unsafe_string(Base.JLOptions().project))`
        end

        @test success(pipeline(`$cmd $example`, stderr=stderr)) # This line
    end
end

The simple fix is to do @test success(pipeline($cmd --startup-file=no $example, stderr=stderr))

However, test/execution.jl will also fail which needs a modification in julia_script in setup.jl. You can file a PR if you want or I'll have a look in a day or two.

@maleadt
Copy link
Member

maleadt commented Jul 2, 2020

Dup of #182, fixed by #184.

@maleadt maleadt closed this as completed Jul 2, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

3 participants