From 1ae23e1c0617925cf9f9856b594c23f571978f5a Mon Sep 17 00:00:00 2001 From: Navid Constantinou Date: Wed, 22 Apr 2020 19:02:24 +1000 Subject: [PATCH 1/6] tests run on julia v1.4 --- .gitlab-ci.yml | 4 ++-- .travis.yml | 4 ++-- appveyor.yml | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index c5bca26a..5755a52c 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -20,7 +20,7 @@ julia:1.0: julia:1.3: image: juliagpu/cuda:10.1-cudnn7-cutensor1-devel-ubuntu18.04 extends: - - .julia:1.3 + - .julia:1.4 - .test tags: - nvidia @@ -31,5 +31,5 @@ julia:1.3: # other tasks coverage: extends: - - .julia:1.3 + - .julia:1.4 - .coverage diff --git a/.travis.yml b/.travis.yml index 058ed2f0..d93372c7 100644 --- a/.travis.yml +++ b/.travis.yml @@ -5,7 +5,7 @@ os: - linux julia: - - 1.3 + - 1.4 - nightly matrix: @@ -19,7 +19,7 @@ matrix: jobs: include: - stage: "Documentation" - julia: 1.3 + julia: 1.4 os: linux script: - julia --project=docs/ -e 'using Pkg; Pkg.instantiate(); diff --git a/appveyor.yml b/appveyor.yml index de9bd7aa..b94732d5 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -1,6 +1,6 @@ environment: matrix: - - julia_version: 1.3 + - julia_version: 1.4 - julia_version: nightly platform: From caacfcb9d7f7d6abbdf7f33a4d67897deaf4664a Mon Sep 17 00:00:00 2001 From: Navid Constantinou Date: Wed, 22 Apr 2020 19:02:39 +1000 Subject: [PATCH 2/6] bump CuArrays to ^2 --- Project.toml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Project.toml b/Project.toml index 94f26df9..9be2dc81 100644 --- a/Project.toml +++ b/Project.toml @@ -17,12 +17,12 @@ SpecialFunctions = "276daf66-3868-5448-9aa4-cd146d93841b" Statistics = "10745b16-79ce-11e8-11f9-7d13ad32a3b2" [compat] -CuArrays = "^1" +CuArrays = "^1, ^2" FFTW = "^1" FourierFlows = "^0.4" JLD2 = "^0.1" Reexport = "^0.2" -SpecialFunctions = "^0.8, ^1, 0.10" +SpecialFunctions = "^0.8, 0.10, ^1" julia = "^1" [extras] From 4c284499c223bec7b1011d296ee976efd6473edc Mon Sep 17 00:00:00 2001 From: Navid Constantinou Date: Wed, 22 Apr 2020 20:34:56 +1000 Subject: [PATCH 3/6] fixes drag function conflict in cuda --- src/barotropicqg.jl | 6 ++---- src/barotropicqgql.jl | 6 ++---- test/test_barotropicqg.jl | 2 -- 3 files changed, 4 insertions(+), 10 deletions(-) diff --git a/src/barotropicqg.jl b/src/barotropicqg.jl index 5e243764..76597622 100644 --- a/src/barotropicqg.jl +++ b/src/barotropicqg.jl @@ -384,13 +384,11 @@ end Returns the extraction of domain-averaged energy by drag μ. """ -@inline function drag(sol, v, p, g) +@inline function drag(prob) + sol, v, p, g = prob.sol, prob.vars, prob.params, prob.grid @. v.uh = g.Krsq^(-1) * abs2(sol) v.uh[1, 1] = 0 p.μ/(g.Lx*g.Ly)*FourierFlows.parsevalsum(v.uh, g) end -@inline drag(prob) = drag(prob.sol, prob.vars, prob.params, prob.grid) - - end # module diff --git a/src/barotropicqgql.jl b/src/barotropicqgql.jl index 0c66832a..04a2560f 100644 --- a/src/barotropicqgql.jl +++ b/src/barotropicqgql.jl @@ -414,13 +414,11 @@ end Returns the extraction of domain-averaged energy by drag mu. """ -@inline function drag(sol, v, p, g) +@inline function drag(prob) + sol, v, p, g = prob.sol, prob.vars, prob.params, prob.grid @. v.uh = g.Krsq^(-1) * abs2(sol) v.uh[1, 1] = 0 p.mu/(g.Lx*g.Ly)*parsevalsum(v.uh, g) end -@inline drag(prob) = drag(prob.sol, prob.vars, prob.params, prob.grid) - - end # module diff --git a/test/test_barotropicqg.jl b/test/test_barotropicqg.jl index 66218ebb..2b44dbf2 100644 --- a/test/test_barotropicqg.jl +++ b/test/test_barotropicqg.jl @@ -161,8 +161,6 @@ function test_bqg_deterministicforcingbudgets(dev::Device=CPU(); n=256, dt=0.01, BarotropicQG.updatevars!(prob) - cfl = cl.dt*maximum([maximum(v.v)/g.dx, maximum(v.u)/g.dy]) - E, D, W, R = diags t = round(μ*cl.t, digits=2) From 4a242eb3b228456282f39c559c08df545ed26ef3 Mon Sep 17 00:00:00 2001 From: Navid Constantinou Date: Wed, 22 Apr 2020 20:52:16 +1000 Subject: [PATCH 4/6] fixes drag to comply with cuda; g.Ksq.^(-1) -> g.Ksq.^(-1.0) or better g.invKsq --- src/barotropicqg.jl | 2 +- src/barotropicqgql.jl | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/barotropicqg.jl b/src/barotropicqg.jl index 76597622..252e0811 100644 --- a/src/barotropicqg.jl +++ b/src/barotropicqg.jl @@ -386,7 +386,7 @@ Returns the extraction of domain-averaged energy by drag μ. """ @inline function drag(prob) sol, v, p, g = prob.sol, prob.vars, prob.params, prob.grid - @. v.uh = g.Krsq^(-1) * abs2(sol) + @. v.uh = g.invKrsq * abs2(sol) v.uh[1, 1] = 0 p.μ/(g.Lx*g.Ly)*FourierFlows.parsevalsum(v.uh, g) end diff --git a/src/barotropicqgql.jl b/src/barotropicqgql.jl index 04a2560f..d4d1f52a 100644 --- a/src/barotropicqgql.jl +++ b/src/barotropicqgql.jl @@ -416,7 +416,7 @@ Returns the extraction of domain-averaged energy by drag mu. """ @inline function drag(prob) sol, v, p, g = prob.sol, prob.vars, prob.params, prob.grid - @. v.uh = g.Krsq^(-1) * abs2(sol) + @. v.uh = g.invKrsq * abs2(sol) v.uh[1, 1] = 0 p.mu/(g.Lx*g.Ly)*parsevalsum(v.uh, g) end From 733341fcc0d5e4f40644cf53f4e4c3ffb2665963 Mon Sep 17 00:00:00 2001 From: Navid Constantinou Date: Wed, 22 Apr 2020 21:39:31 +1000 Subject: [PATCH 5/6] fix gitlab to run on julia v1.4 --- .gitlab-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 5755a52c..16d23c47 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -17,7 +17,7 @@ julia:1.0: - nvidia # the "primary" target, where we require a new GPU to make sure all tests are run -julia:1.3: +julia:1.4: image: juliagpu/cuda:10.1-cudnn7-cutensor1-devel-ubuntu18.04 extends: - .julia:1.4 From 5e81a6ab00745ae2a31f62dfa7611df9f175a3aa Mon Sep 17 00:00:00 2001 From: Navid Constantinou Date: Wed, 22 Apr 2020 22:01:40 +1000 Subject: [PATCH 6/6] ci tests run on v1.0 as well --- .travis.yml | 1 + appveyor.yml | 1 + 2 files changed, 2 insertions(+) diff --git a/.travis.yml b/.travis.yml index d93372c7..3e4a4d59 100644 --- a/.travis.yml +++ b/.travis.yml @@ -5,6 +5,7 @@ os: - linux julia: + - 1.0 - 1.4 - nightly diff --git a/appveyor.yml b/appveyor.yml index b94732d5..7a0460f5 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -1,5 +1,6 @@ environment: matrix: + - julia_version: 1.0 - julia_version: 1.4 - julia_version: nightly