nogpu

Module

Description

$Id$

MODULE_DOC: This module contains GPU related dummy types and functions.

CPARAM logical, parameter :: lgpu = .false.


Quick access

Variables:

before_boundary_gpu_c, copy_farray_c, finalize_gpu_c, get_farray_ptr_gpu_c, get_gpu_reduced_vars_c, gpu_prepare_for_first_substep_c, initialize_gpu_c, it_test_rhs, lac_sparse_autotuning, lac_sparse_autotuning_always, lcpu_timestep_on_gpu, lcumulative_df_on_gpu, load_farray_c, lonly_default_stream_for_taskgraphs, lread_all_vars_from_device, lsingle_precision_timestep, lskip_rtime_compilation, ltest_bcs, ltest_rhs, pfarr_gpu_in, pfarr_gpu_out, pos_real_ptr_c, print_snapshot_c, radtransfer_gpu_c, register_gpu_c, reload_gpu_config_c, rhs_gpu_c, split_update_gpu_c, test_bcs_c, tf_create_model_c, tf_load_model_c, tf_load_model_checkpoint_c, tf_save_checkpoint_c, tf_save_model_c, thread_block_loop_factors, torchinfer_c, torchtrain_c, update_after_substep_gpu_c, update_on_gpu_arr_by_ind_c, update_on_gpu_arr_by_name_c, update_on_gpu_scal_by_ind_c, update_on_gpu_scal_by_name_c, update_on_gpu_vec_by_ind_c, update_on_gpu_vec_by_name_c

Routines:

before_boundary_gpu(), copy_farray_from_gpu(), finalize_gpu(), get_farray_ptr_gpu(), get_gpu_reduced_vars(), get_ptr_gpu(), get_ptr_gpu_training(), gpu_prepare_for_first_substep(), infer_gpu(), initialize_gpu(), load_farray_to_gpu(), radtransfer_gpu(), read_gpu_run_pars(), register_gpu(), reload_gpu_config(), rhs_gpu(), split_update_gpu(), tau_snapshots(), test_gpu_bcs(), tf_create_model(), tf_load_model(), tf_load_model_checkpoint(), tf_save_checkpoint(), tf_save_model(), train_gpu(), update_after_substep_gpu(), update_on_gpu(), update_on_gpu_vec(), write_gpu_run_pars()

Needed modules

Variables

  • gpu/it_test_rhs [integer,public]
  • gpu/ltest_bcs [logical,public]
  • gpu/ltest_rhs [logical,public]

Subroutines and functions

subroutine  gpu/initialize_gpu(f)
Parameters:

f (,,*,*) [real,in]

Called from:

helper_loop(), reload(), gen_output(), timeloop(), check_tspec_crit_log_interval(), check_tsnap_crit_log_interval(), check_tvid_crit_log_interval(), setup_signal_files(), print_metrics(), run_start()

Call to:

get_ptr_gpu(), get_ptr_gpu_training()

subroutine  gpu/read_gpu_run_pars(iomsg)
Parameters:

iomsg [character,out]

Call to:

get_ptr_gpu(), get_ptr_gpu_training()

subroutine  gpu/write_gpu_run_pars(unit)
Parameters:

unit [integer,in]

Called from:

get_datadir(), get_snapdir(), read_all_init_pars(), read_all_run_pars(), get_downpars()

Call to:

get_ptr_gpu(), get_ptr_gpu_training()

subroutine  gpu/register_gpu()
Called from:

register_modules()

Call to:

get_ptr_gpu(), get_ptr_gpu_training()

subroutine  gpu/finalize_gpu()
Called from:

register_modules(), initialize_modules(), finalize_modules()

Call to:

get_ptr_gpu(), get_ptr_gpu_training()

subroutine  gpu/get_farray_ptr_gpu()
Call to:

get_ptr_gpu(), get_ptr_gpu_training()

subroutine  gpu/rhs_gpu(f, itsub)
Parameters:
  • f (,,*,*) [real]

  • itsub [integer]

Called from:

pde(), write_diagnostics(), calc_all_module_diagnostic_auxiliaries(), perform_diagnostics(), finalize_diagnostics(), debug_imn_arrays(), impose_floors_ceilings()

Call to:

get_ptr_gpu(), get_ptr_gpu_training()

subroutine  gpu/before_boundary_gpu(f, lrmv, itsub, t)
Parameters:
  • f (,,*,*) [real]

  • lrmv [logical]

  • itsub [integer]

  • t [real,in]

Called from:

pde(), write_diagnostics(), calc_all_module_diagnostic_auxiliaries(), perform_diagnostics(), finalize_diagnostics(), debug_imn_arrays(), impose_floors_ceilings()

Call to:

get_ptr_gpu(), get_ptr_gpu_training()

subroutine  gpu/update_after_substep_gpu()
Called from:

pde(), write_diagnostics(), calc_all_module_diagnostic_auxiliaries(), perform_diagnostics(), finalize_diagnostics(), debug_imn_arrays(), impose_floors_ceilings()

Call to:

get_ptr_gpu(), get_ptr_gpu_training()

function  gpu/get_ptr_gpu(ind1[, ind2[, lout]])
Parameters:
  • ind1 [integer]

  • ind2 [integer]

  • lout [logical]

Return:

pfarr (,,*,*) [real,pointer]

Called from:

initialize_gpu(), read_gpu_run_pars(), write_gpu_run_pars(), register_gpu(), finalize_gpu(), get_farray_ptr_gpu(), rhs_gpu(), before_boundary_gpu(), update_after_substep_gpu()

Call to:

get_ptr_gpu_training()

function  gpu/get_ptr_gpu_training(ind1[, ind2[, lout]])
Parameters:
  • ind1 [integer]

  • ind2 [integer]

  • lout [logical]

Return:

pfarr (,,*,*,*) [real,pointer]

Called from:

initialize_gpu(), read_gpu_run_pars(), write_gpu_run_pars(), register_gpu(), finalize_gpu(), get_farray_ptr_gpu(), rhs_gpu(), before_boundary_gpu(), update_after_substep_gpu(), get_ptr_gpu()

subroutine  gpu/copy_farray_from_gpu(f[, nowait_])
Parameters:
  • f (,,*,*) [real,out]

  • nowait [logical]

Called from:

pde(), write_diagnostics(), calc_all_module_diagnostic_auxiliaries(), perform_diagnostics(), finalize_diagnostics(), debug_imn_arrays(), impose_floors_ceilings(), helper_loop(), reload()

subroutine  gpu/load_farray_to_gpu(f)
Parameters:

f (,,*,*) [real,out]

Called from:

helper_loop(), reload()

subroutine  gpu/reload_gpu_config()
Called from:

helper_loop(), reload()

subroutine  gpu/update_on_gpu(index[, varname[, value]])
Parameters:
  • index [integer]

  • varname [character]

  • value [real]

Called from:

pde(), load_variables_to_gpu_special(), max_mn(), sum_mn(), dot_mn(), vec_dot_3tensor(), matrix2linarray(), linarray2matrix(), inv2_3x3mat(), scalartripleproduct(), det3x3mat(), dot_mn_sv(), dot_mn_sv_pencil(), dot_mn_sm(), dot_mn_vm(), dot_mn_vm_trans(), dot2_mn(), dot2_mx(), dot2fj(), dyadic2(), trace_mn(), mult_matrix(), multm2_mn(), multm2_sym_mn(), multmv_mn(), invmat_db(), multsv_mn(), multsv_mn_add(), multsm_mn(), cross_mn(), cross_mixed(), gij(), gij_v_times_s(), gijl_symmetric(), grad5(), div(), div_tensor(), div_other(), div_mn(), div_mn_2tensor(), curl_mn(), curl_horizontal(), curl(), curl_other(), curli(), del2v(), del2m3x3_sym(), del2fj(), del2fi_dxjk(), d2fi_dxj(), symmetrise3x3_ut2lt(), del2v_etc(), del2vi_etc(), del4v(), del6v(), bij_tilde(), gij_etc(), g2ij(), del4(), del6(), del6_strict(), del4graddiv(), del6_other(), del6fj(), del6fjv(), u_dot_grad_mat(), nou_dot_grad_scl(), h_dot_grad_vec(), gradf_upw1st(), rdim(), read_snaptime(), update_snaptime(), shift_dt(), set_next_dt(), set_dt(), vecout(), vecout_initialize(), vecout_finalize(), despike(), smooth_kernel(), smooth(), smooth_mn(), get_smooth_kernel(), eulag_filter(), identify_bcs(), lower_triangular_index(), step_vector(), der6_step(), stepdown(), der_stepdown(), coeff_ydep(), parse_bc(), inverse_parse_bc(), parse_bc_rad(), parse_bc_radg(), parse_shell(), control_file_exists(), read_line_from_file(), get_nseed(), get_where(), write_dx_general(), write_zprof(), write_yprof(), write_xprof(), remove_prof(), blob(), blobs(), gamma_function(), tensor_diffusion_coef(), get_radial_distance(), interp1(), bspline_basis(), bspline_interpolation(), bspline_precondition(), ludcmp(), lubksb(), gij_psi(), gij_psi_etc(), location_in_proc(), xlocation(), ylocation(), zlocation(), position(), fourier_single_mode(), register_report_aux(), unit_vector(), calc_del6_for_upwind(), doupwind(), global_mean(), remove_mean(), find_max_fvec(), find_rms_fvec(), find_xyrms_fvec(), calc_slope_diff_flux(), periodic_fold_back(), calc_all_diff_fluxes(), calc_sij2(), traceless_strain(), remove_mean_value(), stagger_to_base_interp_1st(), stagger_to_base_interp_3rd(), vortex(), smoothing_kernel(), calc_scl_factor()

subroutine  gpu/update_on_gpu_vec(index[, varname[, value]])
Parameters:
  • index [integer,inout]

  • varname [character]

  • value (3) [real]

subroutine  gpu/gpu_prepare_for_first_substep()
Called from:

helper_loop(), reload(), gen_output(), timeloop()

subroutine  gpu/infer_gpu(flag)
Parameters:

flag [integer]

Called from:

initialize_training(), register_training(), read_training_run_pars(), write_training_run_pars(), training_after_boundary()

subroutine  gpu/train_gpu(f, itsub, t)
Parameters:
  • f [real]

  • itsub [real]

  • t [real,in]

Called from:

initialize_training(), register_training(), read_training_run_pars(), write_training_run_pars(), training_after_boundary()

subroutine  gpu/radtransfer_gpu()
subroutine  gpu/get_gpu_reduced_vars(dst)
Parameters:

dst (*) [real]

Called from:

calc_ode_diagnostics_special(), prep_rhs_special()

subroutine  gpu/test_gpu_bcs()
Called from:

pde(), write_diagnostics(), calc_all_module_diagnostic_auxiliaries(), perform_diagnostics(), finalize_diagnostics(), debug_imn_arrays(), impose_floors_ceilings()

subroutine  gpu/split_update_gpu(f)
Parameters:

f (,,*,*) [real]

subroutine  gpu/tf_create_model(model_name, config_file_path, lmpicomm)
Parameters:
  • model_name [character,in]

  • config_file_path [character,in]

  • lmpicomm [logical]

Called from:

initialize_training()

subroutine  gpu/tau_snapshots()
subroutine  gpu/tf_load_model(model_name, fname)
Parameters:
  • model_name [character,in]

  • fname [character,in]

Called from:

initialize_training()

subroutine  gpu/tf_load_model_checkpoint(model_name, checkpoint_dir)
Parameters:
  • model_name [character,in]

  • checkpoint_dir [character,in]

Called from:

initialize_training()

subroutine  gpu/tf_save_model(model_name, fname)
Parameters:
  • model_name [character,in]

  • fname [character,in]

Called from:

initialize_training(), register_training(), read_training_run_pars(), write_training_run_pars(), training_after_boundary()

subroutine  gpu/tf_save_checkpoint(model_name, checkpoint_dir)
Parameters:
  • model_name [character,in]

  • checkpoint_dir [character,in]

Called from:

initialize_training(), register_training(), read_training_run_pars(), write_training_run_pars(), training_after_boundary()