execute_benchmark Subroutine

private subroutine execute_benchmark(self, in, out, n_warmup_iters, n_iters, execution_time)

Executes benchmark for the given kernel

Type Bound

kernel_host

Arguments

Type IntentOptional Attributes Name
class(kernel_host), intent(inout) :: self

Host kernel class

real(kind=real32), intent(in) :: in(:)

Source host-allocated buffer

real(kind=real32), intent(inout) :: out(:)

Target host-allocated buffer

integer(kind=int32), intent(in) :: n_warmup_iters

Number of warmup iterations to perform before testing kernel

integer(kind=int32), intent(in) :: n_iters

Number of iterations to perform when testing kernel

real(kind=real64), intent(out) :: execution_time

Execution time of the selected access


Calls

proc~~execute_benchmark~~CallsGraph proc~execute_benchmark kernel_host%execute_benchmark proc~pop_nvtx_domain_range pop_nvtx_domain_range proc~execute_benchmark->proc~pop_nvtx_domain_range proc~push_nvtx_domain_range push_nvtx_domain_range proc~execute_benchmark->proc~push_nvtx_domain_range interface~nvtxdomainrangepop_c nvtxDomainRangePop_c proc~pop_nvtx_domain_range->interface~nvtxdomainrangepop_c interface~nvtxdomainrangepushex_c nvtxDomainRangePushEx_c proc~push_nvtx_domain_range->interface~nvtxdomainrangepushex_c proc~astring_f2c astring_f2c proc~push_nvtx_domain_range->proc~astring_f2c proc~create_nvtx_domain create_nvtx_domain proc~push_nvtx_domain_range->proc~create_nvtx_domain proc~string_f2c string_f2c proc~astring_f2c->proc~string_f2c proc~create_nvtx_domain->proc~astring_f2c interface~nvtxdomaincreate_c nvtxDomainCreate_c proc~create_nvtx_domain->interface~nvtxdomaincreate_c

Called by

proc~~execute_benchmark~~CalledByGraph proc~execute_benchmark kernel_host%execute_benchmark proc~create_host kernel_host%create_host proc~create_host->proc~execute_benchmark proc~select_access_mode_f128 kernel_host%select_access_mode_f128 proc~create_host->proc~select_access_mode_f128 proc~select_access_mode_f32 kernel_host%select_access_mode_f32 proc~create_host->proc~select_access_mode_f32 proc~select_access_mode_f64 kernel_host%select_access_mode_f64 proc~create_host->proc~select_access_mode_f64 proc~select_access_mode_f128->proc~execute_benchmark proc~select_access_mode_f32->proc~execute_benchmark proc~select_access_mode_f64->proc~execute_benchmark