X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/91436b33a0051d683daf3301a84132b93348d171..70a1c67dc21179a44b0b317a1ea4823b63b7c666:/src/smpi/private.h diff --git a/src/smpi/private.h b/src/smpi/private.h index 4dcd4f1f32..29f0d48f1e 100644 --- a/src/smpi/private.h +++ b/src/smpi/private.h @@ -258,6 +258,19 @@ int smpi_comm_is_uniform(MPI_Comm comm); int smpi_comm_is_blocked(MPI_Comm comm); void smpi_comm_init_smp(MPI_Comm comm); +int smpi_comm_c2f(MPI_Comm comm); +MPI_Comm smpi_comm_f2c(int comm); +int smpi_group_c2f(MPI_Group group); +MPI_Group smpi_group_f2c(int group); +int smpi_request_c2f(MPI_Request req); +MPI_Request smpi_request_f2c(int req); +int smpi_type_c2f(MPI_Datatype datatype); +MPI_Datatype smpi_type_f2c(int datatype); +int smpi_op_c2f(MPI_Op op); +MPI_Op smpi_op_f2c(int op); +int smpi_win_c2f(MPI_Win win); +MPI_Win smpi_win_f2c(int win); + MPI_Request smpi_mpi_send_init(void *buf, int count, MPI_Datatype datatype, int dst, int tag, MPI_Comm comm); MPI_Request smpi_mpi_recv_init(void *buf, int count, MPI_Datatype datatype, @@ -393,7 +406,7 @@ extern char* start_data_exe; //start of the data+bss segment of the executable extern int size_data_exe; //size of the data+bss segment of the executable -void switch_data_segment(int); +void smpi_switch_data_segment(int); void smpi_get_executable_global_size(void); void smpi_initialize_global_memory_segments(void); void smpi_destroy_global_memory_segments(void); @@ -401,6 +414,11 @@ void smpi_bench_destroy(void); void smpi_bench_begin(void); void smpi_bench_end(void); +void* smpi_get_tmp_sendbuffer(int size); +void* smpi_get_tmp_recvbuffer(int size); +void smpi_free_tmp_buffer(void* buf); + + // f77 wrappers void mpi_init_(int*); @@ -690,8 +708,15 @@ void TRACE_smpi_finalize(int rank); const char* encode_datatype(MPI_Datatype datatype); // TODO, make this static and expose it more cleanly -extern void** mappings; -extern int loaded_page; + +typedef struct s_smpi_privatisation_region { + void* address; + int file_descriptor; +} *smpi_privatisation_region_t; + +extern smpi_privatisation_region_t smpi_privatisation_regions; + +extern int smpi_loaded_page; int SIMIX_process_get_PID(smx_process_t self);