X-Git-Url: http://bilbo.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/c34ec0a9a237bf4befb762e35ab117731a8c3851..8e5cc1bfb9f7d7693341c33a6e0a6906f447791e:/include/smpi/smpi.h diff --git a/include/smpi/smpi.h b/include/smpi/smpi.h index cae3e1f240..32b20bfc93 100644 --- a/include/smpi/smpi.h +++ b/include/smpi/smpi.h @@ -1,4 +1,4 @@ -/* Copyright (c) 2007-2019. The SimGrid Team. All rights reserved. */ +/* Copyright (c) 2007-2020. The SimGrid Team. All rights reserved. */ /* This program is free software; you can redistribute it and/or modify it * under the terms of the license (GNU LGPL) which comes with this package. */ @@ -8,6 +8,7 @@ #include #include +#include #include #include @@ -976,8 +977,10 @@ XBT_PUBLIC MPI_Comm smpi_process_comm_self(); XBT_PUBLIC MPI_Info smpi_process_info_env(); XBT_PUBLIC void* smpi_process_get_user_data(); XBT_PUBLIC void smpi_process_set_user_data(void*); +XBT_PUBLIC void smpi_init_options(); XBT_PUBLIC void smpi_execute_flops(double flops); +XBT_PUBLIC void smpi_execute_flops_benched(double flops); XBT_PUBLIC void smpi_execute(double duration); XBT_PUBLIC void smpi_execute_benched(double duration); @@ -1000,9 +1003,9 @@ XBT_PUBLIC void smpi_comm_set_copy_data_callback(void (*callback)(smx_activity_t */ XBT_PUBLIC void smpi_trace_set_call_location(const char* file, int line); /** Fortran binding **/ -XBT_PUBLIC void smpi_trace_set_call_location_(const char* file, int* line); +XBT_PUBLIC void smpi_trace_set_call_location_(const char* file, const int* line); /** Fortran binding + -fsecond-underscore **/ -XBT_PUBLIC void smpi_trace_set_call_location__(const char* file, int* line); +XBT_PUBLIC void smpi_trace_set_call_location__(const char* file, const int* line); #define SMPI_ITER_NAME1(line) _XBT_CONCAT(iter_count, line) #define SMPI_ITER_NAME(line) SMPI_ITER_NAME1(line) @@ -1025,14 +1028,13 @@ XBT_PUBLIC void smpi_trace_set_call_location__(const char* file, int* line); SMPI_SAMPLE_LOOP(loop_init, (loop_end), (loop_iter), 1, (iters), (thres)) #define SMPI_SAMPLE_DELAY(duration) for(smpi_execute(duration); 0; ) #define SMPI_SAMPLE_FLOPS(flops) for(smpi_execute_flops(flops); 0; ) - XBT_PUBLIC void* smpi_shared_malloc(size_t size, const char* file, int line); #define SMPI_SHARED_MALLOC(size) smpi_shared_malloc((size), __FILE__, __LINE__) XBT_PUBLIC void* smpi_shared_malloc_partial(size_t size, size_t* shared_block_offsets, int nb_shared_blocks); #define SMPI_PARTIAL_SHARED_MALLOC(size, shared_block_offsets, nb_shared_blocks) \ smpi_shared_malloc_partial((size), (shared_block_offsets), (nb_shared_blocks)) -XBT_PUBLIC void smpi_shared_free(void* data); + #define SMPI_SHARED_FREE(data) smpi_shared_free(data) XBT_PUBLIC int smpi_shared_known_call(const char* func, const char* input); @@ -1056,12 +1058,13 @@ XBT_PUBLIC void smpi_replay_run(const char* instance_id, int rank, double start_ XBT_PUBLIC void SMPI_app_instance_register(const char* name, xbt_main_func_t code, int num_processes); XBT_PUBLIC void SMPI_init(); XBT_PUBLIC void SMPI_finalize(); +XBT_PUBLIC void SMPI_thread_create(); SG_END_DECL /* C++ declarations for shared_malloc */ #ifdef __cplusplus -XBT_PUBLIC int smpi_is_shared(void* ptr, std::vector>& private_blocks, size_t* offset); +XBT_PUBLIC int smpi_is_shared(const void* ptr, std::vector>& private_blocks, size_t* offset); std::vector> shift_and_frame_private_blocks(const std::vector>& vec, size_t offset, size_t buff_size);