Closed navidcy closed 3 years ago
It could help to document what's going wrong with FourierFlows
on the cluster here so that process is documented (and hopefully the solution).
Yes. Just need to find some time and make sure the issue is reproducible.
If you mean whether the same steps lead to the same behavior on the same cluster then that's important just to ensure that there's no mistake in documenting the steps.
But I don't think we need any more reproducibility (eg on another cluster); any documented information at all is valuable and can be discussed.
Brief summary on the skylab GPU of the NASA cluster with JULIA_CUDA_USE_BINARYBUILDER: false , CUDA toolkit 11.0.2, CUDA driver 11.0.0 NVIDIA driver 450.51.5
with julia1.5.4 and cuda2.4.3 FourierFlows can build the TwoDGrid on the GPU and GeophysicalFlows creates a problem on the GPU
with julia1.6.1 and both cuda3.1.0 and cuda2.6.3, using FourierFlows returns
┌ Debug: CUDA-enabled GPU(s) detected:
└ @ FourierFlows ~/.julia/packages/FourierFlows/e7mT6/src/FourierFlows.jl:127
┌ Debug: CuDevice(0): Tesla V100-SXM2-32GB
└ @ FourierFlows ~/.julia/packages/FourierFlows/e7mT6/src/FourierFlows.jl:129
however TwoDgrid(GPU(),10,2) returns
ERROR: MethodError: no method matching /(::Int64, ::GPU)
Closest candidates are:
/(::Union{Int128, Int16, Int32, Int64, Int8, UInt128, UInt16, UInt32, UInt64, UInt8}, ::Union{Int128, Int16, Int32, Int64, Int8, UInt128, UInt16, UInt32, UInt64, UInt8}) at int.jl:93
/(::Union{Integer, Complex{var"#s79"} where var"#s79"<:Union{Integer, Rational}}, ::Rational) at rational.jl:322
/(::Union{Int16, Int32, Int64, Int8, UInt16, UInt32, UInt64, UInt8}, ::BigInt) at gmp.jl:544
...
Stacktrace:
[1] TwoDGrid(nx::GPU, Lx::Int64, ny::Int64, Ly::Int64; x0::Float64, y0::Float64, nthreads::Int64, effort::UInt32, T::Type{Float64}, dealias::Float64, ArrayType::Type)
@ FourierFlows ~/.julia/packages/FourierFlows/e7mT6/src/domains.jl:126
[2] TwoDGrid(nx::GPU, Lx::Int64, ny::Int64, Ly::Int64) (repeats 2 times)
@ FourierFlows ~/.julia/packages/FourierFlows/e7mT6/src/domains.jl:126
[3] top-level scope
@ REPL[19]:1
One idea may be to check the init function https://github.com/FourierFlows/FourierFlows.jl/blob/844684479013516ceb4a2ddd8909470f4d60973f/src/FourierFlows.jl#L119
The error reads like https://github.com/FourierFlows/FourierFlows.jl/blob/bb5ff153f92dc96cf53821df0be5f3d08992bfd6/src/FourierFlows.jl#L116 Was never called in FourierFlows.jl and therefore there TwoGrid overload https://github.com/FourierFlows/FourierFlows.jl/blob/bb5ff153f92dc96cf53821df0be5f3d08992bfd6/src/CuFourierFlows.jl#L6 Is not there!
To add to that, seems like on the NASA Pleiades Cluster FourierFlows.jl v0.6.18 worked as expected with CUDA.jl v2.4.3 and Julia 1.5.4. However, with Julia v1.6.1, both with CUDA.jl v2.6.3 and v.3.1.0, while CUDA.has_cuda()
returns true
, FourierFlows.jl does not "see" the GPU and does not overloads the GPU-related methods for grids, etc.
But I don't think it's CUDA v3 that creates issues because the tests on FourierFlows.jl v0.6.18 seem to run OK on Julia v1.6; see buildkite log
OK, I can confirm that I get the same behavior on Australia's HPC. Weird.
(base) [nc3020@gadi-gpu-v100-0023 testfolder]$ julia --project
_
_ _ _(_)_ | Documentation: https://docs.julialang.org
(_) | (_) (_) |
_ _ _| |_ __ _ | Type "?" for help, "]?" for Pkg help.
| | | | | | |/ _` | |
| | |_| | | | (_| | | Version 1.6.1 (2021-04-23)
_/ |\__'_|_|_|\__'_| |
|__/ |
julia> using FourierFlows
[ Info: FourierFlows will use 48 threads
julia> TwoDGrid(GPU(), 10, 2.0)
ERROR: MethodError: no method matching /(::Int64, ::GPU)
Closest candidates are:
/(::Union{Int128, Int16, Int32, Int64, Int8, UInt128, UInt16, UInt32, UInt64, UInt8}, ::Union{Int128, Int16, Int32, Int64, Int8, UInt128, UInt16, UInt32, UInt64, UInt8}) at int.jl:93
/(::Union{Integer, Complex{var"#s79"} where var"#s79"<:Union{Integer, Rational}}, ::Rational) at rational.jl:322
/(::Union{Int16, Int32, Int64, Int8, UInt16, UInt32, UInt64, UInt8}, ::BigInt) at gmp.jl:544
...
Stacktrace:
[1] TwoDGrid(nx::GPU, Lx::Int64, ny::Float64, Ly::Int64; x0::Float64, y0::Float64, nthreads::Int64, effort::UInt32, T::Type{Float64}, dealias::Float64, ArrayType::Type)
@ FourierFlows /g/data/v45/nc3020/.julia/packages/FourierFlows/e7mT6/src/domains.jl:126
[2] TwoDGrid(nx::GPU, Lx::Int64, ny::Float64, Ly::Int64) (repeats 2 times)
@ FourierFlows /g/data/v45/nc3020/.julia/packages/FourierFlows/e7mT6/src/domains.jl:126
[3] top-level scope
@ REPL[2]:1
[4] top-level scope
@ /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/src/initialization.jl:81
julia>
shell> nvidia-smi
Sun May 9 07:45:48 2021
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 460.32.03 Driver Version: 460.32.03 CUDA Version: 11.2 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|===============================+======================+======================|
| 0 Tesla V100-SXM2... On | 00000000:B1:00.0 Off | 0 |
| N/A 31C P0 56W / 300W | 308MiB / 32510MiB | 0% Default |
| | | N/A |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=============================================================================|
| 0 N/A N/A 1483166 C ...ta/v45/nc3020/julia/julia 305MiB |
+-----------------------------------------------------------------------------+
(testfolder) pkg> st
Status `/g/data/v45/nc3020/testfolder/Project.toml`
[2aec4490] FourierFlows v0.6.18
[44ee3b1c] GeophysicalFlows v0.12.2
shell> cat Manifest.toml
# This file is machine-generated - editing it directly is not advised
[[AbstractFFTs]]
deps = ["LinearAlgebra"]
git-tree-sha1 = "485ee0867925449198280d4af84bdb46a2a404d0"
uuid = "621f4979-c628-5d54-868e-fcf4e3e8185c"
version = "1.0.1"
[[Adapt]]
deps = ["LinearAlgebra"]
git-tree-sha1 = "f1b523983a58802c4695851926203b36e28f09db"
uuid = "79e6a3ab-5dfb-504d-930d-738a2a938a0e"
version = "3.3.0"
[[ArgTools]]
uuid = "0dad84c5-d112-42e6-8d28-ef12dabb789f"
[[Artifacts]]
uuid = "56f22d72-fd6d-98f1-02f0-08ddc0907c33"
[[AxisAlgorithms]]
deps = ["LinearAlgebra", "Random", "SparseArrays", "WoodburyMatrices"]
git-tree-sha1 = "a4d07a1c313392a77042855df46c5f534076fab9"
uuid = "13072b0f-2c55-5437-9ae7-d433b7a33950"
version = "1.0.0"
[[BFloat16s]]
deps = ["LinearAlgebra", "Test"]
git-tree-sha1 = "4af69e205efc343068dc8722b8dfec1ade89254a"
uuid = "ab4f0b2a-ad5b-11e8-123f-65d77653426b"
version = "0.1.0"
[[Base64]]
uuid = "2a0f44e3-6c83-55bd-87e4-b1978d98bd5f"
[[CEnum]]
git-tree-sha1 = "215a9aa4a1f23fbd05b92769fdd62559488d70e9"
uuid = "fa961155-64e5-5f13-b03f-caf6b980ea82"
version = "0.4.1"
[[CUDA]]
deps = ["AbstractFFTs", "Adapt", "BFloat16s", "CEnum", "CompilerSupportLibraries_jll", "DataStructures", "ExprTools", "GPUArrays", "GPUCompiler", "LLVM", "LazyArtifacts", "Libdl", "LinearAlgebra", "Logging", "MacroTools", "Memoize", "Printf", "Random", "RandomNumbers", "Reexport", "Requires", "SparseArrays", "SpecialFunctions", "Statistics", "TimerOutputs"]
git-tree-sha1 = "d4fa6486e94c4087f1d081d7be2d501a170bd51d"
uuid = "052768ef-5323-5732-b1bb-66c8b64840ba"
version = "3.1.0"
[[ChainRulesCore]]
deps = ["Compat", "LinearAlgebra", "SparseArrays"]
git-tree-sha1 = "bd0cc939d94b8bd736dce5bbbe0d635db9f94af7"
uuid = "d360d2e6-b24c-11e9-a2a3-2a2ae2dbcce4"
version = "0.9.41"
[[Compat]]
deps = ["Base64", "Dates", "DelimitedFiles", "Distributed", "InteractiveUtils", "LibGit2", "Libdl", "LinearAlgebra", "Markdown", "Mmap", "Pkg", "Printf", "REPL", "Random", "SHA", "Serialization", "SharedArrays", "Sockets", "SparseArrays", "Statistics", "Test", "UUIDs", "Unicode"]
git-tree-sha1 = "0a817fbe51c976de090aa8c997b7b719b786118d"
uuid = "34da2185-b29b-5c13-b0c7-acf172513d20"
version = "3.28.0"
[[CompilerSupportLibraries_jll]]
deps = ["Artifacts", "Libdl"]
uuid = "e66e0078-7015-5450-92f7-15fbd957f2ae"
[[DataStructures]]
deps = ["Compat", "InteractiveUtils", "OrderedCollections"]
git-tree-sha1 = "4437b64df1e0adccc3e5d1adbc3ac741095e4677"
uuid = "864edb3b-99cc-5e75-8d2d-829cb0a9cfe8"
version = "0.18.9"
[[Dates]]
deps = ["Printf"]
uuid = "ade2ca70-3891-5945-98fb-dc099432e06a"
[[DelimitedFiles]]
deps = ["Mmap"]
uuid = "8bb1440f-4735-579b-a4ab-409b98df4dab"
[[Distributed]]
deps = ["Random", "Serialization", "Sockets"]
uuid = "8ba89e20-285c-5b6f-9357-94700520ee1b"
[[DocStringExtensions]]
deps = ["LibGit2", "Markdown", "Pkg", "Test"]
git-tree-sha1 = "9d4f64f79012636741cf01133158a54b24924c32"
uuid = "ffbed154-4ef7-542d-bbb7-c09d3a79fcae"
version = "0.8.4"
[[Downloads]]
deps = ["ArgTools", "LibCURL", "NetworkOptions"]
uuid = "f43a241f-c20a-4ad4-852c-f6b1247861c6"
[[ExprTools]]
git-tree-sha1 = "10407a39b87f29d47ebaca8edbc75d7c302ff93e"
uuid = "e2ba6199-217a-4e67-a87a-7c52f15ade04"
version = "0.1.3"
[[FFTW]]
deps = ["AbstractFFTs", "FFTW_jll", "LinearAlgebra", "MKL_jll", "Preferences", "Reexport"]
git-tree-sha1 = "746f68839306977040653ebbd249e39c15420b8a"
uuid = "7a1cc6ca-52ef-59f5-83cd-3a7055c09341"
version = "1.4.1"
[[FFTW_jll]]
deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"]
git-tree-sha1 = "5a0d4b6a22a34d17d53543bd124f4b08ed78e8b0"
uuid = "f5851436-0d7a-5f13-b9de-f02708fd171a"
version = "3.3.9+7"
[[FileIO]]
deps = ["Pkg", "Requires", "UUIDs"]
git-tree-sha1 = "d74fd0dae131104471c849f25ba1179fe0fadf47"
uuid = "5789e2e9-d7fb-5bc7-8068-2c6fae9b9549"
version = "1.8.2"
[[FourierFlows]]
deps = ["CUDA", "DocStringExtensions", "FFTW", "Interpolations", "JLD2", "LinearAlgebra", "Random", "Reexport", "Statistics"]
git-tree-sha1 = "e134ecc0cc475af41ade2a337c74a5755e648337"
uuid = "2aec4490-903f-5c70-9b11-9bed06a700e1"
version = "0.6.18"
[[GPUArrays]]
deps = ["AbstractFFTs", "Adapt", "LinearAlgebra", "Printf", "Random", "Serialization", "Statistics"]
git-tree-sha1 = "711b448634c8e1c3597eca3a72aeecf0d19c7d3b"
uuid = "0c68f7d7-f131-5f86-a1c3-88cf8149b2d7"
version = "6.4.0"
[[GPUCompiler]]
deps = ["DataStructures", "ExprTools", "InteractiveUtils", "LLVM", "Libdl", "Logging", "Scratch", "Serialization", "TimerOutputs", "UUIDs"]
git-tree-sha1 = "42d635f6d87af125b86288df3819f805fb4d851a"
uuid = "61eb1bfa-7361-4325-ad38-22787b887f55"
version = "0.11.5"
[[GeophysicalFlows]]
deps = ["CUDA", "DocStringExtensions", "FFTW", "FourierFlows", "JLD2", "LinearAlgebra", "Random", "Reexport", "SpecialFunctions", "StaticArrays", "Statistics"]
git-tree-sha1 = "8ec20ff56f798ca37b09605f23e9be4d8b63673c"
uuid = "44ee3b1c-bc02-53fa-8355-8e347616e15e"
version = "0.12.2"
[[IntelOpenMP_jll]]
deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"]
git-tree-sha1 = "d979e54b71da82f3a65b62553da4fc3d18c9004c"
uuid = "1d5cc7b8-4909-519e-a0f8-d0f5ad9712d0"
version = "2018.0.3+2"
[[InteractiveUtils]]
deps = ["Markdown"]
uuid = "b77e0a4c-d291-57a0-90e8-8db25a27a240"
[[Interpolations]]
deps = ["AxisAlgorithms", "LinearAlgebra", "OffsetArrays", "Random", "Ratios", "SharedArrays", "SparseArrays", "StaticArrays", "WoodburyMatrices"]
git-tree-sha1 = "1e0e51692a3a77f1eeb51bf741bdd0439ed210e7"
uuid = "a98d9a8b-a2ab-59e6-89dd-64a1c18fca59"
version = "0.13.2"
[[JLD2]]
deps = ["DataStructures", "FileIO", "MacroTools", "Mmap", "Pkg", "Printf", "Reexport", "Requires", "TranscodingStreams", "UUIDs"]
git-tree-sha1 = "c50e77bb661b0e5aea126404246b07c7937691c5"
uuid = "033835bb-8acc-5ee8-8aae-3f567f8a3819"
version = "0.4.5"
[[JLLWrappers]]
deps = ["Preferences"]
git-tree-sha1 = "642a199af8b68253517b80bd3bfd17eb4e84df6e"
uuid = "692b3bcd-3c85-4b1f-b108-f13ce0eb3210"
version = "1.3.0"
[[LLVM]]
deps = ["CEnum", "Libdl", "Printf", "Unicode"]
git-tree-sha1 = "a220efe4a6bc1c71809d002eb9ed9209ce5a86fb"
uuid = "929cbde3-209d-540e-8aea-75f648917ca0"
version = "3.7.0"
[[LazyArtifacts]]
deps = ["Artifacts", "Pkg"]
uuid = "4af54fe1-eca0-43a8-85a7-787d91b784e3"
[[LibCURL]]
deps = ["LibCURL_jll", "MozillaCACerts_jll"]
uuid = "b27032c2-a3e7-50c8-80cd-2d36dbcbfd21"
[[LibCURL_jll]]
deps = ["Artifacts", "LibSSH2_jll", "Libdl", "MbedTLS_jll", "Zlib_jll", "nghttp2_jll"]
uuid = "deac9b47-8bc7-5906-a0fe-35ac56dc84c0"
[[LibGit2]]
deps = ["Base64", "NetworkOptions", "Printf", "SHA"]
uuid = "76f85450-5226-5b5a-8eaa-529ad045b433"
[[LibSSH2_jll]]
deps = ["Artifacts", "Libdl", "MbedTLS_jll"]
uuid = "29816b5a-b9ab-546f-933c-edad1886dfa8"
[[Libdl]]
uuid = "8f399da3-3557-5675-b5ff-fb832c97cbdb"
[[LinearAlgebra]]
deps = ["Libdl"]
uuid = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e"
[[Logging]]
uuid = "56ddb016-857b-54e1-b83d-db4d58db5568"
[[MKL_jll]]
deps = ["Artifacts", "IntelOpenMP_jll", "JLLWrappers", "LazyArtifacts", "Libdl", "Pkg"]
git-tree-sha1 = "c253236b0ed414624b083e6b72bfe891fbd2c7af"
uuid = "856f044c-d86e-5d09-b602-aeab76dc8ba7"
version = "2021.1.1+1"
[[MacroTools]]
deps = ["Markdown", "Random"]
git-tree-sha1 = "6a8a2a625ab0dea913aba95c11370589e0239ff0"
uuid = "1914dd2f-81c6-5fcd-8719-6d5c9610ff09"
version = "0.5.6"
[[Markdown]]
deps = ["Base64"]
uuid = "d6f4376e-aef5-505a-96c1-9c027394607a"
[[MbedTLS_jll]]
deps = ["Artifacts", "Libdl"]
uuid = "c8ffd9c3-330d-5841-b78e-0817d7145fa1"
[[Memoize]]
deps = ["MacroTools"]
git-tree-sha1 = "2b1dfcba103de714d31c033b5dacc2e4a12c7caa"
uuid = "c03570c3-d221-55d1-a50c-7939bbd78826"
version = "0.4.4"
[[Mmap]]
uuid = "a63ad114-7e13-5084-954f-fe012c677804"
[[MozillaCACerts_jll]]
uuid = "14a3606d-f60d-562e-9121-12d972cd8159"
[[NetworkOptions]]
uuid = "ca575930-c2e3-43a9-ace4-1e988b2c1908"
[[OffsetArrays]]
deps = ["Adapt"]
git-tree-sha1 = "87a728aebb76220bd72855e1c85284c5fdb9774c"
uuid = "6fe1bfb0-de20-5000-8ca7-80f57d26f881"
version = "1.7.0"
[[OpenSpecFun_jll]]
deps = ["Artifacts", "CompilerSupportLibraries_jll", "JLLWrappers", "Libdl", "Pkg"]
git-tree-sha1 = "b9b8b8ed236998f91143938a760c2112dceeb2b4"
uuid = "efe28fd5-8261-553b-a9e1-b2916fc3738e"
version = "0.5.4+0"
[[OrderedCollections]]
git-tree-sha1 = "4fa2ba51070ec13fcc7517db714445b4ab986bdf"
uuid = "bac558e1-5e72-5ebc-8fee-abe8a469f55d"
version = "1.4.0"
[[Pkg]]
deps = ["Artifacts", "Dates", "Downloads", "LibGit2", "Libdl", "Logging", "Markdown", "Printf", "REPL", "Random", "SHA", "Serialization", "TOML", "Tar", "UUIDs", "p7zip_jll"]
uuid = "44cfe95a-1eb2-52ea-b672-e2afdf69b78f"
[[Preferences]]
deps = ["TOML"]
git-tree-sha1 = "ea79e4c9077208cd3bc5d29631a26bc0cff78902"
uuid = "21216c6a-2e73-6563-6e65-726566657250"
version = "1.2.1"
[[Printf]]
deps = ["Unicode"]
uuid = "de0858da-6303-5e67-8744-51eddeeeb8d7"
[[REPL]]
deps = ["InteractiveUtils", "Markdown", "Sockets", "Unicode"]
uuid = "3fa0cd96-eef1-5676-8a61-b3b8758bbffb"
[[Random]]
deps = ["Serialization"]
uuid = "9a3f8284-a2c9-5f02-9a11-845980a1fd5c"
[[RandomNumbers]]
deps = ["Random", "Requires"]
git-tree-sha1 = "441e6fc35597524ada7f85e13df1f4e10137d16f"
uuid = "e6cf234a-135c-5ec9-84dd-332b85af5143"
version = "1.4.0"
[[Ratios]]
git-tree-sha1 = "37d210f612d70f3f7d57d488cb3b6eff56ad4e41"
uuid = "c84ed2f1-dad5-54f0-aa8e-dbefe2724439"
version = "0.4.0"
[[Reexport]]
git-tree-sha1 = "57d8440b0c7d98fc4f889e478e80f268d534c9d5"
uuid = "189a3867-3050-52da-a836-e630ba90ab69"
version = "1.0.0"
[[Requires]]
deps = ["UUIDs"]
git-tree-sha1 = "4036a3bd08ac7e968e27c203d45f5fff15020621"
uuid = "ae029012-a4dd-5104-9daa-d747884805df"
version = "1.1.3"
[[SHA]]
uuid = "ea8e919c-243c-51af-8825-aaa63cd721ce"
[[Scratch]]
deps = ["Dates"]
git-tree-sha1 = "ad4b278adb62d185bbcb6864dc24959ab0627bf6"
uuid = "6c6a2e73-6563-6170-7368-637461726353"
version = "1.0.3"
[[Serialization]]
uuid = "9e88b42a-f829-5b0c-bbe9-9e923198166b"
[[SharedArrays]]
deps = ["Distributed", "Mmap", "Random", "Serialization"]
uuid = "1a1011a3-84de-559e-8e89-a11a2f7dc383"
[[Sockets]]
uuid = "6462fe0b-24de-5631-8697-dd941f90decc"
[[SparseArrays]]
deps = ["LinearAlgebra", "Random"]
uuid = "2f01184e-e22b-5df5-ae63-d93ebab69eaf"
[[SpecialFunctions]]
deps = ["ChainRulesCore", "OpenSpecFun_jll"]
git-tree-sha1 = "5919936c0e92cff40e57d0ddf0ceb667d42e5902"
uuid = "276daf66-3868-5448-9aa4-cd146d93841b"
version = "1.3.0"
[[StaticArrays]]
deps = ["LinearAlgebra", "Random", "Statistics"]
git-tree-sha1 = "fb46e45ef2cade8be20bb445b3ffeca3c6d6f7d3"
uuid = "90137ffa-7385-5640-81b9-e52037218182"
version = "1.1.3"
[[Statistics]]
deps = ["LinearAlgebra", "SparseArrays"]
uuid = "10745b16-79ce-11e8-11f9-7d13ad32a3b2"
[[TOML]]
deps = ["Dates"]
uuid = "fa267f1f-6049-4f14-aa54-33bafae1ed76"
[[Tar]]
deps = ["ArgTools", "SHA"]
uuid = "a4e569a6-e804-4fa4-b0f3-eef7a1d5b13e"
[[Test]]
deps = ["InteractiveUtils", "Logging", "Random", "Serialization"]
uuid = "8dfed614-e22c-5e08-85e1-65c5234f0b40"
[[TimerOutputs]]
deps = ["Printf"]
git-tree-sha1 = "32cdbe6cd2d214c25a0b88f985c9e0092877c236"
uuid = "a759f4b9-e2f1-59dc-863e-4aeb61b1ea8f"
version = "0.5.8"
[[TranscodingStreams]]
deps = ["Random", "Test"]
git-tree-sha1 = "7c53c35547de1c5b9d46a4797cf6d8253807108c"
uuid = "3bb67fe8-82b1-5028-8e26-92a6c54297fa"
version = "0.9.5"
[[UUIDs]]
deps = ["Random", "SHA"]
uuid = "cf7118a7-6976-5b1a-9a39-7adc72f591a4"
[[Unicode]]
uuid = "4ec0a83e-493e-50e2-b9ac-8f72acf5a8f5"
[[WoodburyMatrices]]
deps = ["LinearAlgebra", "SparseArrays"]
git-tree-sha1 = "59e2ad8fd1591ea019a5259bd012d7aee15f995c"
uuid = "efce3f68-66dc-5838-9240-27a6d6f5f9b6"
version = "0.5.3"
[[Zlib_jll]]
deps = ["Libdl"]
uuid = "83775a58-1f1d-513f-b197-d71354ab007a"
[[nghttp2_jll]]
deps = ["Artifacts", "Libdl"]
uuid = "8e850ede-7688-5339-a07c-302acd2aaf8d"
[[p7zip_jll]]
deps = ["Artifacts", "Libdl"]
uuid = "3f19e933-33d8-53b3-aaab-bd5110c3b7a0"
What's also confusing is that
https://github.com/FourierFlows/FourierFlows.jl/blob/844684479013516ceb4a2ddd8909470f4d60973f/src/FourierFlows.jl#L114-L117
is not part of the __init()__
function. So it should be executed every time CUDA.has_cuda()
is true, no?
I agree, maybe we could add a debug string here to monitor if it is loaded or not ?
I agree, maybe we could add a debug string here to monitor if it is loaded or not ?
@liasiegelman, did you try on bruno with Julia 1.6 to call using FourierFlows
? Is GPU functionality available?
@navidcy I didn't. currently running julia1.5.3 and cuda v2.3.0 on bruno, can try on monday if we don't figure it out by then
Seems that include("CuFourierFlows.jl") is never called... why? I even deleted the
.julia` folder whatsoever to make sure nothing clashes...
(base) [nc3020@gadi-gpu-v100-0023 testfolder2]$ JULIA_DEBUG=all julia --project
_
_ _ _(_)_ | Documentation: https://docs.julialang.org
(_) | (_) (_) |
_ _ _| |_ __ _ | Type "?" for help, "]?" for Pkg help.
| | | | | | |/ _` | |
| | |_| | | | (_| | | Version 1.6.1 (2021-04-23)
_/ |\__'_|_|_|\__'_| |
|__/ |
(testfolder2) pkg> st
Status `/g/data/v45/nc3020/testfolder2/Project.toml`
[2aec4490] FourierFlows v0.6.18 `https://github.com/FourierFlows/FourierFlows.jl.git#master`
julia> using FourierFlows
┌ Debug: Creating new cache for "/g/data/v45/nc3020/testfolder2/Manifest.toml"
└ @ Base loading.jl:225
┌ Debug: Creating new cache for "/g/data/v45/nc3020/julia/usr/share/julia/stdlib/v1.6/CompilerSupportLibraries_jll/Project.toml"
└ @ Base loading.jl:225
┌ Debug: Using LLVM 11.0.1 at /g/data/v45/nc3020/julia/usr/bin/../lib/libLLVM-11jl.so
└ @ LLVM /g/data/v45/nc3020/.julia/packages/LLVM/hHQuD/src/LLVM.jl:85
[ Info: FourierFlows will use 48 threads
┌ Debug: Initializing CUDA driver
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/src/initialization.jl:100
┌ Debug: Trying to use local installation...
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/bindeps.jl:225
┌ Debug: Looking for CUDA toolkit via environment variables CUDA_HOME, CUDA_ROOT
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:401
┌ Debug: Request to look for binary nvdisasm
│ locations =
│ 1-element Vector{String}:
│ "/apps/cuda/11.2.2"
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:119
┌ Debug: Looking for binary nvdisasm
│ locations =
│ 2-element Vector{String}:
│ "/apps/cuda/11.2.2"
│ "/apps/cuda/11.2.2/bin"
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:129
┌ Debug: Found binary nvdisasm at /apps/cuda/11.2.2/bin/nvdisasm
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:135
┌ Debug: Request to look for binary compute-sanitizer
│ locations =
│ 1-element Vector{String}:
│ "/apps/cuda/11.2.2"
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:119
┌ Debug: Looking for binary compute-sanitizer
│ locations =
│ 2-element Vector{String}:
│ "/apps/cuda/11.2.2"
│ "/apps/cuda/11.2.2/bin"
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:129
┌ Debug: Found binary compute-sanitizer at /apps/cuda/11.2.2/bin/compute-sanitizer
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:135
┌ Debug: CUDA toolkit identified as 11.2.2 (providing nvdisasm 11.2.152)
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:485
┌ Debug: Request to look for library cublas 11.4.1
│ locations =
│ 1-element Vector{String}:
│ "/apps/cuda/11.2.2"
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:80
┌ Debug: Looking for library libcublas.so.11.4.1, libcublas.so.11.4, libcublas.so.11
│ locations =
│ 4-element Vector{String}:
│ "/apps/cuda/11.2.2"
│ "/apps/cuda/11.2.2/lib"
│ "/apps/cuda/11.2.2/lib64"
│ "/apps/cuda/11.2.2/libx64"
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:100
┌ Debug: Found library libcublas.so.11 at /apps/cuda/11.2.2/lib64
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:108
┌ Debug: Request to look for library cusparse 11.4.1
│ locations =
│ 1-element Vector{String}:
│ "/apps/cuda/11.2.2"
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:80
┌ Debug: Looking for library libcusparse.so.11.4.1, libcusparse.so.11.4, libcusparse.so.11
│ locations =
│ 4-element Vector{String}:
│ "/apps/cuda/11.2.2"
│ "/apps/cuda/11.2.2/lib"
│ "/apps/cuda/11.2.2/lib64"
│ "/apps/cuda/11.2.2/libx64"
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:100
┌ Debug: Found library libcusparse.so.11 at /apps/cuda/11.2.2/lib64
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:108
┌ Debug: Request to look for library cusolver 11.1.0
│ locations =
│ 1-element Vector{String}:
│ "/apps/cuda/11.2.2"
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:80
┌ Debug: Looking for library libcusolver.so.11.1.0, libcusolver.so.11.1, libcusolver.so.11
│ locations =
│ 4-element Vector{String}:
│ "/apps/cuda/11.2.2"
│ "/apps/cuda/11.2.2/lib"
│ "/apps/cuda/11.2.2/lib64"
│ "/apps/cuda/11.2.2/libx64"
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:100
┌ Debug: Found library libcusolver.so.11 at /apps/cuda/11.2.2/lib64
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:108
┌ Debug: Request to look for library cufft 10.4.1
│ locations =
│ 1-element Vector{String}:
│ "/apps/cuda/11.2.2"
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:80
┌ Debug: Looking for library libcufft.so.10.4.1, libcufft.so.10.4, libcufft.so.10
│ locations =
│ 4-element Vector{String}:
│ "/apps/cuda/11.2.2"
│ "/apps/cuda/11.2.2/lib"
│ "/apps/cuda/11.2.2/lib64"
│ "/apps/cuda/11.2.2/libx64"
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:100
┌ Debug: Found library libcufft.so.10 at /apps/cuda/11.2.2/lib64
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:108
┌ Debug: Request to look for library curand 10.2.3
│ locations =
│ 1-element Vector{String}:
│ "/apps/cuda/11.2.2"
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:80
┌ Debug: Looking for library libcurand.so.10.2.3, libcurand.so.10.2, libcurand.so.10
│ locations =
│ 4-element Vector{String}:
│ "/apps/cuda/11.2.2"
│ "/apps/cuda/11.2.2/lib"
│ "/apps/cuda/11.2.2/lib64"
│ "/apps/cuda/11.2.2/libx64"
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:100
┌ Debug: Found library libcurand.so.10 at /apps/cuda/11.2.2/lib64
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:108
┌ Debug: Request to look for library cupti 2020.3.1
│ locations =
│ 2-element Vector{String}:
│ "/apps/cuda/11.2.2"
│ "/apps/cuda/11.2.2/extras/CUPTI"
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:80
┌ Debug: Looking for library libcupti.so.2020.3.1
│ locations =
│ 8-element Vector{String}:
│ "/apps/cuda/11.2.2"
│ "/apps/cuda/11.2.2/lib"
│ "/apps/cuda/11.2.2/lib64"
│ "/apps/cuda/11.2.2/libx64"
│ "/apps/cuda/11.2.2/extras/CUPTI"
│ "/apps/cuda/11.2.2/extras/CUPTI/lib"
│ "/apps/cuda/11.2.2/extras/CUPTI/lib64"
│ "/apps/cuda/11.2.2/extras/CUPTI/libx64"
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:100
┌ Debug: Found library libcupti.so.2020.3.1 at /apps/cuda/11.2.2/extras/CUPTI/lib64
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:108
┌ Debug: Request to look for library nvToolsExt 1.0.0
│ locations =
│ 2-element Vector{String}:
│ "/apps/cuda/11.2.2"
│ "/apps/cuda/11.2.2/extras/CUPTI"
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:80
┌ Debug: Looking for library libnvToolsExt.so.1.0.0, libnvToolsExt.so.1.0, libnvToolsExt.so.1
│ locations =
│ 8-element Vector{String}:
│ "/apps/cuda/11.2.2"
│ "/apps/cuda/11.2.2/lib"
│ "/apps/cuda/11.2.2/lib64"
│ "/apps/cuda/11.2.2/libx64"
│ "/apps/cuda/11.2.2/extras/CUPTI"
│ "/apps/cuda/11.2.2/extras/CUPTI/lib"
│ "/apps/cuda/11.2.2/extras/CUPTI/lib64"
│ "/apps/cuda/11.2.2/extras/CUPTI/libx64"
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:100
┌ Debug: Found library libnvToolsExt.so.1.0.0 at /apps/cuda/11.2.2/lib64
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:108
┌ Debug: Request to look for libcudadevrt
│ locations =
│ 2-element Vector{String}:
│ "/apps/cuda/11.2.2"
│ "/apps/cuda/11.2.2/extras/CUPTI"
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:539
┌ Debug: Looking for CUDA device runtime library libcudadevrt.a
│ locations =
│ 6-element Vector{String}:
│ "/apps/cuda/11.2.2"
│ "/apps/cuda/11.2.2/lib"
│ "/apps/cuda/11.2.2/lib64"
│ "/apps/cuda/11.2.2/extras/CUPTI"
│ "/apps/cuda/11.2.2/extras/CUPTI/lib"
│ "/apps/cuda/11.2.2/extras/CUPTI/lib64"
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:568
┌ Debug: Found CUDA device runtime library libcudadevrt.a at /apps/cuda/11.2.2/lib64
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:575
┌ Debug: Request to look for libdevice
│ locations =
│ 2-element Vector{String}:
│ "/apps/cuda/11.2.2"
│ "/apps/cuda/11.2.2/extras/CUPTI"
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:506
┌ Debug: Look for libdevice
│ locations =
│ 3-element Vector{String}:
│ "/apps/cuda/11.2.2"
│ "/apps/cuda/11.2.2/nvvm/libdevice"
│ "/apps/cuda/11.2.2/extras/CUPTI"
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:518
┌ Debug: Found unified device library at /apps/cuda/11.2.2/nvvm/libdevice/libdevice.10.bc
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:523
┌ Debug: Request to look for library cublas 11.4.1
│ locations =
│ 2-element Vector{String}:
│ "/apps/cuda/11.2.2"
│ "/apps/cuda/11.2.2/extras/CUPTI"
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:80
┌ Debug: Looking for library libcublas.so.11.4.1, libcublas.so.11.4, libcublas.so.11
│ locations =
│ 8-element Vector{String}:
│ "/apps/cuda/11.2.2"
│ "/apps/cuda/11.2.2/lib"
│ "/apps/cuda/11.2.2/lib64"
│ "/apps/cuda/11.2.2/libx64"
│ "/apps/cuda/11.2.2/extras/CUPTI"
│ "/apps/cuda/11.2.2/extras/CUPTI/lib"
│ "/apps/cuda/11.2.2/extras/CUPTI/lib64"
│ "/apps/cuda/11.2.2/extras/CUPTI/libx64"
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:100
┌ Debug: Found library libcublas.so.11 at /apps/cuda/11.2.2/lib64
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:108
┌ Debug: Request to look for library cusparse 11.4.1
│ locations =
│ 2-element Vector{String}:
│ "/apps/cuda/11.2.2"
│ "/apps/cuda/11.2.2/extras/CUPTI"
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:80
┌ Debug: Looking for library libcusparse.so.11.4.1, libcusparse.so.11.4, libcusparse.so.11
│ locations =
│ 8-element Vector{String}:
│ "/apps/cuda/11.2.2"
│ "/apps/cuda/11.2.2/lib"
│ "/apps/cuda/11.2.2/lib64"
│ "/apps/cuda/11.2.2/libx64"
│ "/apps/cuda/11.2.2/extras/CUPTI"
│ "/apps/cuda/11.2.2/extras/CUPTI/lib"
│ "/apps/cuda/11.2.2/extras/CUPTI/lib64"
│ "/apps/cuda/11.2.2/extras/CUPTI/libx64"
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:100
┌ Debug: Found library libcusparse.so.11 at /apps/cuda/11.2.2/lib64
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:108
┌ Debug: Request to look for library cusolver 11.1.0
│ locations =
│ 2-element Vector{String}:
│ "/apps/cuda/11.2.2"
│ "/apps/cuda/11.2.2/extras/CUPTI"
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:80
┌ Debug: Looking for library libcusolver.so.11.1.0, libcusolver.so.11.1, libcusolver.so.11
│ locations =
│ 8-element Vector{String}:
│ "/apps/cuda/11.2.2"
│ "/apps/cuda/11.2.2/lib"
│ "/apps/cuda/11.2.2/lib64"
│ "/apps/cuda/11.2.2/libx64"
│ "/apps/cuda/11.2.2/extras/CUPTI"
│ "/apps/cuda/11.2.2/extras/CUPTI/lib"
│ "/apps/cuda/11.2.2/extras/CUPTI/lib64"
│ "/apps/cuda/11.2.2/extras/CUPTI/libx64"
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:100
┌ Debug: Found library libcusolver.so.11 at /apps/cuda/11.2.2/lib64
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:108
┌ Debug: Request to look for library cufft 10.4.1
│ locations =
│ 2-element Vector{String}:
│ "/apps/cuda/11.2.2"
│ "/apps/cuda/11.2.2/extras/CUPTI"
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:80
┌ Debug: Looking for library libcufft.so.10.4.1, libcufft.so.10.4, libcufft.so.10
│ locations =
│ 8-element Vector{String}:
│ "/apps/cuda/11.2.2"
│ "/apps/cuda/11.2.2/lib"
│ "/apps/cuda/11.2.2/lib64"
│ "/apps/cuda/11.2.2/libx64"
│ "/apps/cuda/11.2.2/extras/CUPTI"
│ "/apps/cuda/11.2.2/extras/CUPTI/lib"
│ "/apps/cuda/11.2.2/extras/CUPTI/lib64"
│ "/apps/cuda/11.2.2/extras/CUPTI/libx64"
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:100
┌ Debug: Found library libcufft.so.10 at /apps/cuda/11.2.2/lib64
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:108
┌ Debug: Request to look for library curand 10.2.3
│ locations =
│ 2-element Vector{String}:
│ "/apps/cuda/11.2.2"
│ "/apps/cuda/11.2.2/extras/CUPTI"
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:80
┌ Debug: Looking for library libcurand.so.10.2.3, libcurand.so.10.2, libcurand.so.10
│ locations =
│ 8-element Vector{String}:
│ "/apps/cuda/11.2.2"
│ "/apps/cuda/11.2.2/lib"
│ "/apps/cuda/11.2.2/lib64"
│ "/apps/cuda/11.2.2/libx64"
│ "/apps/cuda/11.2.2/extras/CUPTI"
│ "/apps/cuda/11.2.2/extras/CUPTI/lib"
│ "/apps/cuda/11.2.2/extras/CUPTI/lib64"
│ "/apps/cuda/11.2.2/extras/CUPTI/libx64"
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:100
┌ Debug: Found library libcurand.so.10 at /apps/cuda/11.2.2/lib64
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:108
┌ Debug: Request to look for library cusolverMg 11.1.0
│ locations =
│ 2-element Vector{String}:
│ "/apps/cuda/11.2.2"
│ "/apps/cuda/11.2.2/extras/CUPTI"
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:80
┌ Debug: Looking for library libcusolverMg.so.11.1.0, libcusolverMg.so.11.1, libcusolverMg.so.11
│ locations =
│ 8-element Vector{String}:
│ "/apps/cuda/11.2.2"
│ "/apps/cuda/11.2.2/lib"
│ "/apps/cuda/11.2.2/lib64"
│ "/apps/cuda/11.2.2/libx64"
│ "/apps/cuda/11.2.2/extras/CUPTI"
│ "/apps/cuda/11.2.2/extras/CUPTI/lib"
│ "/apps/cuda/11.2.2/extras/CUPTI/lib64"
│ "/apps/cuda/11.2.2/extras/CUPTI/libx64"
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:100
┌ Debug: Found library libcusolverMg.so.11 at /apps/cuda/11.2.2/lib64
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:108
┌ Debug: Found local CUDA 11.2.2 at /apps/cuda/11.2.2, /apps/cuda/11.2.2/extras/CUPTI
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/bindeps.jl:296
┌ Debug: Request to look for library cudnn 8.0.0
│ locations =
│ 2-element Vector{String}:
│ "/apps/cuda/11.2.2"
│ "/apps/cuda/11.2.2/extras/CUPTI"
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:80
┌ Debug: Looking for library libcudnn.so.8.0.0, libcudnn.so.8.0, libcudnn.so.8
│ locations =
│ 8-element Vector{String}:
│ "/apps/cuda/11.2.2"
│ "/apps/cuda/11.2.2/lib"
│ "/apps/cuda/11.2.2/lib64"
│ "/apps/cuda/11.2.2/libx64"
│ "/apps/cuda/11.2.2/extras/CUPTI"
│ "/apps/cuda/11.2.2/extras/CUPTI/lib"
│ "/apps/cuda/11.2.2/extras/CUPTI/lib64"
│ "/apps/cuda/11.2.2/extras/CUPTI/libx64"
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:100
┌ Debug: Request to look for library cutensor 1.0.0
│ locations =
│ 2-element Vector{String}:
│ "/apps/cuda/11.2.2"
│ "/apps/cuda/11.2.2/extras/CUPTI"
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:80
┌ Debug: Looking for library libcutensor.so.1.0.0, libcutensor.so.1.0, libcutensor.so.1
│ locations =
│ 8-element Vector{String}:
│ "/apps/cuda/11.2.2"
│ "/apps/cuda/11.2.2/lib"
│ "/apps/cuda/11.2.2/lib64"
│ "/apps/cuda/11.2.2/libx64"
│ "/apps/cuda/11.2.2/extras/CUPTI"
│ "/apps/cuda/11.2.2/extras/CUPTI/lib"
│ "/apps/cuda/11.2.2/extras/CUPTI/lib64"
│ "/apps/cuda/11.2.2/extras/CUPTI/libx64"
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:100
┌ Debug: Request to look for library cutensor nothing
│ locations =
│ 2-element Vector{String}:
│ "/apps/cuda/11.2.2"
│ "/apps/cuda/11.2.2/extras/CUPTI"
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:80
┌ Debug: Looking for library libcutensor.so
│ locations =
│ 8-element Vector{String}:
│ "/apps/cuda/11.2.2"
│ "/apps/cuda/11.2.2/lib"
│ "/apps/cuda/11.2.2/lib64"
│ "/apps/cuda/11.2.2/libx64"
│ "/apps/cuda/11.2.2/extras/CUPTI"
│ "/apps/cuda/11.2.2/extras/CUPTI/lib"
│ "/apps/cuda/11.2.2/extras/CUPTI/lib64"
│ "/apps/cuda/11.2.2/extras/CUPTI/libx64"
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/discovery.jl:100
┌ Debug: Toolchain with LLVM 11.0.1, CUDA driver 11.2.0 and toolkit 11.2.2 supports devices 3.5, 3.7, 5.0, 5.2, 5.3, 6.0, 6.1, 6.2, 7.0, 7.2, 7.5 and 8.0; PTX 3.2, 4.0, 4.1, 4.2, 4.3, 5.0, 6.0, 6.1, 6.3, 6.4, 6.5 and 7.0
└ @ CUDA /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/deps/compatibility.jl:227
┌ Debug: CUDA-enabled GPU(s) detected:
└ @ FourierFlows /g/data/v45/nc3020/.julia/packages/FourierFlows/CPu74/src/FourierFlows.jl:128
┌ Debug: CUDA.CuDevice(0): Tesla V100-SXM2-32GB
└ @ FourierFlows /g/data/v45/nc3020/.julia/packages/FourierFlows/CPu74/src/FourierFlows.jl:130
julia> TwoDGrid(GPU(), 10, 2.0)
ERROR: MethodError: no method matching /(::Int64, ::GPU)
Closest candidates are:
/(::Union{Int128, Int16, Int32, Int64, Int8, UInt128, UInt16, UInt32, UInt64, UInt8}, ::Union{Int128, Int16, Int32, Int64, Int8, UInt128, UInt16, UInt32, UInt64, UInt8}) at int.jl:93
/(::Union{Integer, Complex{var"#s79"} where var"#s79"<:Union{Integer, Rational}}, ::Rational) at rational.jl:322
/(::Union{Int16, Int32, Int64, Int8, UInt16, UInt32, UInt64, UInt8}, ::BigInt) at gmp.jl:544
...
Stacktrace:
[1] TwoDGrid(nx::GPU, Lx::Int64, ny::Float64, Ly::Int64; x0::Float64, y0::Float64, nthreads::Int64, effort::UInt32, T::Type{Float64}, dealias::Float64, ArrayType::Type)
@ FourierFlows /g/data/v45/nc3020/.julia/packages/FourierFlows/CPu74/src/domains.jl:126
[2] TwoDGrid(nx::GPU, Lx::Int64, ny::Float64, Ly::Int64) (repeats 2 times)
@ FourierFlows /g/data/v45/nc3020/.julia/packages/FourierFlows/CPu74/src/domains.jl:126
[3] top-level scope
@ REPL[3]:1
[4] top-level scope
@ /g/data/v45/nc3020/.julia/packages/CUDA/k52QH/src/initialization.jl:81
this is weird. Would it be an option to put include("CuFourierFlows.jl") inside the init function in the if CUDA.has_cuda() ?
I'm closing this...
There is some discussion on running FourierFlows.jl on GPUs in the docs but perhaps, we should revisit it to add clarifications. I'm raising while in despair being confused and puzzled with why FourierFlows is unable to "see" the GPU sometimes on an HPC cluster.
cc @liasiegelman