Everything back to CPU to start implementing LES step-by-step
Most straightforward dry thermo running on GPU
Rough working version of dry thermo + boundary_surface with fixed ustar
Added option for variable ustar at GPU
Merge remote-tracking branch 'origin/cuda' into cuda
Added Smagorinsky evisc calculation to GPU (without any optimization..)
Full LES diffusion on GPU
Entire LES diffusion working on GPU
Rough working version of LES on GPU.
Quick and dirty optimization; only let one thread calculate the mixing length, and use shared memory for other threads. Reduces kernel execution time with factor 2.
When possible, use integer exponents instead of doubles. Huge difference on GPU
Speedup factor 2 sponge layer
Speedup evisc() calculation of factor 11 (compared to first version), mainly by calculation mixing-length offline.
40% speedup scalar diffusion by using multiplications instead of divisions
test with merged diffusion u-v-w
Test with putting vertical profiles in shared memory
Back to old version; no improvent by using shared memory on HALO
Fixed out-of-bounds read in Brunt vaisala calculation
cuda-memcheck to zero errors and no leaks
Moved last clearDevice routines to the destructor of their class