Commit
781ef9dfc3079f5d20cf22f044eac5970443c1b9
by noreplyAdvance xm wpxp gpuization (#1077)
* Initial commit for GPUizing advance_xm_wpxp.
* GPUizing fill_holes_vertical
* Adding Skthl_zm to the update host list, I missed this in the last PR. I noticed this by comparing results with and without managed memory, now I've checked BFBness with arm, mpace_b, mc3e, and gabls2.
* Small GPU fixes (#1076)
* Fixing small things that I caught by adding the default(present) onto acc loops.
* Moving default(present) to the end because it looks nicer there.
* Adding default(present) to all acc loop statements. Also adding azt to a copyin statement, which was missed previously. All BFB.
* Incemental update, not well tested yet.
* Removing some copies and making the sclr_dim change.
* Fixing a bug that only seemed detectable with astex_a209. We need to pass only single arrays to functions, calling ddzt( nz, ngrdcol, gr, rho_ds_zt * K_zt_nu ) was resulting in rho_ds_zt * K_zt_nu being evluated on the CPU, but the values were only valid on the GPU. So we need to evaluate that expression on the GPU, save it into an array (currently K_zt_nu_tmp), then pass that to ddzt.
* GPUizing calc_turb_adv_range
* GPUizing mono_flux_limiter
* Cleaning up data statments and a couple other things.
* Updated for some different options.
* More updates needed for various options.
* Reverting accidental flag change
* Should be the final changes, all options tested now.
* Replacing some comments in monoflux limiter, and also modifying it to make it BFB on CPUs. Also changing incorrect error conditions on tridiag.
* Adding max_x_allowable to update host statement, missed previous.
* Properly naming tmp variables and variables calculated from ddzt and ddzm start with ddzt_ and ddzm_.
* Replacing constants with named ones from constants_clubb.
* Replacing hard coded numbers in lhs variables representing the number of bands they contain with fortran parameters.