JuliaLabs / ShallowWaterBench

Other
8 stars 6 forks source link

Compare to euler_cuarray.jl? #4

Open willow-ahrens opened 5 years ago

willow-ahrens commented 5 years ago

If euler_cuarray.jl does the same thing as shallow_water.jl, lets make the comparison. If they are so different that it would be a lot of work to run euler_cuarray.jl, then we can skip it.

vchuravy commented 5 years ago

That should be fine, since we need the GPU setup anyway.

I think the best way forward is to not modify the code as is but to keep it frozen for comparisons and then add our rewrite in a separate file.

lcw commented 5 years ago

We are in the process of creating a swe_cuarray.jl example that does the same thing as shallow_water.jl. They should perform the same operations so we should be able to compare their runtimes.

fxgiraldo commented 5 years ago

If euler_cuarray.jl does the same thing as shallow_water.jl, lets make the comparison. If they are so different that it would be a lot of work to run euler_cuarray.jl, then we can skip it.

FYI: euler_cuarray.jl is our optimized version of the compressible Euler equations (2d and 3d) running on multi-cpu and multi-gpu. shallow_water.jl is only meant to show the MIT group what it would entail to write a simple shallow water solver using discontinuous Galerkin methods. As Lucas Wilcox said above, we are in the process of building a similarly optimized version of shallow_water.jl that will look a lot like euler_cuarray.jl.

vchuravy commented 5 years ago

Thanks for chiming in! That must have been a miss-understanding on my part then. Just to make sure that we are working on the right goal here. We still want to speed up shallow_water.jl as it is right now, get it running on the GPU and maybe make it a bit more Julian.

jkozdon commented 5 years ago

To clarify what @fxgiraldo said, you should be starting from the shallow water code. So shallow_water.jl is the target (as @vchuravy said).

We at NPS are just planning on getting you a code that you can do a direct, head to head comparison with for performance.

fxgiraldo commented 5 years ago

Thanks @jkozdon - that is well said.

fxgiraldo commented 5 years ago

Hi @vchuravy,
The multi-cpu and multi-gpu version of shallow_water.jl that can be used for head-to-head comparisons with your Julian code can be found here: https://github.com/climate-machine/Canary.jl/blob/master/examples/swe_cuarray.jl

Please let any of us know if you have any questions (@fxgiraldo, @lcw, @jkozdon ).

Your code is looking pretty cool!

vchuravy commented 5 years ago

Thanks! That is much appreciated, that will allow me to setup a benchmarking harness to compare performance