initialize common symbols from oshmem
Этот коммит содержится в:
родитель
9d56b85b55
Коммит
11e11e1be9
@ -1,6 +1,8 @@
|
||||
/*
|
||||
* Copyright (c) 2013 Mellanox Technologies, Inc.
|
||||
* All rights reserved.
|
||||
* Copyright (c) 2015 Research Organization for Information Science
|
||||
* and Technology (RIST). All rights reserved.
|
||||
* $COPYRIGHT$
|
||||
*
|
||||
* Additional copyrights may follow
|
||||
@ -29,7 +31,7 @@
|
||||
* Global variables; most of which are loaded by back-ends of MCA
|
||||
* variables
|
||||
*/
|
||||
mca_atomic_base_module_t mca_atomic;
|
||||
mca_atomic_base_module_t mca_atomic = {{0}};
|
||||
|
||||
/*
|
||||
* Local types
|
||||
|
@ -1,6 +1,8 @@
|
||||
/*
|
||||
* Copyright (c) 2013 Mellanox Technologies, Inc.
|
||||
* All rights reserved.
|
||||
* Copyright (c) 2015 Research Organization for Information Science
|
||||
* and Technology (RIST). All rights reserved.
|
||||
*
|
||||
* $COPYRIGHT$
|
||||
*
|
||||
@ -32,10 +34,10 @@ int mca_memheap_base_output = -1;
|
||||
int mca_memheap_base_key_exchange = 1;
|
||||
char* mca_memheap_base_include = NULL;
|
||||
char* mca_memheap_base_exclude = NULL;
|
||||
opal_list_t mca_memheap_base_components_opened;
|
||||
opal_list_t mca_memheap_base_components_opened = {{0}};
|
||||
struct mca_memheap_base_module_t* mca_memheap_base_module_initialized = NULL;
|
||||
int mca_memheap_base_already_opened = 0;
|
||||
mca_memheap_map_t mca_memheap_base_map;
|
||||
mca_memheap_map_t mca_memheap_base_map = {{{0}}};
|
||||
|
||||
static int mca_memheap_base_register(mca_base_register_flag_t flags)
|
||||
{
|
||||
|
@ -1,6 +1,8 @@
|
||||
/*
|
||||
* Copyright (c) 2013-2015 Mellanox Technologies, Inc.
|
||||
* All rights reserved.
|
||||
* Copyright (c) 2015 Research Organization for Information Science
|
||||
* and Technology (RIST). All rights reserved.
|
||||
* $COPYRIGHT$
|
||||
*
|
||||
* Additional copyrights may follow
|
||||
@ -56,7 +58,7 @@ struct oob_comm {
|
||||
|
||||
static mca_memheap_map_t* memheap_map = NULL;
|
||||
|
||||
struct oob_comm memheap_oob;
|
||||
struct oob_comm memheap_oob = {{{0}}};
|
||||
|
||||
static int send_buffer(int pe, opal_buffer_t *msg);
|
||||
|
||||
|
@ -1,6 +1,8 @@
|
||||
/*
|
||||
* Copyright (c) 2013-2015 Mellanox Technologies, Inc.
|
||||
* All rights reserved.
|
||||
* Copyright (c) 2015 Research Organization for Information Science
|
||||
* and Technology (RIST). All rights reserved.
|
||||
* $COPYRIGHT$
|
||||
*
|
||||
* Additional copyrights may follow
|
||||
@ -20,7 +22,7 @@
|
||||
#include "oshmem/mca/memheap/base/base.h"
|
||||
#include "orte/mca/errmgr/errmgr.h"
|
||||
|
||||
mca_memheap_base_module_t mca_memheap;
|
||||
mca_memheap_base_module_t mca_memheap = {0};
|
||||
|
||||
/**
|
||||
* Function for weeding out memheap components that shouldn't be executed.
|
||||
|
@ -4,6 +4,8 @@
|
||||
* All rights reserved.
|
||||
* Copyright (c) 2015 Los Alamos National Security, LLC. All rights
|
||||
* reserved.
|
||||
* Copyright (c) 2015 Research Organization for Information Science
|
||||
* and Technology (RIST). All rights reserved.
|
||||
* $COPYRIGHT$
|
||||
*
|
||||
* Additional copyrights may follow
|
||||
@ -43,10 +45,10 @@
|
||||
/*
|
||||
* Global variables
|
||||
*/
|
||||
mca_spml_base_module_t mca_spml;
|
||||
mca_spml_base_module_t mca_spml = {0};
|
||||
|
||||
mca_spml_base_component_t mca_spml_base_selected_component;
|
||||
opal_pointer_array_t mca_spml_base_spml;
|
||||
mca_spml_base_component_t mca_spml_base_selected_component = {{0}};
|
||||
opal_pointer_array_t mca_spml_base_spml = {{0}};
|
||||
|
||||
|
||||
static int mca_spml_base_register(mca_base_register_flag_t flags)
|
||||
|
@ -4,6 +4,8 @@
|
||||
* All rights reserved.
|
||||
* Copyright (c) 2015 Los Alamos National Security, LLC. All rights
|
||||
* reserved.
|
||||
* Copyright (c) 2015 Research Organization for Information Science
|
||||
* and Technology (RIST). All rights reserved.
|
||||
* $COPYRIGHT$
|
||||
*
|
||||
* Additional copyrights may follow
|
||||
@ -19,8 +21,8 @@
|
||||
* If you wonder why these 2 freelists are declared here read the comment
|
||||
* in the spml_base_request.h file.
|
||||
*/
|
||||
opal_free_list_t mca_spml_base_put_requests/* = {{{0}}}*/;
|
||||
opal_free_list_t mca_spml_base_get_requests /*= {{{0}}}*/;
|
||||
opal_free_list_t mca_spml_base_put_requests = {{{0}}};
|
||||
opal_free_list_t mca_spml_base_get_requests = {{{0}}};
|
||||
opal_free_list_t mca_spml_base_atomic_requests = { { { 0 } } };
|
||||
|
||||
static void mca_spml_base_request_construct(mca_spml_base_request_t* req)
|
||||
|
@ -1,7 +1,9 @@
|
||||
/*
|
||||
* Copyright (c) 2013 Mellanox Technologies, Inc.
|
||||
* All rights reserved.
|
||||
* Copyright (c) 2013 Cisco Systems, Inc. All rights reserved.
|
||||
* Copyright (c) 2013 Cisco Systems, Inc. All rights reserved.
|
||||
* Copyright (c) 2015 Research Organization for Information Science
|
||||
* and Technology (RIST). All rights reserved.
|
||||
* $COPYRIGHT$
|
||||
*
|
||||
* Additional copyrights may follow
|
||||
@ -23,7 +25,7 @@
|
||||
/*
|
||||
* Table for op handle conversion
|
||||
*/
|
||||
opal_pointer_array_t oshmem_op_array;
|
||||
opal_pointer_array_t oshmem_op_array = {{0}};
|
||||
|
||||
/*
|
||||
* Class information
|
||||
|
@ -1,7 +1,7 @@
|
||||
/*
|
||||
* Copyright (c) 2013 Mellanox Technologies, Inc.
|
||||
* All rights reserved.
|
||||
* Copyright (c) 2014 Research Organization for Information Science
|
||||
* Copyright (c) 2014-2015 Research Organization for Information Science
|
||||
* and Technology (RIST). All rights reserved.
|
||||
* $COPYRIGHT$
|
||||
*
|
||||
@ -37,7 +37,7 @@
|
||||
|
||||
opal_convertor_t* oshmem_shmem_local_convertor = NULL;
|
||||
|
||||
opal_list_t oshmem_proc_list;
|
||||
opal_list_t oshmem_proc_list = {{0}};
|
||||
static opal_mutex_t oshmem_proc_lock;
|
||||
oshmem_proc_t* oshmem_proc_local_proc = NULL;
|
||||
|
||||
@ -545,7 +545,7 @@ int oshmem_proc_unpack(opal_buffer_t* buf,
|
||||
return OSHMEM_SUCCESS;
|
||||
}
|
||||
|
||||
opal_pointer_array_t oshmem_group_array;
|
||||
opal_pointer_array_t oshmem_group_array = {{0}};
|
||||
|
||||
oshmem_group_t* oshmem_group_all = NULL;
|
||||
oshmem_group_t* oshmem_group_self = NULL;
|
||||
|
@ -1,6 +1,8 @@
|
||||
/*
|
||||
* Copyright (c) 2013 Mellanox Technologies, Inc.
|
||||
* All rights reserved.
|
||||
* Copyright (c) 2015 Research Organization for Information Science
|
||||
* and Technology (RIST). All rights reserved.
|
||||
* $COPYRIGHT$
|
||||
*
|
||||
* Additional copyrights may follow
|
||||
@ -12,8 +14,8 @@
|
||||
#include "oshmem/runtime/runtime.h"
|
||||
|
||||
OBJ_CLASS_INSTANCE(oshmem_group_cache_t, opal_object_t, NULL, NULL);
|
||||
opal_list_t oshmem_group_cache_list;
|
||||
unsigned int oshmem_group_cache_size;
|
||||
opal_list_t oshmem_group_cache_list = {{0}};
|
||||
unsigned int oshmem_group_cache_size = 0;
|
||||
oshmem_group_t* find_group_in_cache(int PE_start, int logPE_stride, int PE_size)
|
||||
{
|
||||
int cache_look_up_id[3] = { PE_start, logPE_stride, PE_size };
|
||||
|
@ -4,6 +4,8 @@
|
||||
* All rights reserved.
|
||||
* Copyright (c) 2015 Los Alamos National Security, LLC. All rights
|
||||
* reserved.
|
||||
* Copyright (c) 2015 Research Organization for Information Science
|
||||
* and Technology (RIST). All rights reserved.
|
||||
* $COPYRIGHT$
|
||||
*
|
||||
* Additional copyrights may follow
|
||||
@ -19,14 +21,14 @@
|
||||
#include "oshmem/constants.h"
|
||||
#include "oshmem/proc/proc.h"
|
||||
|
||||
opal_pointer_array_t oshmem_request_f_to_c_table;
|
||||
opal_pointer_array_t oshmem_request_f_to_c_table = {{0}};
|
||||
size_t oshmem_request_waiting = 0;
|
||||
size_t oshmem_request_completed = 0;
|
||||
opal_mutex_t oshmem_request_lock;
|
||||
opal_condition_t oshmem_request_cond;
|
||||
oshmem_predefined_request_t oshmem_request_null;
|
||||
oshmem_request_t oshmem_request_empty;
|
||||
oshmem_status_public_t oshmem_status_empty;
|
||||
opal_mutex_t oshmem_request_lock = {{0}};
|
||||
opal_condition_t oshmem_request_cond = {{0}};
|
||||
oshmem_predefined_request_t oshmem_request_null = {{{{{0}}}}};
|
||||
oshmem_request_t oshmem_request_empty = {{{{0}}}};
|
||||
oshmem_status_public_t oshmem_status_empty = {0};
|
||||
oshmem_request_fns_t oshmem_request_functions = {
|
||||
NULL, /*oshmem_request_default_test,*/
|
||||
NULL, /*oshmem_request_default_test_any,*/
|
||||
|
@ -1,6 +1,8 @@
|
||||
/*
|
||||
* Copyright (c) 2013 Mellanox Technologies, Inc.
|
||||
* All rights reserved.
|
||||
* Copyright (c) 2015 Research Organization for Information Science
|
||||
* and Technology (RIST). All rights reserved.
|
||||
*
|
||||
* $COPYRIGHT$
|
||||
*
|
||||
@ -101,7 +103,7 @@ int oshmem_mpi_thread_provided = SHMEM_THREAD_SINGLE;
|
||||
long *preconnect_value = 0;
|
||||
int shmem_api_logger_output = -1;
|
||||
|
||||
MPI_Comm oshmem_comm_world;
|
||||
MPI_Comm oshmem_comm_world = {0};
|
||||
|
||||
opal_thread_t *oshmem_mpi_main_thread = NULL;
|
||||
|
||||
@ -130,43 +132,50 @@ opal_thread_t *oshmem_mpi_main_thread = NULL;
|
||||
ompi/include/mpif-common.h.
|
||||
*/
|
||||
|
||||
#define INST(type, upper_case, lower_case, single_u, double_u) \
|
||||
type lower_case; \
|
||||
type upper_case; \
|
||||
type single_u; \
|
||||
type double_u
|
||||
#define INST(type, value, upper_case, lower_case, single_u, double_u) \
|
||||
type lower_case = value; \
|
||||
type upper_case = value; \
|
||||
type single_u = value; \
|
||||
type double_u = value
|
||||
|
||||
INST(int,
|
||||
0,
|
||||
MPI_FORTRAN_BOTTOM,
|
||||
mpi_fortran_bottom,
|
||||
mpi_fortran_bottom_,
|
||||
mpi_fortran_bottom__);
|
||||
INST(int,
|
||||
0,
|
||||
MPI_FORTRAN_IN_PLACE,
|
||||
mpi_fortran_in_place,
|
||||
mpi_fortran_in_place_,
|
||||
mpi_fortran_in_place__);
|
||||
INST(char *,
|
||||
NULL,
|
||||
MPI_FORTRAN_ARGV_NULL,
|
||||
mpi_fortran_argv_null,
|
||||
mpi_fortran_argv_null_,
|
||||
mpi_fortran_argv_null__);
|
||||
INST(double,
|
||||
0.0,
|
||||
MPI_FORTRAN_ARGVS_NULL,
|
||||
mpi_fortran_argvs_null,
|
||||
mpi_fortran_argvs_null_,
|
||||
mpi_fortran_argvs_null__);
|
||||
INST(int *,
|
||||
NULL,
|
||||
MPI_FORTRAN_ERRCODES_IGNORE,
|
||||
mpi_fortran_errcodes_ignore,
|
||||
mpi_fortran_errcodes_ignore_,
|
||||
mpi_fortran_errcodes_ignore__);
|
||||
INST(int *,
|
||||
NULL,
|
||||
MPI_FORTRAN_STATUS_IGNORE,
|
||||
mpi_fortran_status_ignore,
|
||||
mpi_fortran_status_ignore_,
|
||||
mpi_fortran_status_ignore__);
|
||||
INST(double,
|
||||
0.0,
|
||||
MPI_FORTRAN_STATUSES_IGNORE,
|
||||
mpi_fortran_statuses_ignore,
|
||||
mpi_fortran_statuses_ignore_,
|
||||
@ -175,9 +184,9 @@ INST(double,
|
||||
/*
|
||||
* Hash tables for MPI_Type_create_f90* functions
|
||||
*/
|
||||
opal_hash_table_t ompi_mpi_f90_integer_hashtable;
|
||||
opal_hash_table_t ompi_mpi_f90_real_hashtable;
|
||||
opal_hash_table_t ompi_mpi_f90_complex_hashtable;
|
||||
opal_hash_table_t ompi_mpi_f90_integer_hashtable = {{0}};
|
||||
opal_hash_table_t ompi_mpi_f90_real_hashtable = {{0}};
|
||||
opal_hash_table_t ompi_mpi_f90_complex_hashtable = {{0}};
|
||||
|
||||
static int _shmem_init(int argc, char **argv, int requested, int *provided);
|
||||
|
||||
@ -196,8 +205,8 @@ static void* shmem_opal_thread(void* argc)
|
||||
}
|
||||
#endif
|
||||
|
||||
int oshmem_shmem_inglobalexit;
|
||||
int oshmem_shmem_globalexit_status;
|
||||
int oshmem_shmem_inglobalexit = 0;
|
||||
int oshmem_shmem_globalexit_status = -1;
|
||||
|
||||
static void sighandler__SIGUSR1(int signum)
|
||||
{
|
||||
|
@ -1,7 +1,9 @@
|
||||
/*
|
||||
* Copyright (c) 2013 Mellanox Technologies, Inc.
|
||||
* All rights reserved.
|
||||
* Copyright (c) 2014 Cisco Systems, Inc. All rights reserved.
|
||||
* Copyright (c) 2014 Cisco Systems, Inc. All rights reserved.
|
||||
* Copyright (c) 2015 Research Organization for Information Science
|
||||
* and Technology (RIST). All rights reserved.
|
||||
* $COPYRIGHT$
|
||||
*
|
||||
* Additional copyrights may follow
|
||||
@ -43,8 +45,8 @@ struct oshmem_lock_prev_pe_container {
|
||||
};
|
||||
typedef struct oshmem_lock_prev_pe_container oshmem_lock_prev_pe_container_t;
|
||||
|
||||
oshmem_lock_counter_t *lock_counter_head;
|
||||
oshmem_lock_prev_pe_container_t *lock_prev_pe_container_head;
|
||||
oshmem_lock_counter_t *lock_counter_head = NULL;
|
||||
oshmem_lock_prev_pe_container_t *lock_prev_pe_container_head = NULL;
|
||||
static int *lock_turn;
|
||||
static int *lock_inform;
|
||||
static int *lock_last_ticket;
|
||||
|
Загрузка…
Ссылка в новой задаче
Block a user