concurrent_inferences Program

Uses

  • program~~concurrent_inferences~~UsesGraph program~concurrent_inferences concurrent_inferences assert_m assert_m program~concurrent_inferences->assert_m iso_fortran_env iso_fortran_env program~concurrent_inferences->iso_fortran_env julienne_m julienne_m program~concurrent_inferences->julienne_m module~fiats_m fiats_m program~concurrent_inferences->module~fiats_m omp_lib omp_lib program~concurrent_inferences->omp_lib module~double_precision_file_m double_precision_file_m module~fiats_m->module~double_precision_file_m module~double_precision_string_m double_precision_string_m module~fiats_m->module~double_precision_string_m module~hyperparameters_m hyperparameters_m module~fiats_m->module~hyperparameters_m module~input_output_pair_m input_output_pair_m module~fiats_m->module~input_output_pair_m module~kind_parameters_m kind_parameters_m module~fiats_m->module~kind_parameters_m module~metadata_m metadata_m module~fiats_m->module~metadata_m module~mini_batch_m mini_batch_m module~fiats_m->module~mini_batch_m module~network_configuration_m network_configuration_m module~fiats_m->module~network_configuration_m module~neural_network_m neural_network_m module~fiats_m->module~neural_network_m module~tensor_m tensor_m module~fiats_m->module~tensor_m module~tensor_map_m tensor_map_m module~fiats_m->module~tensor_map_m module~tensor_names_m tensor_names_m module~fiats_m->module~tensor_names_m module~trainable_network_m trainable_network_m module~fiats_m->module~trainable_network_m module~training_configuration_m training_configuration_m module~fiats_m->module~training_configuration_m module~double_precision_file_m->julienne_m module~double_precision_file_m->module~double_precision_string_m module~double_precision_string_m->julienne_m module~hyperparameters_m->module~double_precision_string_m module~hyperparameters_m->module~kind_parameters_m julienne_string_m julienne_string_m module~hyperparameters_m->julienne_string_m module~input_output_pair_m->module~kind_parameters_m module~input_output_pair_m->module~tensor_m module~metadata_m->module~double_precision_string_m module~metadata_m->julienne_string_m module~mini_batch_m->module~input_output_pair_m module~mini_batch_m->module~kind_parameters_m module~network_configuration_m->module~double_precision_string_m module~network_configuration_m->julienne_string_m module~neural_network_m->julienne_m module~neural_network_m->module~double_precision_file_m module~neural_network_m->module~kind_parameters_m module~neural_network_m->module~metadata_m module~neural_network_m->module~mini_batch_m module~neural_network_m->module~tensor_m module~neural_network_m->module~tensor_map_m module~activation_m activation_m module~neural_network_m->module~activation_m module~tensor_m->module~kind_parameters_m module~tensor_map_m->julienne_m module~tensor_map_m->module~double_precision_string_m module~tensor_map_m->module~kind_parameters_m module~tensor_map_m->module~tensor_m module~tensor_names_m->julienne_string_m module~trainable_network_m->julienne_m module~trainable_network_m->module~input_output_pair_m module~trainable_network_m->module~kind_parameters_m module~trainable_network_m->module~mini_batch_m module~trainable_network_m->module~neural_network_m module~trainable_network_m->module~tensor_map_m module~trainable_network_m->module~training_configuration_m module~training_configuration_m->module~double_precision_file_m module~training_configuration_m->module~hyperparameters_m module~training_configuration_m->module~kind_parameters_m module~training_configuration_m->module~network_configuration_m module~training_configuration_m->module~tensor_names_m julienne_file_m julienne_file_m module~training_configuration_m->julienne_file_m module~training_configuration_m->julienne_string_m module~training_configuration_m->module~activation_m module~activation_m->julienne_m iso_c_binding iso_c_binding module~activation_m->iso_c_binding

This program demonstrates how to read a neural network from a JSON file and use the network to perform concurrent inferences.


Calls

program~~concurrent_inferences~~CallsGraph program~concurrent_inferences concurrent_inferences argument_present argument_present program~concurrent_inferences->argument_present flag_value flag_value program~concurrent_inferences->flag_value proc~do_concurrent_time do_concurrent_time program~concurrent_inferences->proc~do_concurrent_time proc~double_precision_do_concurrent_time double_precision_do_concurrent_time program~concurrent_inferences->proc~double_precision_do_concurrent_time proc~elemental_time elemental_time program~concurrent_inferences->proc~elemental_time proc~openmp_time openmp_time program~concurrent_inferences->proc~openmp_time proc~print_stats print_stats program~concurrent_inferences->proc~print_stats proc~random_inputs random_inputs program~concurrent_inferences->proc~random_inputs proc~trials trials program~concurrent_inferences->proc~trials string string program~concurrent_inferences->string string_t string_t program~concurrent_inferences->string_t t_dc t_dc program~concurrent_inferences->t_dc t_dp_dc t_dp_dc program~concurrent_inferences->t_dp_dc t_elem t_elem program~concurrent_inferences->t_elem t_omp t_omp program~concurrent_inferences->t_omp none~infer neural_network_t%infer proc~do_concurrent_time->none~infer proc~double_precision_do_concurrent_time->string proc~double_precision_do_concurrent_time->none~infer none~num_inputs~2 neural_network_t%num_inputs proc~double_precision_do_concurrent_time->none~num_inputs~2 proc~elemental_time->none~infer proc~openmp_time->none~infer proc~random_inputs->string file_t file_t proc~random_inputs->file_t proc~random_inputs->none~num_inputs~2 proc~trials->flag_value interface~default_real_infer neural_network_t%default_real_infer none~infer->interface~default_real_infer interface~double_precision_infer neural_network_t%double_precision_infer none~infer->interface~double_precision_infer interface~default_real_num_inputs~2 neural_network_t%default_real_num_inputs none~num_inputs~2->interface~default_real_num_inputs~2 interface~double_precision_num_inputs~2 neural_network_t%double_precision_num_inputs none~num_inputs~2->interface~double_precision_num_inputs~2

Variables

Type Attributes Name Initial
type(command_line_t) :: command_line
integer :: i
type(tensor_t), allocatable :: inputs(:,:,:)
integer, parameter :: lat = 263
integer, parameter :: lev = 15
integer, parameter :: lon = 317
type(string_t) :: network_file_name
type(neural_network_t) :: neural_network
integer :: num_trials
type(tensor_t), allocatable :: outputs(:,:,:)

Functions

function do_concurrent_time()

Arguments

None

Return Value real(kind=real64)

Arguments

None

Return Value real(kind=real64)

function elemental_time()

Arguments

None

Return Value real(kind=real64)

function openmp_time()

Arguments

None

Return Value real(kind=real64)

function random_inputs()

Arguments

None

Return Value type(tensor_t), allocatable, (:,:,:)

function trials()

Arguments

None

Return Value integer


Subroutines

subroutine print_stats(label, x)

Arguments

Type IntentOptional Attributes Name
character(len=*), intent(in) :: label
real(kind=real64), intent(in) :: x(:)