loki.transformations.data_offload.tests.test_offload_deepcopy

Functions

check_array_arg(mode, pragmas)

Check the correct generation of deepcopy for array_arg.

check_geometry(conds, pragmas, routine)

Check the generated deepcopy for type(geom_type) :: geometry.

check_other_variable_type(mode, conds, ...)

Check the generated deepcopy for type(other_variable_type) :: variable.

check_struct(mode, conds, pragmas, routine)

Check the generated deepcopy for type(struct_type).

check_struct_var_ptr(mode, conds)

Check the var_ptr member of type(struct_type) :: struct.

check_variable_type_device(var, conds, access)

Check generated copy to device for type(variable_type) variables.

check_variable_type_host(var, conds)

Check generated host pull-back for type(variable_type) variables.

check_variable_type_wipe(var, conds)

Check generated wipe for type(variable_type) variables.

fixture_config()

Default configuration dict with basic options.

fixture_deepcopy_code()

fixture_expected_analysis()

test_dummy_field_array_typdef_config(rank, suff)

Test the creation of a typedef config for FIELD_RANKSUFF_ARRAY types.

test_loop_nest_wrapping(frontend, depth)

Test the utility to wrap a given body in a loop nest.

test_offload_deepcopy_analysis(frontend, ...)

Test the analysis for the data offload deepcopy generation.

test_offload_deepcopy_transformation(...)

Test the generation of host-device deepcopy.

fixture_deepcopy_code()
fixture_expected_analysis()
fixture_config()

Default configuration dict with basic options.

test_offload_deepcopy_analysis(frontend, config, deepcopy_code, expected_analysis, output_analysis, tmp_path, caplog)

Test the analysis for the data offload deepcopy generation.

check_array_arg(mode, pragmas)

Check the correct generation of deepcopy for array_arg.

check_variable_type_host(var, conds)

Check generated host pull-back for type(variable_type) variables.

check_variable_type_device(var, conds, access)

Check generated copy to device for type(variable_type) variables.

check_variable_type_wipe(var, conds)

Check generated wipe for type(variable_type) variables.

check_other_variable_type(mode, conds, pragmas, routine)

Check the generated deepcopy for type(other_variable_type) :: variable.

check_geometry(conds, pragmas, routine)

Check the generated deepcopy for type(geom_type) :: geometry.

check_struct(mode, conds, pragmas, routine)

Check the generated deepcopy for type(struct_type).

check_struct_var_ptr(mode, conds)

Check the var_ptr member of type(struct_type) :: struct.

test_offload_deepcopy_transformation(frontend, config, deepcopy_code, present, mode, tmp_path)

Test the generation of host-device deepcopy.

test_loop_nest_wrapping(frontend, depth)

Test the utility to wrap a given body in a loop nest.

test_dummy_field_array_typdef_config(rank, suff)

Test the creation of a typedef config for FIELD_RANKSUFF_ARRAY types.