From: onesphore Date: Wed, 27 Jun 2018 12:57:16 +0000 (+0200) Subject: Merge remote-tracking branch 'upstream/master' X-Git-Tag: v3_21~572^2~2 X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/commitdiff_plain/f23b0fb864cb60978c1fcfd48d50f62dd054fe31?hp=27110895ba96495128fa5299bbd55d5e564e8ad0 Merge remote-tracking branch 'upstream/master' (Boost has been upgraded in the remote repo) --- diff --git a/.circleci/config.yml b/.circleci/config.yml index e28a06b183..b241f7f3b6 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -16,11 +16,8 @@ jobs: steps: - checkout - run: - name: Build da stuff + name: Configure, build and test da stuff command: | - mkdir _build - pushd _build; cmake -Denable_documentation=OFF -Denable_coverage=ON -Denable_java=ON -Denable_model-checking=OFF -Denable_lua=OFF -Denable_compile_optimizations=ON -Denable_smpi=ON -Denable_smpi_MPICH3_testsuite=OFF -Denable_compile_warnings=ON .. - - run: - name: Test da stuff - command: | - pushd _build ; make -j4 && ctest -j4 --output-on-failure + mkdir _build && cd _build + cmake -Denable_documentation=OFF -Denable_coverage=ON -Denable_java=ON -Denable_model-checking=OFF -Denable_lua=OFF -Denable_compile_optimizations=ON -Denable_smpi=ON -Denable_smpi_MPICH3_testsuite=OFF -Denable_compile_warnings=ON .. + make -j4 && ctest -j4 --output-on-failure diff --git a/.gitignore b/.gitignore index 31e5101f7b..9ddacb2402 100644 --- a/.gitignore +++ b/.gitignore @@ -40,7 +40,7 @@ src/*_unit.cpp src/*_unit.c ### Generated files _*.c -include/simgrid_config.h +include/simgrid/config.h include/smpi/smpif.h src/internal_config.h testprog @@ -168,6 +168,7 @@ examples/s4u/energy-boot/s4u-energy-boot examples/s4u/energy-exec/s4u-energy-exec examples/s4u/energy-link/s4u-energy-link examples/s4u/energy-vm/s4u-energy-vm +examples/s4u/engine-filtering/s4u-engine-filtering examples/s4u/exec-async/s4u-exec-async examples/s4u/exec-basic/s4u-exec-basic examples/s4u/exec-dvfs/s4u-exec-dvfs diff --git a/.mailmap b/.mailmap index 47e5d3fd07..65f4a890de 100644 --- a/.mailmap +++ b/.mailmap @@ -30,6 +30,7 @@ Tom Cornebize Gabriel Corona Augustin Degomme +Augustin Degomme Augustin Degomme Augustin Degomme Augustin Degomme @@ -85,6 +86,7 @@ Pierre Navarro Lucas Nussbaum Tien-Dat Phan Martin Quinson <(no author)@48e7efb5-ca39-0410-a469-dd3cf9ba447f> +Martin Quinson <624847+mquinson@users.noreply.github.com> Martin Quinson Martin Quinson Martin Quinson diff --git a/.travis.yml b/.travis.yml index fcb08e69eb..f681ceac49 100644 --- a/.travis.yml +++ b/.travis.yml @@ -13,13 +13,16 @@ compiler: # - clang addons: apt: + update: true + sources: + - sourceline: ppa:samuel-bachmann/boost # Get boost 1.60 for Trusty packages: - cmake - valgrind - default-jdk - gfortran - - libboost-dev - - libboost-all-dev + - libboost1.60-dev + - libboost1.60-all-dev - libdw-dev - libevent-dev - libunwind8-dev diff --git a/CMakeLists.txt b/CMakeLists.txt index 28492c4dcb..ca7a1da578 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -105,7 +105,7 @@ endif() #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-# set(SIMGRID_VERSION_MAJOR "3") -set(SIMGRID_VERSION_MINOR "19") +set(SIMGRID_VERSION_MINOR "20") set(SIMGRID_VERSION_PATCH "90") set(SIMGRID_VERSION_EXTRA "-DEVEL") # Extra words to add to version string (e.g. -rc1) @@ -615,11 +615,11 @@ endif() # Avoid triggering a (full) rebuild by touching the files if they did not really change configure_file("${CMAKE_HOME_DIRECTORY}/tools/cmake/src/internal_config.h.in" "${CMAKE_BINARY_DIR}/src/internal_config.h.generated" @ONLY IMMEDIATE) -configure_file("${CMAKE_HOME_DIRECTORY}/include/simgrid_config.h.in" "${CMAKE_BINARY_DIR}/include/simgrid_config.h.generated" @ONLY IMMEDIATE) +configure_file("${CMAKE_HOME_DIRECTORY}/include/simgrid/config.h.in" "${CMAKE_BINARY_DIR}/include/simgrid/config.h.generated" @ONLY IMMEDIATE) execute_process(COMMAND ${CMAKE_COMMAND} -E copy_if_different ${CMAKE_BINARY_DIR}/src/internal_config.h.generated ${CMAKE_BINARY_DIR}/src/internal_config.h) -execute_process(COMMAND ${CMAKE_COMMAND} -E copy_if_different ${CMAKE_BINARY_DIR}/include/simgrid_config.h.generated ${CMAKE_BINARY_DIR}/include/simgrid_config.h) +execute_process(COMMAND ${CMAKE_COMMAND} -E copy_if_different ${CMAKE_BINARY_DIR}/include/simgrid/config.h.generated ${CMAKE_BINARY_DIR}/include/simgrid/config.h) file(REMOVE ${CMAKE_BINARY_DIR}/src/internal_config.h.generated) -file(REMOVE ${CMAKE_BINARY_DIR}/include/simgrid_config.h.generated) +file(REMOVE ${CMAKE_BINARY_DIR}/include/simgrid/config.h.generated) # We need two versions of the SMPI scripts because they contain the path to the library # so, it depends of whether SimGrid is installed, or run from the sources (during the build) @@ -679,7 +679,7 @@ endif() set(generated_headers_to_install ${CMAKE_CURRENT_BINARY_DIR}/include/smpi/mpif.h - ${CMAKE_CURRENT_BINARY_DIR}/include/simgrid_config.h + ${CMAKE_CURRENT_BINARY_DIR}/include/simgrid/config.h ) set(generated_headers ${CMAKE_CURRENT_BINARY_DIR}/src/internal_config.h ) @@ -700,7 +700,7 @@ set(generated_files_to_clean if(NOT "${CMAKE_BINARY_DIR}" STREQUAL "${CMAKE_HOME_DIRECTORY}") configure_file(${CMAKE_HOME_DIRECTORY}/examples/smpi/replay/actions0.txt ${CMAKE_BINARY_DIR}/examples/smpi/replay/actions0.txt COPYONLY) configure_file(${CMAKE_HOME_DIRECTORY}/examples/smpi/replay/actions1.txt ${CMAKE_BINARY_DIR}/examples/smpi/replay/actions1.txt COPYONLY) - configure_file(${CMAKE_HOME_DIRECTORY}/examples/smpi/replay/actions_allReduce.txt ${CMAKE_BINARY_DIR}/examples/smpi/replay/actions_allReduce.txt COPYONLY) + configure_file(${CMAKE_HOME_DIRECTORY}/examples/smpi/replay/actions_allreduce.txt ${CMAKE_BINARY_DIR}/examples/smpi/replay/actions_allreduce.txt COPYONLY) configure_file(${CMAKE_HOME_DIRECTORY}/examples/smpi/replay/actions_barrier.txt ${CMAKE_BINARY_DIR}/examples/smpi/replay/actions_barrier.txt COPYONLY) configure_file(${CMAKE_HOME_DIRECTORY}/examples/smpi/replay/actions_bcast.txt ${CMAKE_BINARY_DIR}/examples/smpi/replay/actions_bcast.txt COPYONLY) configure_file(${CMAKE_HOME_DIRECTORY}/examples/smpi/replay/actions_with_isend.txt ${CMAKE_BINARY_DIR}/examples/smpi/replay/actions_with_isend.txt COPYONLY) @@ -754,7 +754,7 @@ if(NOT "${CMAKE_BINARY_DIR}" STREQUAL "${CMAKE_HOME_DIRECTORY}") ${generated_files_to_clean} ${CMAKE_BINARY_DIR}/examples/smpi/replay/actions0.txt ${CMAKE_BINARY_DIR}/examples/smpi/replay/actions1.txt - ${CMAKE_BINARY_DIR}/examples/smpi/replay/actions_allReduce.txt + ${CMAKE_BINARY_DIR}/examples/smpi/replay/actions_allreduce.txt ${CMAKE_BINARY_DIR}/examples/smpi/replay/actions_barrier.txt ${CMAKE_BINARY_DIR}/examples/smpi/replay/actions_bcast.txt ${CMAKE_BINARY_DIR}/examples/smpi/replay/actions_with_isend.txt @@ -857,9 +857,9 @@ foreach(line ${config_output}) message(" ${line}") endforeach() message("##########################################") -message("#### Content of simgrid_config.h ####") +message("#### Content of simgrid/config.h ####") message("##########################################") -file(STRINGS ${CMAKE_CURRENT_BINARY_DIR}/include/simgrid_config.h config_output) +file(STRINGS ${CMAKE_CURRENT_BINARY_DIR}/include/simgrid/config.h config_output) LIST(REMOVE_AT config_output 0 1 2 3 4 5 6 7 8 9 -1) # Pass the file header foreach(line ${config_output}) message(" ${line}") diff --git a/ChangeLog b/ChangeLog index fd2e22e47e..a4ff8397f8 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,36 +1,89 @@ -SimGrid (3.20) NOT RELEASED YET (Release target: June 21. 2018 10:07 UTC) +SimGrid (3.21) NOT RELEASED (Release Target: September 23. 2018, 1:54 UTC) + + + + +SimGrid (3.20) Released June 24. 2018 + +The proxy snake_case() release. + +S4U: + - The whole API is now using snake_case() instead of mixing it with camelCase. + Compatibility wrappers in place for one year. + - We took the opportunity to increase the consistency of the API. + Please report any remaining glitches. + - New function simgrid::s4u::Host::get_actor_count: + Returns the number of actors running on a specific host. + +SMPI: + - SMPI is now tested with ~45 proxy apps from various sources, with none or + only minor patching needed: check https://github.com/simgrid/SMPI-proxy-apps + - Replay: The replay file has been re-written in C++. + - Replay: Tags used for messages sent via MPI_Send / MPI_Recv are now + supported. They are stored in the trace and used when replayed. + - Basic support of MPI_Cancel. Robustness not guaranteed. + - Support of MPI_Win_allocate_shared, MPI_Win_shared_query, MPI_Comm_split_type + (only for MPI_COMM_TYPE_SHARED). + - New option: smpi/privatize-libs, to add external shared libs to be privatized + by SMPI. They will be copied locally and loaded separately by each process. + Example --cfg=smpi/privatize-libs:"libgfortran.so.3;libscalapack.so". + - Tracing: add tracing for MPI_Start, Startall, Testall, Testany + - Interception of getopt, getopt_long and getopt_long_only calls to avoid issues + with internal index optind with multiple processes. Only works if MPI_Init has + already been called. + - Fortran: SMPI builds a mpi.mod file which should allow use of "use mpi" + syntax without preprocessing tricks. TRACE - Change --cfg=tracing/msg/vm to --cfg=tracing/vm as virtual machine behavior tracing is no longer limited to MSG - -S4U: - - Introduced new function simgrid::s4u::Host::get_actor_count. This function - returns the number of actors running on a specific host. + - TIT (Time Independent Traces): We finally support tags. Unfortunately, + this means that traces now need to be updated or re-obtained; both Irecv + and Isend lines in your traces have now in total 5 mandatory fields: + + To update your traces, it suffices to add a 0 for the tag here. + - TIT now also supports waiting for a distinct request via MPI_Wait. + Wait/Test now wait for a specific request, not just the last one that was + issued. This unfortunately means another update, because we need to + identify which request you want to wait for. We do this via the + triplet (sender, receiver, tag), which needs to be added: + + - Actions are now in lower case (e.g., "allReduce" becomes "allreduce"). + New script simgrid_convert_TI_traces.py: upgrade your TI traces. + +MSG + - The deprecation of MSG is ongoing (but this should not impact you). + Many MSG functions are now simple wrappers on the C API of S4U. If + you wish to convert your code to S4U, find the S4U counterparts of + your MSG calls in src/msg/msg_legacy.cpp. + - MSG can still be used, but won't evolve anymore. Plugins: - - Allow to run the Link energy plugin from the command line with + - Allow to run the Link energy plugin from the command line with --cfg=plugin:link_energy - Rename Energy plugin into host_energy - Rename Load plugin into host_load simix: - Add parameter --cfg=simix/breakpoint to raise a SIGTRAP at given time. - -SMPI: - - Replay: The replay file has been re-written in C++. - - Replay: Tags used for messages sent via MPI_Send / MPI_Recv are now - supported. They are stored in the trace and used when replayed. + - kill simix::onDeadlock() that was somewhat dupplicating s4u::on_deadlock() + - Improve performance when handling timeouts of simix synchros. XBT: - Config: the C API is now deprecated (will be removed in 3.23), and the C++ API has been slightly improved. +Other: + - Fix several build issues on OSX. + - Move simgrid_config.h to simgrid/config.h (old header still working) + Fixed bugs: - #143: Setting a breakpoint at a given time + - #150: Inconsistent event names in SMPI replay - #258: daemonized actors hang after all non-daemonized actors have completed - #267: Linker error on unit_tmgr - - #269: SMPI : tracing of MPI_Wait/all/any broken + - #269: SMPI: tracing of MPI_Wait/all/any broken + - SMPI: Fix various crashes with combined use of MPI_PROC_NULL and MPI_IGNORE_STATUS ---------------------------------------------------------------------------- @@ -133,7 +186,9 @@ SimGrid (3.19) Released March 20 2018 Fixed bugs: - #194: Feature request: simgrid::s4u::Comm::test_any() - #245: migrating an actor does not migrate its execution + - #253: Feature Request: expose clusters as objects - #254: Something seems wrong with s4u::Actor::kill(aid_t) + - #255: Tesh broken on Windows - #256: Modernize FindSimGrid.cmake - #257: Fix (ab)use of CMake install @@ -185,7 +240,7 @@ SimGrid (3.18) Released December 24 2017 Virtual Machines - Live migration is getting moved to a plugin. Dirty page tracking is the first part of this plugin. This imply that VM migration is now - only possible if one this function is called : + only possible if one this function is called: - C/MSG: MSG_vm_live_migration_plugin_init() - C/C++: sg_vm_live_migration_plugin_init() - Java: Msg.liveMigrationInit() @@ -336,12 +391,12 @@ SimGrid (3.16) Released June 22. 2017. SMPI - New algorithm to privatize globals: dlopen, with dynamic loading tricks - New option: smpi/keep-temps to not cleanup temp files - - New option : smpi/shared-malloc-blocksize . Relevant only when global shared + - New option: smpi/shared-malloc-blocksize . Relevant only when global shared mallocs mode is used, allows to change the size of the fake file used (default 1MB), to potentially limit the number of mappings for large runs. - Support for sparse privatized malloc with SMPI_PARTIAL_SHARED_MALLOC() - Fortran ifort and flang compilers support - - New RMA calls supported (experimental) : + - New RMA calls supported (experimental): - MPI_Win_allocate, MPI_Win_create_dynamic, MPI_Win_attach - MPI_Win_detach, MPI_Win_set_info, MPI_Win_get_info - MPI_Win_lock_all, MPI_Win_unlock_all, MPI_Win_flush @@ -502,9 +557,9 @@ SimGrid (3.14) Released December 24. 2016 * smpirun script should be (much) faster for large deployments. - * SMPI tracing : fixed issue with poor matching of send/receives. + * SMPI tracing: fixed issue with poor matching of send/receives. - * Replay : Fix broken waitall + * Replay: Fix broken waitall New functions and features * MSG_parallel_task_execute_with_timeout, to timeout computations. @@ -756,7 +811,7 @@ SimGrid (3.12) stable; urgency=low SMPI: * New functions - - Onesided early support for : MPI_Win_(create, free, fence, get_name, set_name, get_group), MPI_Get, MPI_Put, MPI_Accumulate, MPI_Alloc_mem, MPI_Free_mem. + - Onesided early support for: MPI_Win_(create, free, fence, get_name, set_name, get_group), MPI_Get, MPI_Put, MPI_Accumulate, MPI_Alloc_mem, MPI_Free_mem. - MPI_Keyval*, MPI_Attr* functions, as well as MPI_Comm_attr*, MPI_Type_attr* variants (C only, no Fortran support yet) - MPI_Type_set_name, MPI_Type_get_name - MPI_*_c2f and MPI_*_f2c functions @@ -765,13 +820,13 @@ SimGrid (3.12) stable; urgency=low - Activate a lot of new tests from the mpich 3 testsuite * Features - Constant times can be injected inside MPI_Wtime and MPI_Test through options smpi/wtime and smpi/test - - InfiniBand network model added : Based on the works of Jerome Vienne + - InfiniBand network model added: Based on the works of Jerome Vienne http://mescal.imag.fr/membres/jean-marc.vincent/index.html/PhD/Vienne.pdf - When smpi/display_timing is set, also display global simulation time and application times - Have smpirun, smpicc and friends display the simgrid git hash version on --git-version * Collective communications - SMP-aware algorithms are now dynamically handled. An internal communicator is created for each node, and an external one to handle communications between "leaders" of each node - - MVAPICH2 (1.9) collective algorithms selector : normal and SMP algorithms are handled, and selection logic is based on the one used on TACC's Stampede cluster (https://www.tacc.utexas.edu/stampede/). + - MVAPICH2 (1.9) collective algorithms selector: normal and SMP algorithms are handled, and selection logic is based on the one used on TACC's Stampede cluster (https://www.tacc.utexas.edu/stampede/). - Support for Rabenseifner Reduce/Allreduce algorithms (https://fs.hlrs.de/projects/par/mpi//myreduce.html) * Replay - Replay now uses algorithms from wanted collective selector @@ -779,7 +834,7 @@ SimGrid (3.12) stable; urgency=low - Memory occupation of replay should now be contained (temporary buffers allocated in collective algorithms should be shared between processes) - Replay can now replay several traces at the same time (check examples/smpi/replay_multiple example), to simulate interactions between several applications on a given platform. User can specify the start time of each instance. This should also allow replay + actual applications to run. * Bug fixes - - [#17799] : have mpi_group_range_incl and mpi_group_range_excl better test some corner cases + - [#17799]: have mpi_group_range_incl and mpi_group_range_excl better test some corner cases - Correctly use loopback on fat-tree clusters - Asynchronous small messages shouldn't trigger deadlocks anymore * Energy/DVFS cleanup and improvement @@ -805,7 +860,7 @@ SimGrid (3.12) stable; urgency=low * New functions - Add a xbt_heap_update function, to avoid costly xbt_heap_remove+xbt_heap_insert use - Add a xbt wrapper for simcall_mutex_trylock (asked in [#17878]) - - Add two new log appenders : rollfile and splitfile. Patch by Fabien Chaix. + - Add two new log appenders: rollfile and splitfile. Patch by Fabien Chaix. - xbt_dirname and xbt_basename for non-POSIX systems MC * The model checker now runs as a separate process. @@ -906,18 +961,18 @@ SimGrid (3.11) stable; urgency=low one node. * Collective communication algorithms should not crash if used with improper number of nodes and report the error. - * SMPI now partially supports MPI_Topologies : MPI_Cart_create, MPI_Cart_shift, + * SMPI now partially supports MPI_Topologies: MPI_Cart_create, MPI_Cart_shift, MPI_Cart_rank, MPI_Cart_get, MPI_Cart_coords, MPI_Cartdim_get, MPI_Dims_create, MPI_Cart_sub are supported. * New interface to use SMPI programmatically (still depends on MSG for - some parts, see examples/smpi/smpi_msg_masterslave) : + some parts, see examples/smpi/smpi_msg_masterslave): - SMPI_app_instance_register(const char *name, xbt_main_func_t code, int num_processes) - SMPI_init() - SMPI_finalize(); * Global variables privatization in MPI executables is now performed at runtime with the option smpi/privatize_global_variables (default:no). - Limitations : Linux/BSD only, with mmap enabled. Global variables inside + Limitations: Linux/BSD only, with mmap enabled. Global variables inside dynamic libraries loaded by the application are not privatized (static linking with these libraries is advised in this case) @@ -992,7 +1047,7 @@ SimGrid (3.10) stable; urgency=low - allows to select one in particular with --cfg=smpi/coll_name:algorithm - allows to use the decision logic of OpenMPI(1.7) or MPICH(3.0.4) by setting --cfg=smpi/coll_selector:(mpich/ompi) - * Support for new functions : MPI_Issend, MPI_Ssend, Commutative operations in + * Support for new functions: MPI_Issend, MPI_Ssend, Commutative operations in Reduce * Add a --cfg:tracing/smpi/internals option, to trace internal communications happening inside a collective SMPI call. @@ -1203,7 +1258,7 @@ SimGrid (3.8) stable; urgency=low by a SD_TASK_COMM_E2E typed task. This rate depends on both the nominal bandwidth on the route onto which the task is scheduled and the amount of data to transfer. - To divide the nominal bandwidth by 2, the rate then has to be : + To divide the nominal bandwidth by 2, the rate then has to be: rate = bandwidth/(2*amount) * Compute tasks that have failed can now be rescheduled and executed again (from their beginning) @@ -2279,7 +2334,7 @@ SimGrid (3.3.2) stable; urgency=low action_free ~> action_unref action_change_state ~> action_state_set action_get_state ~> action_state_get - - Change model methods into functions : + - Change model methods into functions: (model)->common_public->action_use ~> surf_action_ref * Implement a generic resource; use it as ancestor to specific ones @@ -2710,7 +2765,7 @@ SimGrid (3.1) stable; urgency=high * After a (long ?) discussion on simgrid-devel, we have decided that the convention we had on units was stupid. That is why it has been decided to move from (MBits, MFlops, seconds) to (Bits, Flops, seconds). - WARNING : This means that all previous platform files will not work as + WARNING: This means that all previous platform files will not work as such with this version! A warning is issued to ask users to update their files. [AL] A conversion script can be found in the contrib module of the CVS, under @@ -3171,7 +3226,7 @@ SimGrid (2.90) unstable; urgency=low * REVOLUTION 1: The SimGrid project has merged with the GRAS project lead by Martin Quinson. As a consequence SimGrid gains a lot in portability, speed, and a lot more but you'll figure it out later. - SimGrid now comprises 3 different projects : MSG, GRAS and SMPI. + SimGrid now comprises 3 different projects: MSG, GRAS and SMPI. I wanted to release the new MSG as soon as possible and I have broken GRAS, which is the reason why, for now, only MSG is fully functional. A laconic description of these projects is available @@ -3186,7 +3241,7 @@ SimGrid (2.90) unstable; urgency=low * REVOLUTION 3: I have tried to change a little as possible the API of MSG but a few things really had to disappear. The main differences - with the previous version are : + with the previous version are: 1) no more m_links_t and the corresponding functions. Platforms are directly read from a XML description and cannot be hard-coded anymore. The same format is used for application deployment diff --git a/FindSimGrid.cmake b/FindSimGrid.cmake index dd035e23f5..ad4792e827 100644 --- a/FindSimGrid.cmake +++ b/FindSimGrid.cmake @@ -56,9 +56,16 @@ cmake_minimum_required(VERSION 2.8) find_path(SimGrid_INCLUDE_DIR - NAMES simgrid_config.h + NAMES simgrid/config.h PATHS ${SimGrid_PATH}/include /opt/simgrid/include ) +if (NOT SimGrid_INCLUDE_DIR) + # search under the old name + find_path(SimGrid_INCLUDE_DIR + NAMES simgrid_config.h + PATHS ${SimGrid_PATH}/include /opt/simgrid/include + ) +endif() find_library(SimGrid_LIBRARY NAMES simgrid PATHS ${SimGrid_PATH}/lib /opt/simgrid/lib @@ -68,7 +75,11 @@ mark_as_advanced(SimGrid_LIBRARY) if (SimGrid_INCLUDE_DIR) set(SimGrid_VERSION_REGEX "^#define SIMGRID_VERSION_(MAJOR|MINOR|PATCH) ([0-9]+)$") - file(STRINGS "${SimGrid_INCLUDE_DIR}/simgrid_config.h" SimGrid_VERSION_STRING REGEX ${SimGrid_VERSION_REGEX}) + if (EXISTS "${SimGrid_INCLUDE_DIR}/simgrid/config.h") + file(STRINGS "${SimGrid_INCLUDE_DIR}/simgrid/config.h" SimGrid_VERSION_STRING REGEX ${SimGrid_VERSION_REGEX}) + else() + file(STRINGS "${SimGrid_INCLUDE_DIR}/simgrid_config.h" SimGrid_VERSION_STRING REGEX ${SimGrid_VERSION_REGEX}) + endif() set(SimGrid_VERSION "") # Concat the matches to MAJOR.MINOR.PATCH assuming they appear in this order diff --git a/NEWS b/NEWS index dc270346a3..c04c3f9bba 100644 --- a/NEWS +++ b/NEWS @@ -1,9 +1,24 @@ + _ _____ ____ _ +__ _____ _ __ ___(_) ___ _ __ |___ / |___ \/ | +\ \ / / _ \ '__/ __| |/ _ \| '_ \ |_ \ __) | | + \ V / __/ | \__ \ | (_) | | | | ___) | / __/| | + \_/ \___|_| |___/_|\___/|_| |_| |____(_)_____|_| + (not released) + + _ _____ ____ ___ __ _____ _ __ ___(_) ___ _ __ |___ / |___ \ / _ \ \ \ / / _ \ '__/ __| |/ _ \| '_ \ |_ \ __) | | | | \ V / __/ | \__ \ | (_) | | | | ___) | / __/| |_| | \_/ \___|_| |___/_|\___/|_| |_| |____(_)_____|\___/ - (NOT RELEASED) + June 24. 2018 + +The proxy snake_case() release. + + * Sanitize the public API. Compatibility wrappers in place for one year. + * More CI: ~45 Proxy Apps + BigDFT + StarPU now tested nightly + * MPI: Port the trace replay engine to C++, fix visualization + * (+ the classical bug fixes and doc improvement) _ _____ _ ___ _ __ _____ _ __ ___(_) ___ _ __ |___ / / |/ _ \ / | diff --git a/README.md b/README.md index ad666cea81..7656083021 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,6 @@ [![Travis Status](https://travis-ci.org/simgrid/simgrid.svg?branch=master)](https://travis-ci.org/simgrid/simgrid) [![AppVeyor Status](https://ci.appveyor.com/api/projects/status/gvcssh340fwtoc35?svg=true)](https://ci.appveyor.com/project/mquinson/simgrid) +[![SonarCloud Status](https://sonarcloud.io/api/project_badges/measure?project=simgrid&metric=alert_status)](https://sonarcloud.io/dashboard/?id=simgrid) [![Codacy Badge](https://api.codacy.com/project/badge/Grade/bf1bdba50440485fbda2ac19f462ccc7)](https://www.codacy.com/app/mquinson/simgrid?utm_source=github.com&) [![Doc](https://readthedocs.org/projects/pip/badge/?version=stable)](http://simgrid.gforge.inria.fr/simgrid/latest/doc/) [![License: LGPL v3][license-badge]](COPYING) diff --git a/doc/Doxyfile.in b/doc/Doxyfile.in index 4f86868c25..1be4cec6c0 100644 --- a/doc/Doxyfile.in +++ b/doc/Doxyfile.in @@ -1461,9 +1461,9 @@ PREDEFINED = XBT_PUBLIC= \ XBT_PUBLIC_DATA=extern \ XBT_INLINE= \ XBT_PRIVATE= \ - XBT_ATTRIB_DEPRECATED_v321(m)= \ XBT_ATTRIB_DEPRECATED_v322(m)= \ - XBT_ATTRIB_DEPRECATED_v323(m)= + XBT_ATTRIB_DEPRECATED_v323(m)= \ + XBT_ATTRIB_DEPRECATED_v324(m)= # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then # this tag can be used to specify a list of macro names that should be expanded. diff --git a/doc/doxygen/inside_extending.doc b/doc/doxygen/inside_extending.doc index e13c61cea6..a1f1286e1f 100644 --- a/doc/doxygen/inside_extending.doc +++ b/doc/doxygen/inside_extending.doc @@ -201,7 +201,7 @@ If there is no blocking and no mutation involved (getters), you might consider avoiding switching to Maestro and reading directly the data you're interested in. -For simcalls which might block, `kernelSync()` can be used. It takes a +For simcalls which might block, `kernel_sync()` can be used. It takes a C++ callback and executes it immediately in maestro. This C++ callback is expected to return a `simgrid::kernel::Future` reprensenting the operation in the kernal. When the operations completes, the user process is waken up @@ -209,25 +209,25 @@ with the result: ~~~ try { - std::vector result = simgrid::simix::kernelSync([&] { + std::vector result = simgrid::simix::kernel_sync([&] { // Fictional example, simgrid::kernel::readFile does not exist. simgrid::kernel::Future> result = simgrid::kernel::readFile(file); return result; }); XBT_DEBUG("Finished reading file %s: length %zu", file, result.size()); } -// If the operation failed, kernelSync() throws an exception: +// If the operation failed, kernel_sync() throws an exception: catch (std::runtime_error& e) { XBT_ERROR("Could not read file %s", file); } ~~~ -Asynchronous blocks can be implemented with `kernelAsync()`. It works -like `kernelSync()` but does not block. Instead, it returns a +Asynchronous blocks can be implemented with `kernel_async()`. It works +like `kernel_sync()` but does not block. Instead, it returns a `simgrid::simix::Future` representing the operation in the process: ~~~ -simgrid::simix::Future> result = simgrid::simix::kernelSync([&] { +simgrid::simix::Future> result = simgrid::simix::kernel_sync([&] { // Fictional example, simgrid::kernel::readFile does not exist. simgrid::kernek::Future> result = simgrid::kernel::readFile(file); return result; @@ -249,7 +249,7 @@ catch (std::runtime_error& e) { } ~~~ -Note: `kernelSync(f)` could be implemented as `kernelAsync(f).get()`. +Note: `kernel_sync(f)` could be implemented as `kernel_async(f).get()`. \section simgrid_dev_guide_tag What is How to add a new tag for xml files? diff --git a/doc/doxygen/inside_release.doc b/doc/doxygen/inside_release.doc index 7422e9e0e7..24173733f1 100644 --- a/doc/doxygen/inside_release.doc +++ b/doc/doxygen/inside_release.doc @@ -53,11 +53,11 @@ cmake . && make dist Get the jarfiles for several OSes on the CI slaves. Use Save under to give a separate name to each of them. -- On Jenkins: Mac OSX, Linux 64 and Linux 32 (without boost-context), FreeBSD -- On AppVeyor: Windows - -For Linux, it is safer to rebuild them in a chroot (to avoid -boost-context and all other optional dependencies): +- Mac OSX, FreeBSD: on Jenkins +- Windows: on AppVeyor +- Linux: it is safer to rebuild them in a chroot (to avoid + boost-context and all other optional dependencies): + \verbatim mkdir /tmp/build-amd64 cp SimGrid-3.*.tar.gz /tmp/build-amd64 @@ -65,11 +65,11 @@ sudo debootstrap --arch amd64 --variant=buildd testing /tmp/build-amd64 http://d sudo chroot /tmp/build-amd64 echo "proc /proc proc rw,nosuid,nodev,noexec,relatime 0 0" >> /tmp/fstab mount proc /proc -t proc -apt-get install -y cmake default-jdk libboost-dev python3 +apt-get install -y cmake default-jdk libboost-dev python3 doxygen cd tmp tar xfz ../SimGrid*tar.gz && cd SimGrid-* -cmake . -Denable_documentation=off -Denable_java=ON -make -j4 && ctest -R java +cmake . -Denable_documentation=ON -Denable_java=ON +make -j4 && LC_ALL=C ctest -R java \endverbatim Once all jarfiles are in a separate directory, run the following to @@ -77,7 +77,7 @@ merge them: \verbatim mkdir content ; cd content -for j in ../simgrid-linux64.jar ../*.jar ; do unzip -n $j ; done +for j in ../simgrid-linux64.jar ../simgrid*.jar ; do unzip -n $j ; done # The content of all jar should be the same, but I prefer using the Linux64 version by default # => unpack it first, and unpack the others with -n (never overwrite) @@ -120,7 +120,7 @@ the settings icon of the release you want to change. - Also mail some other lists (G5K users), with only the NEWS chunk and the link to the download section - Release the debian package - - make -C debian/rules get-orig-source + - make -f debian/rules get-orig-source - gbp import ../simgrid_XXX+dfsg.orig.tar.xz - dch -i "New upstream release" # + copy the NEWS into debian/changelog - git mv debian/libsimgrid3.XX.install debian/libsimgrid3.XY.install @@ -129,6 +129,7 @@ the settings icon of the release you want to change. - libsimgrid3.XY conflicts with libsimgrid3.XX because of smpimain - Update the simgrid/package.py for spack: https://gitlab.inria.fr/solverstack/spack-repo - Create the template for the next release in ChangeLog and NEWS files + Release Target date: https://en.wikipedia.org/wiki/Equinox - Change the release number to 3.X.90 in CMakeLists.txt and sonar-project.properties - Deal with deprecations: - Introduce the XBT_ATTRIB_DEPRECATED_v??? macro for the next release. diff --git a/doc/doxygen/module-smpi.doc b/doc/doxygen/module-smpi.doc index cf8aca9705..ede94c177d 100644 --- a/doc/doxygen/module-smpi.doc +++ b/doc/doxygen/module-smpi.doc @@ -166,7 +166,7 @@ Most of these are best described in router is used only to give some information -for routing algorithms. So, it does not have any attributes except : +for routing algorithms. So, it does not have any attributes except: #### Attributes #### @@ -1001,7 +1001,7 @@ routing model (the path is given relative to SimGrid's source directory) \verbinclude example_filelist_routing_dijkstra -Dijkstra example : +Dijkstra example: \verbatim @@ -1051,7 +1051,7 @@ if there are no example files listed here, this is likely to be correct. \anchor pf_routing_model_full ### Full ### -Full example : +Full example: \verbatim @@ -1297,7 +1297,7 @@ to bypass some routes defined in lower level zone at an upper stage: bypasszoneroute is the tag you're looking for. It allows to bypass routes defined between already defined between zone (if you want to bypass route for a specific host, you should just use byPassRoute). -The principle is the same as zoneroute : bypasszoneroute contains +The principle is the same as zoneroute: bypasszoneroute contains list of links that are in the path between src and dst. #### Attributes #### @@ -1330,10 +1330,10 @@ attribute was not given, this route is presumed to be symmetrical. As said before, once you choose a model, it (most likely; the constant network model, for example, doesn't) calculates routes for you. But maybe you want to define some of your routes, which will be specific. You may also want -to bypass some routes defined in lower level zone at an upper stage : +to bypass some routes defined in lower level zone at an upper stage: bypassRoute is the tag you're looking for. It allows to bypass routes defined between host/router. The principle is the same -as route : bypassRoute contains list of links references of +as route: bypassRoute contains list of links references of links that are in the path between src and dst. #### Attributes #### @@ -1373,7 +1373,7 @@ and zone_2. If you want to make a host (h1) from zone_1 with another one defined inside zone_Big. If you choose some shortest-path model, this route will be computed automatically. -As said before, there are mainly 2 tags for routing : +As said before, there are mainly 2 tags for routing: \li zoneroute: to define routes between two zone \li route: to define routes between two host/router @@ -1387,7 +1387,7 @@ say that zone_1 contains full routes, and zone_2 contains some Floyd routing (as we don't want to bother with defining all routes). As we're using some shortest path algorithms to route into zone_2, we'll then have to define some route to gives some topological -information to SimGrid. Here is a file doing it all : +information to SimGrid. Here is a file doing it all: \verbatim @@ -1610,7 +1610,7 @@ platforms. \subsection pf_exit_zone Exit Zone: why and how Users that have looked at some of our platforms may have notice a -non-intuitive schema ... Something like that : +non-intuitive schema ... Something like that: \verbatim @@ -1715,7 +1715,7 @@ You may have noted that conveniently, a peer named FOO defines an zone named FOO Choosing wisely the routing model to use can significantly fasten your simulation/save your time when writing the platform/save tremendous disk space. Here is the list of available model and their -characteristics (lookup : time to resolve a route): +characteristics (lookup: time to resolve a route): \li Full: Full routing data (fast, large memory requirements, fully expressive) diff --git a/doc/doxygen/uhood_switch.doc b/doc/doxygen/uhood_switch.doc index 684eacbb20..7247341ac1 100644 --- a/doc/doxygen/uhood_switch.doc +++ b/doc/doxygen/uhood_switch.doc @@ -200,7 +200,7 @@ The crux of `future.then()` is: @code{cpp} template template -auto simgrid::kernel::Future::thenNoUnwrap(F continuation) +auto simgrid::kernel::Future::then_no_unwrap(F continuation) -> Future { typedef decltype(continuation(std::move(*this))) R; @@ -468,14 +468,14 @@ kernel which will wake up the actor (with `simgrid::simix::unblock(actor)`) when the operation is completed. This is wrapped in a higher-level primitive as well. The -`kernelSync()` function expects a function-object which is executed +`kernel_sync()` function expects a function-object which is executed immediately in the simulation kernel and returns a `Future`. The simulator blocks the actor and resumes it when the `Future` becomes ready with its result: @code{cpp} template -auto kernelSync(F code) -> decltype(code().get()) +auto kernel_sync(F code) -> decltype(code().get()) { typedef decltype(code().get()) T; if (SIMIX_is_maestro()) @@ -510,7 +510,7 @@ auto kernelSync(F code) -> decltype(code().get()) A contrived example of this would be: @code{cpp} -int res = simgrid::simix::kernelSync([&] { +int res = simgrid::simix::kernel_sync([&] { return kernel_wait_until(30).then( [](simgrid::kernel::Future future) { return 42; @@ -521,7 +521,7 @@ int res = simgrid::simix::kernelSync([&] { ### Asynchronous operations {#uhood_switch_v2_async} -We can write the related `kernelAsync()` which wakes up the actor immediately +We can write the related `kernel_async()` which wakes up the actor immediately and returns a future to the actor. As this future is used in the actor context, it is a different future (`simgrid::simix::Future` instead of `simgrid::kernel::Future`) @@ -572,12 +572,12 @@ T simgrid::simix::Future::get() } @endcode -`kernelAsync()` simply :wink: calls `kernelImmediate()` and wraps the +`kernel_async()` simply :wink: calls `kernelImmediate()` and wraps the `simgrid::kernel::Future` into a `simgrid::simix::Future`: @code{cpp} template -auto kernelAsync(F code) +auto kernel_async(F code) -> Future { typedef decltype(code().get()) T; @@ -594,7 +594,7 @@ auto kernelAsync(F code) A contrived example of this would be: @code{cpp} -simgrid::simix::Future future = simgrid::simix::kernelSync([&] { +simgrid::simix::Future future = simgrid::simix::kernel_sync([&] { return kernel_wait_until(30).then( [](simgrid::kernel::Future future) { return 42; @@ -605,18 +605,18 @@ do_some_stuff(); int res = future.get(); @endcode -`kernelSync()` could be rewritten as: +`kernel_sync()` could be rewritten as: @code{cpp} template -auto kernelSync(F code) -> decltype(code().get()) +auto kernel_sync(F code) -> decltype(code().get()) { - return kernelAsync(std::move(code)).get(); + return kernel_async(std::move(code)).get(); } @endcode The semantic is equivalent but this form would require two simcalls -instead of one to do the same job (one in `kernelAsync()` and one in +instead of one to do the same job (one in `kernel_async()` and one in `.get()`). ## Mutexes and condition variables @@ -769,7 +769,7 @@ We wrote two future implementations based on the `std::future` API: * the second one is a wait-based (`future.get()`) future used in the actors which waits using a simcall. -These futures are used to implement `kernelSync()` and `kernelAsync()` which +These futures are used to implement `kernel_sync()` and `kernel_async()` which expose asynchronous operations in the simulation kernel to the actors. In addition, we wrote variations of some other C++ standard library diff --git a/examples/s4u/actor-migration/s4u-actor-migration.cpp b/examples/s4u/actor-migration/s4u-actor-migration.cpp index d6fb4c5fda..788bf0f864 100644 --- a/examples/s4u/actor-migration/s4u-actor-migration.cpp +++ b/examples/s4u/actor-migration/s4u-actor-migration.cpp @@ -23,7 +23,7 @@ XBT_LOG_NEW_DEFAULT_CATEGORY(s4u_actor_migration, "Messages specific for this s4 static void worker(simgrid::s4u::Host* first, simgrid::s4u::Host* second) { - double flopAmount = first->getSpeed() * 5 + second->getSpeed() * 5; + double flopAmount = first->get_speed() * 5 + second->get_speed() * 5; XBT_INFO("Let's move to %s to execute %.2f Mflops (5sec on %s and 5sec on %s)", first->get_cname(), flopAmount / 1e6, first->get_cname(), second->get_cname()); diff --git a/examples/s4u/cloud-capping/s4u-cloud-capping.cpp b/examples/s4u/cloud-capping/s4u-cloud-capping.cpp index 8d3872d0d2..fbdef2a05e 100644 --- a/examples/s4u/cloud-capping/s4u-cloud-capping.cpp +++ b/examples/s4u/cloud-capping/s4u-cloud-capping.cpp @@ -41,7 +41,7 @@ static void worker_busy_loop(const char* name, double speed) if (speed > 0) { double new_bound = (speed / 10) * i; XBT_INFO("set bound of VM1 to %f", new_bound); - static_cast(simgrid::s4u::this_actor::get_host())->setBound(new_bound); + static_cast(simgrid::s4u::this_actor::get_host())->set_bound(new_bound); } simgrid::s4u::this_actor::sleep_for(100); double exec_remain_now = exec->get_remaining(); @@ -63,7 +63,7 @@ static void test_dynamic_change() vm1->start(); simgrid::s4u::Actor::create("worker0", vm0, worker_busy_loop, "Task0", -1); - simgrid::s4u::Actor::create("worker1", vm1, worker_busy_loop, "Task1", pm0->getSpeed()); + simgrid::s4u::Actor::create("worker1", vm1, worker_busy_loop, "Task1", pm0->get_speed()); simgrid::s4u::this_actor::sleep_for(3000); // let the tasks end vm0->destroy(); @@ -72,10 +72,10 @@ static void test_dynamic_change() static void test_one_task(simgrid::s4u::Host* host) { - const double cpu_speed = host->getSpeed(); + const double cpu_speed = host->get_speed(); const double computation_amount = cpu_speed * 10; - XBT_INFO("### Test: with/without MSG_task_set_bound"); + XBT_INFO("### Test: with/without task set_bound"); XBT_INFO("### Test: no bound for Task1@%s", host->get_cname()); simgrid::s4u::Actor::create("worker0", host, worker, computation_amount, false, 0); @@ -105,8 +105,8 @@ static void test_one_task(simgrid::s4u::Host* host) static void test_two_tasks(simgrid::s4u::Host* hostA, simgrid::s4u::Host* hostB) { - const double cpu_speed = hostA->getSpeed(); - xbt_assert(cpu_speed == hostB->getSpeed()); + const double cpu_speed = hostA->get_speed(); + xbt_assert(cpu_speed == hostB->get_speed()); const double computation_amount = cpu_speed * 10; const char* hostA_name = hostA->get_cname(); const char* hostB_name = hostB->get_cname(); @@ -189,7 +189,7 @@ static void master_main() vm0->destroy(); vm0 = new simgrid::s4u::VirtualMachine("VM0", pm0, 1); - vm0->setBound(pm0->getSpeed() / 10); + vm0->set_bound(pm0->get_speed() / 10); vm0->start(); XBT_INFO("# 7. Put a single task on the VM capped by 10%%."); @@ -207,10 +207,10 @@ static void master_main() vm0->destroy(); vm0 = new simgrid::s4u::VirtualMachine("VM0", pm0, 1); - vm0->setRamsize(1e9); // 1GB + vm0->set_ramsize(1e9); // 1GB vm0->start(); - double cpu_speed = pm0->getSpeed(); + double cpu_speed = pm0->get_speed(); XBT_INFO("# 10. Test migration"); const double computation_amount = cpu_speed * 10; @@ -221,7 +221,7 @@ static void master_main() XBT_INFO(" "); XBT_INFO("# 10. (b) set 10%% bound to the VM, and then put a task on the VM."); - vm0->setBound(cpu_speed / 10); + vm0->set_bound(cpu_speed / 10); simgrid::s4u::Actor::create("worker0", vm0, worker, computation_amount, false, 0); simgrid::s4u::this_actor::sleep_for(1000); XBT_INFO(" "); diff --git a/examples/s4u/cloud-capping/s4u-cloud-capping.tesh b/examples/s4u/cloud-capping/s4u-cloud-capping.tesh index e3eb60f33c..0911d20f09 100644 --- a/examples/s4u/cloud-capping/s4u-cloud-capping.tesh +++ b/examples/s4u/cloud-capping/s4u-cloud-capping.tesh @@ -1,7 +1,7 @@ ! output sort $ $SG_TEST_EXENV ${bindir:=.}/s4u-cloud-capping ${platfdir}/small_platform.xml --log=no_loc "--log=root.fmt:[%10.6r]%e(%i:%P@%h)%e%m%n" > [ 0.000000] (1:master_@Fafard) # 1. Put a single task on a PM. -> [ 0.000000] (1:master_@Fafard) ### Test: with/without MSG_task_set_bound +> [ 0.000000] (1:master_@Fafard) ### Test: with/without task set_bound > [ 0.000000] (1:master_@Fafard) ### Test: no bound for Task1@Fafard > [ 10.000000] (2:worker0@Fafard) not bound => duration 10.000000 (76296000.000000 flops/s) > [1000.000000] (1:master_@Fafard) ### Test: 50% for Task1@Fafard @@ -40,7 +40,7 @@ $ $SG_TEST_EXENV ${bindir:=.}/s4u-cloud-capping ${platfdir}/small_platform.xml - > [11040.000000] (20:worker1@Fafard) bound to 19074000.000000 => duration 40.000000 (19074000.000000 flops/s) > [12000.000000] (1:master_@Fafard) > [12000.000000] (1:master_@Fafard) # 3. Put a single task on a VM. -> [12000.000000] (1:master_@Fafard) ### Test: with/without MSG_task_set_bound +> [12000.000000] (1:master_@Fafard) ### Test: with/without task set_bound > [12000.000000] (1:master_@Fafard) ### Test: no bound for Task1@VM0 > [12010.000000] (21:worker0@VM0) not bound => duration 10.000000 (76296000.000000 flops/s) > [13000.000000] (1:master_@Fafard) ### Test: 50% for Task1@VM0 @@ -104,7 +104,7 @@ $ $SG_TEST_EXENV ${bindir:=.}/s4u-cloud-capping ${platfdir}/small_platform.xml - > [30040.000000] (53:worker1@VM0) bound to 19074000.000000 => duration 40.000000 (19074000.000000 flops/s) > [31000.000000] (1:master_@Fafard) > [31000.000000] (1:master_@Fafard) # 7. Put a single task on the VM capped by 10%. -> [31000.000000] (1:master_@Fafard) ### Test: with/without MSG_task_set_bound +> [31000.000000] (1:master_@Fafard) ### Test: with/without task set_bound > [31000.000000] (1:master_@Fafard) ### Test: no bound for Task1@VM0 > [31100.000000] (54:worker0@VM0) not bound => duration 100.000000 (7629600.000000 flops/s) > [32000.000000] (1:master_@Fafard) ### Test: 50% for Task1@VM0 diff --git a/examples/s4u/cloud-migration/s4u-cloud-migration.cpp b/examples/s4u/cloud-migration/s4u-cloud-migration.cpp index 46c11562e6..e53e714038 100644 --- a/examples/s4u/cloud-migration/s4u-cloud-migration.cpp +++ b/examples/s4u/cloud-migration/s4u-cloud-migration.cpp @@ -11,7 +11,7 @@ XBT_LOG_NEW_DEFAULT_CATEGORY(s4u_cloud_migration, "Messages specific for this ex static void vm_migrate(simgrid::s4u::VirtualMachine* vm, simgrid::s4u::Host* dst_pm) { - simgrid::s4u::Host* src_pm = vm->getPm(); + simgrid::s4u::Host* src_pm = vm->get_pm(); double mig_sta = simgrid::s4u::Engine::get_clock(); sg_vm_migrate(vm, dst_pm); double mig_end = simgrid::s4u::Engine::get_clock(); @@ -31,19 +31,19 @@ static void master_main() simgrid::s4u::Host* pm2 = simgrid::s4u::Host::by_name("Bourassa"); simgrid::s4u::VirtualMachine* vm0 = new simgrid::s4u::VirtualMachine("VM0", pm0, 1); - vm0->setRamsize(1e9); // 1Gbytes + vm0->set_ramsize(1e9); // 1Gbytes vm0->start(); - XBT_INFO("Test: Migrate a VM with %zu Mbytes RAM", vm0->getRamsize() / 1000 / 1000); + XBT_INFO("Test: Migrate a VM with %zu Mbytes RAM", vm0->get_ramsize() / 1000 / 1000); vm_migrate(vm0, pm1); vm0->destroy(); vm0 = new simgrid::s4u::VirtualMachine("VM0", pm0, 1); - vm0->setRamsize(1e8); // 100Mbytes + vm0->set_ramsize(1e8); // 100Mbytes vm0->start(); - XBT_INFO("Test: Migrate a VM with %zu Mbytes RAM", vm0->getRamsize() / 1000 / 1000); + XBT_INFO("Test: Migrate a VM with %zu Mbytes RAM", vm0->get_ramsize() / 1000 / 1000); vm_migrate(vm0, pm1); vm0->destroy(); @@ -51,8 +51,8 @@ static void master_main() vm0 = new simgrid::s4u::VirtualMachine("VM0", pm0, 1); simgrid::s4u::VirtualMachine* vm1 = new simgrid::s4u::VirtualMachine("VM1", pm0, 1); - vm0->setRamsize(1e9); // 1Gbytes - vm1->setRamsize(1e9); // 1Gbytes + vm0->set_ramsize(1e9); // 1Gbytes + vm1->set_ramsize(1e9); // 1Gbytes vm0->start(); vm1->start(); @@ -67,8 +67,8 @@ static void master_main() vm0 = new simgrid::s4u::VirtualMachine("VM0", pm0, 1); vm1 = new simgrid::s4u::VirtualMachine("VM1", pm0, 1); - vm0->setRamsize(1e9); // 1Gbytes - vm1->setRamsize(1e9); // 1Gbytes + vm0->set_ramsize(1e9); // 1Gbytes + vm1->set_ramsize(1e9); // 1Gbytes vm0->start(); vm1->start(); diff --git a/examples/s4u/cloud-simple/s4u-cloud-simple.cpp b/examples/s4u/cloud-simple/s4u-cloud-simple.cpp index e8cd04a13a..1d478691b6 100644 --- a/examples/s4u/cloud-simple/s4u-cloud-simple.cpp +++ b/examples/s4u/cloud-simple/s4u-cloud-simple.cpp @@ -193,7 +193,7 @@ static void master_main() " network one"); XBT_INFO("### Relocate VM0 between PM0 and PM1"); vm0 = new simgrid::s4u::VirtualMachine("VM0", pm0, 1); - vm0->setRamsize(1L * 1024 * 1024 * 1024); // 1GiB + vm0->set_ramsize(1L * 1024 * 1024 * 1024); // 1GiB vm0->start(); launch_communication_worker(vm0, pm2); diff --git a/examples/s4u/dht-chord/s4u-dht-chord.tesh b/examples/s4u/dht-chord/s4u-dht-chord.tesh index 10f9ce67e9..8f4168bc05 100644 --- a/examples/s4u/dht-chord/s4u-dht-chord.tesh +++ b/examples/s4u/dht-chord/s4u-dht-chord.tesh @@ -1,6 +1,6 @@ #!/usr/bin/env tesh -p Testing the Chord implementation with MSG +p Testing the Chord implementation with S4U ! output sort 19 $ $SG_TEST_EXENV ${bindir:=.}/s4u-dht-chord$EXEEXT -nb_bits=3 ${platfdir}/cluster.xml s4u-dht-chord_d.xml --log=s4u_chord.thres:verbose "--log=root.fmt:[%10.5r]%e(%P@%h)%e%m%n" diff --git a/examples/s4u/dht-kademlia/s4u-dht-kademlia.tesh b/examples/s4u/dht-kademlia/s4u-dht-kademlia.tesh index b720e41067..e17c478a89 100644 --- a/examples/s4u/dht-kademlia/s4u-dht-kademlia.tesh +++ b/examples/s4u/dht-kademlia/s4u-dht-kademlia.tesh @@ -1,6 +1,6 @@ #!/usr/bin/env tesh -p Testing the Kademlia implementation with MSG +p Testing the Kademlia implementation with S4U ! output sort 19 $ $SG_TEST_EXENV ${bindir:=.}/s4u-dht-kademlia ${platfdir}/cluster.xml ${srcdir:=.}/s4u-dht-kademlia_d.xml "--log=root.fmt:[%10.6r]%e(%02i:%P@%h)%e%m%n" diff --git a/examples/s4u/energy-exec/s4u-energy-exec.cpp b/examples/s4u/energy-exec/s4u-energy-exec.cpp index 1a30be2076..62d0f6c530 100644 --- a/examples/s4u/energy-exec/s4u-energy-exec.cpp +++ b/examples/s4u/energy-exec/s4u-energy-exec.cpp @@ -14,14 +14,14 @@ static void dvfs() simgrid::s4u::Host* host2 = simgrid::s4u::Host::by_name("MyHost2"); XBT_INFO("Energetic profile: %s", host1->get_property("watt_per_state")); - XBT_INFO("Initial peak speed=%.0E flop/s; Energy dissipated =%.0E J", host1->getSpeed(), + XBT_INFO("Initial peak speed=%.0E flop/s; Energy dissipated =%.0E J", host1->get_speed(), sg_host_get_consumed_energy(host1)); double start = simgrid::s4u::Engine::get_clock(); XBT_INFO("Sleep for 10 seconds"); simgrid::s4u::this_actor::sleep_for(10); XBT_INFO("Done sleeping (duration: %.2f s). Current peak speed=%.0E; Energy dissipated=%.2f J", - simgrid::s4u::Engine::get_clock() - start, host1->getSpeed(), sg_host_get_consumed_energy(host1)); + simgrid::s4u::Engine::get_clock() - start, host1->get_speed(), sg_host_get_consumed_energy(host1)); // Execute something start = simgrid::s4u::Engine::get_clock(); @@ -30,7 +30,7 @@ static void dvfs() simgrid::s4u::this_actor::execute(flopAmount); XBT_INFO("Task done (duration: %.2f s). Current peak speed=%.0E flop/s; Current consumption: from %.0fW to %.0fW" " depending on load; Energy dissipated=%.0f J", - simgrid::s4u::Engine::get_clock() - start, host1->getSpeed(), + simgrid::s4u::Engine::get_clock() - start, host1->get_speed(), sg_host_get_wattmin_at(host1, host1->get_pstate()), sg_host_get_wattmax_at(host1, host1->get_pstate()), sg_host_get_consumed_energy(host1)); @@ -38,20 +38,20 @@ static void dvfs() int pstate = 2; host1->set_pstate(pstate); XBT_INFO("========= Requesting pstate %d (speed should be of %.0E flop/s and is of %.0E flop/s)", pstate, - host1->getPstateSpeed(pstate), host1->getSpeed()); + host1->get_pstate_speed(pstate), host1->get_speed()); // Run another task start = simgrid::s4u::Engine::get_clock(); XBT_INFO("Run a task of %.0E flops", flopAmount); simgrid::s4u::this_actor::execute(flopAmount); XBT_INFO("Task done (duration: %.2f s). Current peak speed=%.0E flop/s; Energy dissipated=%.0f J", - simgrid::s4u::Engine::get_clock() - start, host1->getSpeed(), sg_host_get_consumed_energy(host1)); + simgrid::s4u::Engine::get_clock() - start, host1->get_speed(), sg_host_get_consumed_energy(host1)); start = simgrid::s4u::Engine::get_clock(); XBT_INFO("Sleep for 4 seconds"); simgrid::s4u::this_actor::sleep_for(4); XBT_INFO("Done sleeping (duration: %.2f s). Current peak speed=%.0E flop/s; Energy dissipated=%.0f J", - simgrid::s4u::Engine::get_clock() - start, host1->getSpeed(), sg_host_get_consumed_energy(host1)); + simgrid::s4u::Engine::get_clock() - start, host1->get_speed(), sg_host_get_consumed_energy(host1)); // =========== Turn the other host off ========== XBT_INFO("Turning MyHost2 off, and sleeping another 10 seconds. MyHost2 dissipated %.0f J so far.", @@ -60,7 +60,7 @@ static void dvfs() start = simgrid::s4u::Engine::get_clock(); simgrid::s4u::this_actor::sleep_for(10); XBT_INFO("Done sleeping (duration: %.2f s). Current peak speed=%.0E flop/s; Energy dissipated=%.0f J", - simgrid::s4u::Engine::get_clock() - start, host1->getSpeed(), sg_host_get_consumed_energy(host1)); + simgrid::s4u::Engine::get_clock() - start, host1->get_speed(), sg_host_get_consumed_energy(host1)); } int main(int argc, char* argv[]) diff --git a/examples/s4u/engine-filtering/s4u-engine-filtering.cpp b/examples/s4u/engine-filtering/s4u-engine-filtering.cpp index c3e0e7eabd..acc939126c 100644 --- a/examples/s4u/engine-filtering/s4u-engine-filtering.cpp +++ b/examples/s4u/engine-filtering/s4u-engine-filtering.cpp @@ -21,7 +21,7 @@ namespace filter { /* First example of thing that we can use as a filtering criteria: a simple boolean function */ static bool filter_speed_more_than_50Mf(simgrid::s4u::Host* host) { - return host->getSpeed() > 50E6; + return host->get_speed() > 50E6; } /* Second kind of thing that we can use as a filtering criteria: a functor (=function object). @@ -80,7 +80,8 @@ int main(int argc, char* argv[]) list = e.get_filtered_hosts(filter); for (auto& host : list) - XBT_INFO("The following hosts changed their frequency: %s (from %.1ff to %.1ff)", host->get_cname(), host->getPstateSpeed(filter.get_old_speed(host)), host->getSpeed()); + XBT_INFO("The following hosts changed their frequency: %s (from %.1ff to %.1ff)", host->get_cname(), + host->get_pstate_speed(filter.get_old_speed(host)), host->get_speed()); /* You can also just use any regular function (namespaced on need) to filter */ list = e.get_filtered_hosts(filter::filter_speed_more_than_50Mf); diff --git a/examples/s4u/exec-dvfs/s4u-exec-dvfs.cpp b/examples/s4u/exec-dvfs/s4u-exec-dvfs.cpp index 81abcf61a3..32ef5ddeb5 100644 --- a/examples/s4u/exec-dvfs/s4u-exec-dvfs.cpp +++ b/examples/s4u/exec-dvfs/s4u-exec-dvfs.cpp @@ -15,7 +15,7 @@ static int dvfs() int nb = host->get_pstate_count(); XBT_INFO("Count of Processor states=%d", nb); - XBT_INFO("Current power peak=%f", host->getSpeed()); + XBT_INFO("Current power peak=%f", host->get_speed()); // Run a task simgrid::s4u::this_actor::execute(workload); @@ -26,11 +26,11 @@ static int dvfs() // Change power peak int new_pstate = 2; - XBT_INFO("Changing power peak value to %f (at index %d)", host->getPstateSpeed(new_pstate), new_pstate); + XBT_INFO("Changing power peak value to %f (at index %d)", host->get_pstate_speed(new_pstate), new_pstate); host->set_pstate(new_pstate); - XBT_INFO("Current power peak=%f", host->getSpeed()); + XBT_INFO("Current power peak=%f", host->get_speed()); // Run a second task simgrid::s4u::this_actor::execute(workload); @@ -42,7 +42,7 @@ static int dvfs() host = simgrid::s4u::Host::by_name_or_null("MyHost2"); XBT_INFO("Count of Processor states=%d", host->get_pstate_count()); - XBT_INFO("Current power peak=%f", host->getSpeed()); + XBT_INFO("Current power peak=%f", host->get_speed()); return 0; } diff --git a/examples/s4u/exec-remote/s4u-exec-remote.cpp b/examples/s4u/exec-remote/s4u-exec-remote.cpp index 8044e17ac7..a119a8dc6e 100644 --- a/examples/s4u/exec-remote/s4u-exec-remote.cpp +++ b/examples/s4u/exec-remote/s4u-exec-remote.cpp @@ -20,8 +20,8 @@ static void wizard() XBT_INFO("It started. Running 48.492Mf takes exactly one second on Ginette (but not on Fafard)."); simgrid::s4u::this_actor::sleep_for(0.1); - XBT_INFO("Loads in flops/s: Boivin=%.0f; Fafard=%.0f; Ginette=%.0f", - boivin->getLoad(), fafard->getLoad(), ginette->getLoad()); + XBT_INFO("Loads in flops/s: Boivin=%.0f; Fafard=%.0f; Ginette=%.0f", boivin->get_load(), fafard->get_load(), + ginette->get_load()); exec->wait(); @@ -31,14 +31,14 @@ static void wizard() exec->start(); simgrid::s4u::this_actor::sleep_for(0.5); - XBT_INFO("Loads before the move: Boivin=%.0f; Fafard=%.0f; Ginette=%.0f", - boivin->getLoad(), fafard->getLoad(), ginette->getLoad()); + XBT_INFO("Loads before the move: Boivin=%.0f; Fafard=%.0f; Ginette=%.0f", boivin->get_load(), fafard->get_load(), + ginette->get_load()); exec->set_host(boivin); simgrid::s4u::this_actor::sleep_for(0.1); - XBT_INFO("Loads after the move: Boivin=%.0f; Fafard=%.0f; Ginette=%.0f", - boivin->getLoad(), fafard->getLoad(), ginette->getLoad()); + XBT_INFO("Loads after the move: Boivin=%.0f; Fafard=%.0f; Ginette=%.0f", boivin->get_load(), fafard->get_load(), + ginette->get_load()); exec->wait(); XBT_INFO("Done!"); diff --git a/examples/s4u/io-file-system/s4u-io-file-system.cpp b/examples/s4u/io-file-system/s4u-io-file-system.cpp index 2c34333f94..bce3113fdb 100644 --- a/examples/s4u/io-file-system/s4u-io-file-system.cpp +++ b/examples/s4u/io-file-system/s4u-io-file-system.cpp @@ -30,7 +30,7 @@ public: void operator()() { std::unordered_map const& mounts = - simgrid::s4u::Host::current()->getMountedStorages(); + simgrid::s4u::Host::current()->get_mounted_storages(); show_info(mounts); diff --git a/examples/s4u/io-storage-raw/s4u-io-storage-raw.cpp b/examples/s4u/io-storage-raw/s4u-io-storage-raw.cpp index e594a1e083..feaba5e2ed 100644 --- a/examples/s4u/io-storage-raw/s4u-io-storage-raw.cpp +++ b/examples/s4u/io-storage-raw/s4u-io-storage-raw.cpp @@ -16,7 +16,7 @@ static void host() /* - Retrieve all mount points of current host */ std::unordered_map const& storage_list = - simgrid::s4u::Host::current()->getMountedStorages(); + simgrid::s4u::Host::current()->get_mounted_storages(); /* - For each disk mounted on host, display disk name and mount point */ for (auto const& kv : storage_list) diff --git a/examples/s4u/mutex/s4u-mutex.cpp b/examples/s4u/mutex/s4u-mutex.cpp index d3dd4f4d38..ae2ca42912 100644 --- a/examples/s4u/mutex/s4u-mutex.cpp +++ b/examples/s4u/mutex/s4u-mutex.cpp @@ -44,7 +44,7 @@ static void workerLockGuard(simgrid::s4u::MutexPtr mutex, int& result) static void master() { int result = 0; - simgrid::s4u::MutexPtr mutex = simgrid::s4u::Mutex::createMutex(); + simgrid::s4u::MutexPtr mutex = simgrid::s4u::Mutex::create(); for (int i = 0; i < NB_ACTOR * 2 ; i++) { // To create a worker use the static method simgrid::s4u::Actor. diff --git a/examples/s4u/platform-properties/s4u-platform-properties.cpp b/examples/s4u/platform-properties/s4u-platform-properties.cpp index f125e9d4ab..d35bf9f5b1 100644 --- a/examples/s4u/platform-properties/s4u-platform-properties.cpp +++ b/examples/s4u/platform-properties/s4u-platform-properties.cpp @@ -114,7 +114,7 @@ int main(int argc, char* argv[]) XBT_INFO("There are %zu hosts in the environment", totalHosts); std::vector hosts = e.get_all_hosts(); for (unsigned int i = 0; i < hosts.size(); i++) - XBT_INFO("Host '%s' runs at %.0f flops/s", hosts[i]->get_cname(), hosts[i]->getSpeed()); + XBT_INFO("Host '%s' runs at %.0f flops/s", hosts[i]->get_cname(), hosts[i]->get_speed()); e.load_deployment(argv[2]); e.run(); diff --git a/examples/s4u/plugin-hostload/s4u-plugin-hostload.cpp b/examples/s4u/plugin-hostload/s4u-plugin-hostload.cpp index ac8962a5e1..6ac50d8699 100644 --- a/examples/s4u/plugin-hostload/s4u-plugin-hostload.cpp +++ b/examples/s4u/plugin-hostload/s4u-plugin-hostload.cpp @@ -12,37 +12,39 @@ static void execute_load_test() { s4u_Host* host = simgrid::s4u::Host::by_name("MyHost1"); - XBT_INFO("Initial peak speed: %.0E flop/s; number of flops computed so far: %.0E (should be 0) and current average load: %.5f (should be 0)", host->getSpeed(), - sg_host_get_computed_flops(host), sg_host_get_avg_load(host)); + XBT_INFO("Initial peak speed: %.0E flop/s; number of flops computed so far: %.0E (should be 0) and current average " + "load: %.5f (should be 0)", + host->get_speed(), sg_host_get_computed_flops(host), sg_host_get_avg_load(host)); double start = simgrid::s4u::Engine::get_clock(); XBT_INFO("Sleep for 10 seconds"); simgrid::s4u::this_actor::sleep_for(10); - double speed = host->getSpeed(); + double speed = host->get_speed(); XBT_INFO("Done sleeping %.2fs; peak speed: %.0E flop/s; number of flops computed so far: %.0E (nothing should have " "changed)", - simgrid::s4u::Engine::get_clock() - start, host->getSpeed(), sg_host_get_computed_flops(host)); + simgrid::s4u::Engine::get_clock() - start, host->get_speed(), sg_host_get_computed_flops(host)); // Run a task start = simgrid::s4u::Engine::get_clock(); - XBT_INFO("Run a task of %.0E flops at current speed of %.0E flop/s", 200E6, host->getSpeed()); + XBT_INFO("Run a task of %.0E flops at current speed of %.0E flop/s", 200E6, host->get_speed()); simgrid::s4u::this_actor::execute(200E6); XBT_INFO("Done working on my task; this took %.2fs; current peak speed: %.0E flop/s (when I started the computation, " "the speed was set to %.0E flop/s); number of flops computed so " "far: %.2E, average load as reported by the HostLoad plugin: %.5f (should be %.5f)", - simgrid::s4u::Engine::get_clock() - start, host->getSpeed(), speed, sg_host_get_computed_flops(host), + simgrid::s4u::Engine::get_clock() - start, host->get_speed(), speed, sg_host_get_computed_flops(host), sg_host_get_avg_load(host), static_cast(200E6) / (10.5 * speed * host->get_core_count() + - (simgrid::s4u::Engine::get_clock() - start - 0.5) * host->getSpeed() * host->get_core_count())); + (simgrid::s4u::Engine::get_clock() - start - 0.5) * host->get_speed() * host->get_core_count())); // ========= Change power peak ========= int pstate = 1; host->set_pstate(pstate); - XBT_INFO("========= Requesting pstate %d (speed should be of %.0E flop/s and is of %.0E flop/s, average load is %.5f)", pstate, - host->getPstateSpeed(pstate), host->getSpeed(), sg_host_get_avg_load(host)); + XBT_INFO( + "========= Requesting pstate %d (speed should be of %.0E flop/s and is of %.0E flop/s, average load is %.5f)", + pstate, host->get_pstate_speed(pstate), host->get_speed(), sg_host_get_avg_load(host)); // Run a second task start = simgrid::s4u::Engine::get_clock(); @@ -50,7 +52,7 @@ static void execute_load_test() simgrid::s4u::this_actor::execute(100E6); XBT_INFO("Done working on my task; this took %.2fs; current peak speed: %.0E flop/s; number of flops computed so " "far: %.2E", - simgrid::s4u::Engine::get_clock() - start, host->getSpeed(), sg_host_get_computed_flops(host)); + simgrid::s4u::Engine::get_clock() - start, host->get_speed(), sg_host_get_computed_flops(host)); start = simgrid::s4u::Engine::get_clock(); XBT_INFO("========= Requesting a reset of the computation and load counters"); @@ -59,7 +61,7 @@ static void execute_load_test() XBT_INFO("Sleep for 4 seconds"); simgrid::s4u::this_actor::sleep_for(4); XBT_INFO("Done sleeping %.2f s; peak speed: %.0E flop/s; number of flops computed so far: %.0E", - simgrid::s4u::Engine::get_clock() - start, host->getSpeed(), sg_host_get_computed_flops(host)); + simgrid::s4u::Engine::get_clock() - start, host->get_speed(), sg_host_get_computed_flops(host)); // =========== Turn the other host off ========== s4u_Host* host2 = simgrid::s4u::Host::by_name("MyHost2"); @@ -69,7 +71,7 @@ static void execute_load_test() start = simgrid::s4u::Engine::get_clock(); simgrid::s4u::this_actor::sleep_for(10); XBT_INFO("Done sleeping %.2f s; peak speed: %.0E flop/s; number of flops computed so far: %.0E", - simgrid::s4u::Engine::get_clock() - start, host->getSpeed(), sg_host_get_computed_flops(host)); + simgrid::s4u::Engine::get_clock() - start, host->get_speed(), sg_host_get_computed_flops(host)); } static void change_speed() diff --git a/examples/simdag/test/sd_test.cpp b/examples/simdag/test/sd_test.cpp index 35ce7c0237..3e5822b131 100644 --- a/examples/simdag/test/sd_test.cpp +++ b/examples/simdag/test/sd_test.cpp @@ -33,8 +33,8 @@ int main(int argc, char **argv) double comp_amount2 = 1000000; double comm_amount12 = 2000000; double comm_amount21 = 3000000; - XBT_INFO("Computation time for %f flops on %s: %f", comp_amount1, h1->get_cname(), comp_amount1 / h1->getSpeed()); - XBT_INFO("Computation time for %f flops on %s: %f", comp_amount2, h2->get_cname(), comp_amount2 / h2->getSpeed()); + XBT_INFO("Computation time for %f flops on %s: %f", comp_amount1, h1->get_cname(), comp_amount1 / h1->get_speed()); + XBT_INFO("Computation time for %f flops on %s: %f", comp_amount2, h2->get_cname(), comp_amount2 / h2->get_speed()); XBT_INFO("Route between %s and %s:", h1->get_cname(), h2->get_cname()); std::vector route; diff --git a/examples/smpi/CMakeLists.txt b/examples/smpi/CMakeLists.txt index 07861d36e7..5d7a96b492 100644 --- a/examples/smpi/CMakeLists.txt +++ b/examples/smpi/CMakeLists.txt @@ -5,18 +5,11 @@ if(enable_smpi) file(MAKE_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/mc/") - foreach(x replay) - add_executable (smpi_${x} ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x}.cpp) + foreach(x replay + trace trace_simple trace_call_location energy) + add_executable (smpi_${x} ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x}) target_link_libraries(smpi_${x} simgrid) set_target_properties(smpi_${x} PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${x}) - set(examples_src ${examples_src} ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x}.cpp) - endforeach() - - foreach(x trace trace_simple trace_call_location energy) - add_executable (smpi_${x} ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x}.c) - target_link_libraries(smpi_${x} simgrid) - set_target_properties(smpi_${x} PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${x}) - set(examples_src ${examples_src} ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x}.c) endforeach() set_target_properties(smpi_trace_call_location PROPERTIES COMPILE_FLAGS "-trace-call-location") @@ -28,10 +21,20 @@ if(enable_smpi) target_link_libraries(smpi_${x} simgrid) set_target_properties(smpi_${x} PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/mc) endif() - set(examples_src ${examples_src} ${CMAKE_CURRENT_SOURCE_DIR}/mc/${x}.c) endforeach() endif() +foreach(x replay) + set(examples_src ${examples_src} ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x}.cpp) +endforeach() +foreach(x trace trace_simple trace_call_location energy) + set(examples_src ${examples_src} ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x}.c) +endforeach() +foreach(x bugged1 bugged2 bugged1_liveness only_send_deterministic mutual_exclusion non_termination1 + non_termination2 non_termination3 non_termination4) + set(examples_src ${examples_src} ${CMAKE_CURRENT_SOURCE_DIR}/mc/${x}.c) +endforeach() + set(examples_src ${examples_src} PARENT_SCOPE) set(tesh_files ${tesh_files} ${CMAKE_CURRENT_SOURCE_DIR}/energy/energy.tesh ${CMAKE_CURRENT_SOURCE_DIR}/trace/trace.tesh @@ -49,7 +52,7 @@ set(bin_files ${bin_files} ${CMAKE_CURRENT_SOURCE_DIR}/hostfile ${CMAKE_CURRENT_SOURCE_DIR}/mc/hostfile_non_termination PARENT_SCOPE) set(txt_files ${txt_files} ${CMAKE_CURRENT_SOURCE_DIR}/replay/actions0.txt ${CMAKE_CURRENT_SOURCE_DIR}/replay/actions1.txt - ${CMAKE_CURRENT_SOURCE_DIR}/replay/actions_allReduce.txt + ${CMAKE_CURRENT_SOURCE_DIR}/replay/actions_allreduce.txt ${CMAKE_CURRENT_SOURCE_DIR}/replay/actions_allgatherv.txt ${CMAKE_CURRENT_SOURCE_DIR}/replay/actions_alltoall.txt ${CMAKE_CURRENT_SOURCE_DIR}/replay/actions_alltoallv.txt diff --git a/examples/smpi/replay/actions1.txt b/examples/smpi/replay/actions1.txt index 9e34cc4734..aa6ac77726 100644 --- a/examples/smpi/replay/actions1.txt +++ b/examples/smpi/replay/actions1.txt @@ -1,7 +1,7 @@ 1 init 1 recv 0 0 1e6 1 compute 1e9 -1 Isend 0 1 1e6 -1 Irecv 0 2 1e6 +1 isend 0 1 1e6 +1 irecv 0 2 1e6 1 wait 0 1 2 1 finalize diff --git a/examples/smpi/replay/actions_allgatherv.txt b/examples/smpi/replay/actions_allgatherv.txt index d5d4024aae..106678f11f 100644 --- a/examples/smpi/replay/actions_allgatherv.txt +++ b/examples/smpi/replay/actions_allgatherv.txt @@ -3,10 +3,10 @@ 2 init 3 init -0 allGatherV 275427 275427 275427 275427 204020 0 0 -1 allGatherV 275427 275427 275427 275427 204020 0 0 -2 allGatherV 275427 275427 275427 275427 204020 0 0 -3 allGatherV 204020 275427 275427 275427 204020 0 0 +0 allgatherv 275427 275427 275427 275427 204020 0 0 +1 allgatherv 275427 275427 275427 275427 204020 0 0 +2 allgatherv 275427 275427 275427 275427 204020 0 0 +3 allgatherv 204020 275427 275427 275427 204020 0 0 0 finalize 1 finalize diff --git a/examples/smpi/replay/actions_allReduce.txt b/examples/smpi/replay/actions_allreduce.txt similarity index 62% rename from examples/smpi/replay/actions_allReduce.txt rename to examples/smpi/replay/actions_allreduce.txt index 5ebcc62705..18d12ee0b3 100644 --- a/examples/smpi/replay/actions_allReduce.txt +++ b/examples/smpi/replay/actions_allreduce.txt @@ -2,9 +2,9 @@ 1 init 2 init -0 allReduce 5e4 5e8 -1 allReduce 5e4 5e8 -2 allReduce 5e4 5e8 +0 allreduce 5e4 5e8 +1 allreduce 5e4 5e8 +2 allreduce 5e4 5e8 0 compute 5e8 1 compute 5e8 diff --git a/examples/smpi/replay/actions_alltoall.txt b/examples/smpi/replay/actions_alltoall.txt index 7660765e18..74883f8e22 100644 --- a/examples/smpi/replay/actions_alltoall.txt +++ b/examples/smpi/replay/actions_alltoall.txt @@ -2,9 +2,9 @@ 1 init 2 init -0 allToAll 500 500 -1 allToAll 500 500 -2 allToAll 500 500 +0 alltoall 500 500 +1 alltoall 500 500 +2 alltoall 500 500 0 finalize diff --git a/examples/smpi/replay/actions_alltoallv.txt b/examples/smpi/replay/actions_alltoallv.txt index a96f7b70e2..db45ec9785 100644 --- a/examples/smpi/replay/actions_alltoallv.txt +++ b/examples/smpi/replay/actions_alltoallv.txt @@ -2,9 +2,9 @@ 1 init 2 init -0 allToAllV 100 1 40 30 1000 1 80 100 -1 allToAllV 1000 80 1 40 1000 40 1 30 -2 allToAllV 1000 100 30 1 1000 30 40 1 +0 alltoallv 100 1 40 30 1000 1 80 100 +1 alltoallv 1000 80 1 40 1000 40 1 30 +2 alltoallv 1000 100 30 1 1000 30 40 1 0 finalize 1 finalize diff --git a/examples/smpi/replay/actions_reducescatter.txt b/examples/smpi/replay/actions_reducescatter.txt index ac91f0f63e..692183a64e 100644 --- a/examples/smpi/replay/actions_reducescatter.txt +++ b/examples/smpi/replay/actions_reducescatter.txt @@ -3,10 +3,10 @@ 2 init 3 init -0 reduceScatter 275427 275427 275427 204020 11349173 0 -1 reduceScatter 275427 275427 275427 204020 12396024 0 -2 reduceScatter 275427 275427 275427 204020 12501522 0 -3 reduceScatter 275427 275427 275427 204020 12403123 0 +0 reducescatter 275427 275427 275427 204020 11349173 0 +1 reducescatter 275427 275427 275427 204020 12396024 0 +2 reducescatter 275427 275427 275427 204020 12501522 0 +3 reducescatter 275427 275427 275427 204020 12403123 0 0 finalize 1 finalize diff --git a/examples/smpi/replay/actions_waitall.txt b/examples/smpi/replay/actions_waitall.txt index 9f69b9e66e..5360e531ed 100644 --- a/examples/smpi/replay/actions_waitall.txt +++ b/examples/smpi/replay/actions_waitall.txt @@ -2,17 +2,17 @@ 1 init 2 init -0 Irecv 1 0 2000 -1 Isend 0 0 2000 -2 Irecv 1 1 3000 +0 irecv 1 0 2000 +1 isend 0 0 2000 +2 irecv 1 1 3000 -0 Irecv 2 2 3000 -1 Isend 2 1 3000 -2 Isend 0 2 3000 +0 irecv 2 2 3000 +1 isend 2 1 3000 +2 isend 0 2 3000 -0 waitAll -1 waitAll -2 waitAll +0 waitall +1 waitall +2 waitall 0 finalize 1 finalize diff --git a/examples/smpi/replay/actions_with_isend.txt b/examples/smpi/replay/actions_with_isend.txt index 0a7922a90f..00f2c4afe9 100644 --- a/examples/smpi/replay/actions_with_isend.txt +++ b/examples/smpi/replay/actions_with_isend.txt @@ -7,7 +7,7 @@ 0 compute 1e9 0 recv 2 2 1e6 -1 Irecv 0 0 1e6 +1 irecv 0 0 1e6 1 compute 5e8 1 test 0 1 0 1 compute 5e8 @@ -15,12 +15,12 @@ 1 send 2 1 1e6 2 compute 2e9 -2 Irecv 1 1 1e6 +2 irecv 1 1 1e6 2 compute 2.5e8 2 test 1 2 1 2 compute 2.5e8 2 wait 1 2 1 -2 Isend 0 2 1e6 +2 isend 0 2 1e6 2 compute 5e8 0 finalize diff --git a/examples/smpi/replay/replay.tesh b/examples/smpi/replay/replay.tesh index fc9a8aabd1..a5f27446c6 100644 --- a/examples/smpi/replay/replay.tesh +++ b/examples/smpi/replay/replay.tesh @@ -218,8 +218,8 @@ $ ../../smpi_script/bin/smpirun -no-privatize -ext smpi_replay --log=smpi_replay > [Tremblay:0:(1) 0.167158] [smpi_replay/VERBOSE] 0 send 1 0 1e6 0.167158 > [Jupiter:1:(2) 0.167158] [smpi_replay/VERBOSE] 1 recv 0 0 1e6 0.167158 > [Jupiter:1:(2) 13.274005] [smpi_replay/VERBOSE] 1 compute 1e9 13.106847 -> [Jupiter:1:(2) 13.274005] [smpi_replay/VERBOSE] 1 Isend 0 1 1e6 0.000000 -> [Jupiter:1:(2) 13.274005] [smpi_replay/VERBOSE] 1 Irecv 0 2 1e6 0.000000 +> [Jupiter:1:(2) 13.274005] [smpi_replay/VERBOSE] 1 isend 0 1 1e6 0.000000 +> [Jupiter:1:(2) 13.274005] [smpi_replay/VERBOSE] 1 irecv 0 2 1e6 0.000000 > [Tremblay:0:(1) 13.441162] [smpi_replay/VERBOSE] 0 recv 1 1 1e6 13.274005 > [Jupiter:1:(2) 13.608320] [smpi_replay/VERBOSE] 1 wait 0 1 2 0.334315 > [Tremblay:0:(1) 13.608320] [smpi_replay/VERBOSE] 0 send 1 2 1e6 0.167158 @@ -245,13 +245,13 @@ $ ../../smpi_script/bin/smpirun -no-privatize -ext smpi_replay --log=replay.thre $ rm -f replay/one_trace -p Test of Isend replay with SMPI (one trace for all processes) +p Test of isend replay with SMPI (one trace for all processes) < replay/actions_with_isend.txt $ mkfile replay/one_trace $ ../../smpi_script/bin/smpirun -no-privatize -ext smpi_replay --log=replay.thresh:critical --log=smpi_replay.thresh:verbose --log=no_loc --cfg=smpi/simulate-computation:no -np 3 -platform ${srcdir:=.}/../platforms/small_platform.xml -hostfile ${srcdir:=.}/hostfile ./replay/smpi_replay replay/one_trace --log=smpi_kernel.thres:warning --log=xbt_cfg.thres:warning -> [Jupiter:1:(2) 0.000000] [smpi_replay/VERBOSE] 1 Irecv 0 0 1e6 0.000000 +> [Jupiter:1:(2) 0.000000] [smpi_replay/VERBOSE] 1 irecv 0 0 1e6 0.000000 > [Jupiter:1:(2) 6.553424] [smpi_replay/VERBOSE] 1 compute 5e8 6.553424 > [Jupiter:1:(2) 6.553524] [smpi_replay/VERBOSE] 1 test 0 1 0 0.000100 > [Tremblay:0:(1) 10.194200] [smpi_replay/VERBOSE] 0 compute 1e9 10.194200 @@ -260,13 +260,13 @@ $ ../../smpi_script/bin/smpirun -no-privatize -ext smpi_replay --log=replay.thre > [Jupiter:1:(2) 13.106947] [smpi_replay/VERBOSE] 1 wait 0 1 0 0.000000 > [Tremblay:0:(1) 20.555557] [smpi_replay/VERBOSE] 0 compute 1e9 10.194200 > [Fafard:2:(3) 26.213694] [smpi_replay/VERBOSE] 2 compute 2e9 26.213694 -> [Fafard:2:(3) 26.213694] [smpi_replay/VERBOSE] 2 Irecv 1 1 1e6 0.000000 +> [Fafard:2:(3) 26.213694] [smpi_replay/VERBOSE] 2 irecv 1 1 1e6 0.000000 > [Jupiter:1:(2) 26.403860] [smpi_replay/VERBOSE] 1 send 2 1 1e6 13.296913 > [Fafard:2:(3) 29.490406] [smpi_replay/VERBOSE] 2 compute 2.5e8 3.276712 > [Fafard:2:(3) 29.490606] [smpi_replay/VERBOSE] 2 test 1 2 1 0.000200 > [Fafard:2:(3) 32.767318] [smpi_replay/VERBOSE] 2 compute 2.5e8 3.276712 > [Fafard:2:(3) 32.767318] [smpi_replay/VERBOSE] 2 wait 1 2 1 0.000000 -> [Fafard:2:(3) 32.767318] [smpi_replay/VERBOSE] 2 Isend 0 2 1e6 0.000000 +> [Fafard:2:(3) 32.767318] [smpi_replay/VERBOSE] 2 isend 0 2 1e6 0.000000 > [Tremblay:0:(1) 32.923014] [smpi_replay/VERBOSE] 0 recv 2 2 1e6 12.367458 > [Fafard:2:(3) 39.320741] [smpi_replay/VERBOSE] 2 compute 5e8 6.553424 > [Fafard:2:(3) 39.320741] [smpi_replay/INFO] Simulation time 39.320741 @@ -275,13 +275,13 @@ $ rm -f replay/one_trace p Test of AllReduce replay with SMPI (one trace for all processes) -< replay/actions_allReduce.txt +< replay/actions_allreduce.txt $ mkfile replay/one_trace $ ../../smpi_script/bin/smpirun -no-privatize -ext smpi_replay --log=replay.thresh:critical --log=smpi_replay.thresh:verbose --log=no_loc --cfg=smpi/simulate-computation:no -np 3 -platform ${srcdir:=.}/../platforms/small_platform.xml -hostfile ${srcdir:=.}/hostfile ./replay/smpi_replay replay/one_trace --log=smpi_kernel.thres:warning --log=xbt_cfg.thres:warning -> [Tremblay:0:(1) 5.112775] [smpi_replay/VERBOSE] 0 allReduce 5e4 5e8 5.112775 -> [Jupiter:1:(2) 6.584135] [smpi_replay/VERBOSE] 1 allReduce 5e4 5e8 6.584135 -> [Fafard:2:(3) 6.584775] [smpi_replay/VERBOSE] 2 allReduce 5e4 5e8 6.584775 +> [Tremblay:0:(1) 5.112775] [smpi_replay/VERBOSE] 0 allreduce 5e4 5e8 5.112775 +> [Jupiter:1:(2) 6.584135] [smpi_replay/VERBOSE] 1 allreduce 5e4 5e8 6.584135 +> [Fafard:2:(3) 6.584775] [smpi_replay/VERBOSE] 2 allreduce 5e4 5e8 6.584775 > [Tremblay:0:(1) 10.209875] [smpi_replay/VERBOSE] 0 compute 5e8 5.097100 > [Jupiter:1:(2) 13.137559] [smpi_replay/VERBOSE] 1 compute 5e8 6.553424 > [Fafard:2:(3) 13.138198] [smpi_replay/VERBOSE] 2 compute 5e8 6.553424 @@ -295,9 +295,9 @@ p Test of AllToAll replay with SMPI (one trace for all processes) $ mkfile replay/one_trace $ ../../smpi_script/bin/smpirun -no-privatize -ext smpi_replay --log=replay.thresh:critical --log=smpi_replay.thresh:verbose --log=no_loc --cfg=smpi/simulate-computation:no -np 3 -platform ${srcdir:=.}/../platforms/small_platform.xml -hostfile ${srcdir:=.}/hostfile ./replay/smpi_replay replay/one_trace --log=smpi_kernel.thres:warning --log=xbt_cfg.thres:warning -> [Tremblay:0:(1) 0.004041] [smpi_replay/VERBOSE] 0 allToAll 500 500 0.004041 -> [Fafard:2:(3) 0.006920] [smpi_replay/VERBOSE] 2 allToAll 500 500 0.006920 -> [Jupiter:1:(2) 0.006920] [smpi_replay/VERBOSE] 1 allToAll 500 500 0.006920 +> [Tremblay:0:(1) 0.004041] [smpi_replay/VERBOSE] 0 alltoall 500 500 0.004041 +> [Fafard:2:(3) 0.006920] [smpi_replay/VERBOSE] 2 alltoall 500 500 0.006920 +> [Jupiter:1:(2) 0.006920] [smpi_replay/VERBOSE] 1 alltoall 500 500 0.006920 > [Jupiter:1:(2) 0.006920] [smpi_replay/INFO] Simulation time 0.006920 @@ -310,9 +310,9 @@ p Test of AllToAllv replay with SMPI (one trace for all processes) $ mkfile replay/one_trace $ ../../smpi_script/bin/smpirun -no-privatize -ext smpi_replay --log=replay.thresh:critical --log=smpi_replay.thresh:verbose --log=no_loc --cfg=smpi/simulate-computation:no -np 3 -platform ${srcdir:=.}/../platforms/small_platform.xml -hostfile ${srcdir:=.}/hostfile ./replay/smpi_replay replay/one_trace --log=smpi_kernel.thres:warning --log=xbt_cfg.thres:warning -> [Tremblay:0:(1) 0.004000] [smpi_replay/VERBOSE] 0 allToAllV 100 1 40 30 1000 1 80 100 0.004000 -> [Jupiter:1:(2) 0.006935] [smpi_replay/VERBOSE] 1 allToAllV 1000 80 1 40 1000 40 1 30 0.006935 -> [Fafard:2:(3) 0.006936] [smpi_replay/VERBOSE] 2 allToAllV 1000 100 30 1 1000 30 40 1 0.006936 +> [Tremblay:0:(1) 0.004000] [smpi_replay/VERBOSE] 0 alltoallv 100 1 40 30 1000 1 80 100 0.004000 +> [Jupiter:1:(2) 0.006935] [smpi_replay/VERBOSE] 1 alltoallv 1000 80 1 40 1000 40 1 30 0.006935 +> [Fafard:2:(3) 0.006936] [smpi_replay/VERBOSE] 2 alltoallv 1000 100 30 1 1000 30 40 1 0.006936 > [Fafard:2:(3) 0.006936] [smpi_replay/INFO] Simulation time 0.006936 $ rm -f replay/one_trace @@ -323,10 +323,10 @@ p Test of AllGatherv replay with SMPI (one trace for all processes) $ mkfile replay/one_trace $ ../../smpi_script/bin/smpirun -no-privatize -ext smpi_replay --log=replay.thresh:critical --log=smpi_replay.thresh:verbose --log=no_loc --cfg=smpi/simulate-computation:no -np 4 -platform ${srcdir:=.}/../platforms/small_platform.xml -hostfile ${srcdir:=.}/hostfile ./replay/smpi_replay replay/one_trace --log=smpi_kernel.thres:warning --log=xbt_cfg.thres:warning -> [Tremblay:0:(1) 1.397261] [smpi_replay/VERBOSE] 0 allGatherV 275427 275427 275427 275427 204020 0 0 1.397261 -> [Ginette:3:(4) 1.760421] [smpi_replay/VERBOSE] 3 allGatherV 204020 275427 275427 275427 204020 0 0 1.760421 -> [Fafard:2:(3) 1.941986] [smpi_replay/VERBOSE] 2 allGatherV 275427 275427 275427 275427 204020 0 0 1.941986 -> [Jupiter:1:(2) 1.941986] [smpi_replay/VERBOSE] 1 allGatherV 275427 275427 275427 275427 204020 0 0 1.941986 +> [Tremblay:0:(1) 1.397261] [smpi_replay/VERBOSE] 0 allgatherv 275427 275427 275427 275427 204020 0 0 1.397261 +> [Ginette:3:(4) 1.760421] [smpi_replay/VERBOSE] 3 allgatherv 204020 275427 275427 275427 204020 0 0 1.760421 +> [Fafard:2:(3) 1.941986] [smpi_replay/VERBOSE] 2 allgatherv 275427 275427 275427 275427 204020 0 0 1.941986 +> [Jupiter:1:(2) 1.941986] [smpi_replay/VERBOSE] 1 allgatherv 275427 275427 275427 275427 204020 0 0 1.941986 > [Jupiter:1:(2) 1.941986] [smpi_replay/INFO] Simulation time 1.941986 $ rm -f replay/one_trace @@ -338,15 +338,15 @@ $ mkfile replay/one_trace ! output sort 19 $ ../../smpi_script/bin/smpirun -no-privatize -ext smpi_replay --log=replay.thresh:critical --log=smpi_replay.thresh:verbose --log=no_loc --cfg=smpi/simulate-computation:no -np 3 -platform ${srcdir:=.}/../platforms/small_platform.xml -hostfile ${srcdir:=.}/hostfile ./replay/smpi_replay replay/one_trace --log=smpi_kernel.thres:warning --log=xbt_cfg.thres:warning -> [Fafard:2:(3) 0.000000] [smpi_replay/VERBOSE] 2 Irecv 1 1 3000 0.000000 -> [Fafard:2:(3) 0.000000] [smpi_replay/VERBOSE] 2 Isend 0 2 3000 0.000000 -> [Jupiter:1:(2) 0.000000] [smpi_replay/VERBOSE] 1 Isend 0 0 2000 0.000000 -> [Jupiter:1:(2) 0.000000] [smpi_replay/VERBOSE] 1 Isend 2 1 3000 0.000000 -> [Jupiter:1:(2) 0.000000] [smpi_replay/VERBOSE] 1 waitAll 0.000000 -> [Tremblay:0:(1) 0.000000] [smpi_replay/VERBOSE] 0 Irecv 1 0 2000 0.000000 -> [Tremblay:0:(1) 0.000000] [smpi_replay/VERBOSE] 0 Irecv 2 2 3000 0.000000 -> [Tremblay:0:(1) 0.003787] [smpi_replay/VERBOSE] 0 waitAll 0.003787 -> [Fafard:2:(3) 0.006220] [smpi_replay/VERBOSE] 2 waitAll 0.006220 +> [Fafard:2:(3) 0.000000] [smpi_replay/VERBOSE] 2 irecv 1 1 3000 0.000000 +> [Fafard:2:(3) 0.000000] [smpi_replay/VERBOSE] 2 isend 0 2 3000 0.000000 +> [Jupiter:1:(2) 0.000000] [smpi_replay/VERBOSE] 1 isend 0 0 2000 0.000000 +> [Jupiter:1:(2) 0.000000] [smpi_replay/VERBOSE] 1 isend 2 1 3000 0.000000 +> [Jupiter:1:(2) 0.000000] [smpi_replay/VERBOSE] 1 waitall 0.000000 +> [Tremblay:0:(1) 0.000000] [smpi_replay/VERBOSE] 0 irecv 1 0 2000 0.000000 +> [Tremblay:0:(1) 0.000000] [smpi_replay/VERBOSE] 0 irecv 2 2 3000 0.000000 +> [Tremblay:0:(1) 0.003787] [smpi_replay/VERBOSE] 0 waitall 0.003787 +> [Fafard:2:(3) 0.006220] [smpi_replay/VERBOSE] 2 waitall 0.006220 > [Fafard:2:(3) 0.006220] [smpi_replay/INFO] Simulation time 0.006220 $ rm -f replay/one_trace diff --git a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace0.txt b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace0.txt index 13ecf1c05a..6f5bad1aac 100644 --- a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace0.txt +++ b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace0.txt @@ -58,44 +58,44 @@ 0 compute 131738 0 gather 795 795 0 0 compute 302221294 -0 allToAll 1746 1746 +0 alltoall 1746 1746 0 compute 276029 0 barrier 0 compute 409757278 0 comm_size 32 -0 allReduce 32 12513009 1 +0 allreduce 32 12513009 1 0 compute 3035449395 0 compute 1525 -0 allToAllV 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 +0 alltoallv 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 0 compute 1058645731 0 barrier 0 compute 7153 0 compute 332 -0 allToAllV 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 +0 alltoallv 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 0 compute 915153801 0 barrier 0 compute 1455003037 -0 allToAll 13824 13824 +0 alltoall 13824 13824 0 compute 72649027 -0 allToAll 13824 13824 +0 alltoall 13824 13824 0 compute 20523056 0 comm_size 32 -0 allReduce 1 11040132 +0 allreduce 1 11040132 0 compute 1383678084 0 comm_size 32 -0 allReduce 795 56429098 +0 allreduce 795 56429098 0 compute 1518182851 0 comm_size 32 -0 allReduce 2 67666587 +0 allreduce 2 67666587 0 compute 21668953 -0 allToAll 13824 13824 +0 alltoall 13824 13824 0 compute 72648705 -0 allToAll 13824 13824 +0 alltoall 13824 13824 0 compute 20522147 0 comm_size 32 -0 allReduce 1 3081964 +0 allreduce 1 3081964 0 compute 47498994 0 comm_size 32 -0 allReduce 32 13171326 1 +0 allreduce 32 13171326 1 0 compute 62566160216 0 finalize \ No newline at end of file diff --git a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace1.txt b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace1.txt index d67c80de10..f39897a664 100644 --- a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace1.txt +++ b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace1.txt @@ -58,44 +58,44 @@ 1 compute 124787 1 gather 795 795 0 1 compute 228879934 -1 allToAll 1746 1746 +1 alltoall 1746 1746 1 compute 276028 1 barrier 1 compute 409315679 1 comm_size 32 -1 allReduce 32 21827181 1 +1 allreduce 32 21827181 1 1 compute 3038127257 1 compute 1525 -1 allToAllV 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 +1 alltoallv 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 1 compute 1058645731 1 barrier 1 compute 7154 1 compute 332 -1 allToAllV 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 +1 alltoallv 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 1 compute 915153808 1 barrier 1 compute 1455231051 -1 allToAll 13824 13824 +1 alltoall 13824 13824 1 compute 72647798 -1 allToAll 13824 13824 +1 alltoall 13824 13824 1 compute 20518087 1 comm_size 32 -1 allReduce 1 10444633 +1 allreduce 1 10444633 1 compute 1384067914 1 comm_size 32 -1 allReduce 795 58255749 +1 allreduce 795 58255749 1 compute 1517885375 1 comm_size 32 -1 allReduce 2 68351849 +1 allreduce 2 68351849 1 compute 21530357 -1 allToAll 13824 13824 +1 alltoall 13824 13824 1 compute 72647756 -1 allToAll 13824 13824 +1 alltoall 13824 13824 1 compute 20517481 1 comm_size 32 -1 allReduce 1 1808047 +1 allreduce 1 1808047 1 compute 53953284 1 comm_size 32 -1 allReduce 32 5776377 1 +1 allreduce 32 5776377 1 1 compute 62566095398 1 finalize \ No newline at end of file diff --git a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace10.txt b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace10.txt index 3efdb4f5c0..0f63ab436a 100644 --- a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace10.txt +++ b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace10.txt @@ -58,44 +58,44 @@ 10 compute 123090 10 gather 795 795 0 10 compute 237860371 -10 allToAll 1746 1746 +10 alltoall 1746 1746 10 compute 276028 10 barrier 10 compute 409270211 10 comm_size 32 -10 allReduce 32 21656181 1 +10 allreduce 32 21656181 1 10 compute 3038108208 10 compute 1525 -10 allToAllV 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 +10 alltoallv 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 10 compute 1058646373 10 barrier 10 compute 7748 10 compute 332 -10 allToAllV 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 +10 alltoallv 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 10 compute 915154398 10 barrier 10 compute 1453147816 -10 allToAll 13824 13824 +10 alltoall 13824 13824 10 compute 72649003 -10 allToAll 13824 13824 +10 alltoall 13824 13824 10 compute 20518692 10 comm_size 32 -10 allReduce 1 6543263 +10 allreduce 1 6543263 10 compute 1382081052 10 comm_size 32 -10 allReduce 795 58749470 +10 allreduce 795 58749470 10 compute 1508885748 10 comm_size 32 -10 allReduce 2 66543554 +10 allreduce 2 66543554 10 compute 21530874 -10 allToAll 13824 13824 +10 alltoall 13824 13824 10 compute 72648683 -10 allToAll 13824 13824 +10 alltoall 13824 13824 10 compute 20517934 10 comm_size 32 -10 allReduce 1 4179296 +10 allreduce 1 4179296 10 compute 75547890 10 comm_size 32 -10 allReduce 32 1690483 1 +10 allreduce 32 1690483 1 10 compute 60481270200 10 finalize \ No newline at end of file diff --git a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace11.txt b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace11.txt index 5983019ee9..7a1e4091ca 100644 --- a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace11.txt +++ b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace11.txt @@ -58,44 +58,44 @@ 11 compute 123074 11 gather 795 795 0 11 compute 237795802 -11 allToAll 1746 1746 +11 alltoall 1746 1746 11 compute 276029 11 barrier 11 compute 409270454 11 comm_size 32 -11 allReduce 32 21078260 1 +11 allreduce 32 21078260 1 11 compute 3038108987 11 compute 1525 -11 allToAllV 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 +11 alltoallv 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 11 compute 1058646373 11 barrier 11 compute 7748 11 compute 332 -11 allToAllV 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 +11 alltoallv 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 11 compute 915154399 11 barrier 11 compute 1452184865 -11 allToAll 13824 13824 +11 alltoall 13824 13824 11 compute 72648818 -11 allToAll 13824 13824 +11 alltoall 13824 13824 11 compute 20518600 11 comm_size 32 -11 allReduce 1 6623555 +11 allreduce 1 6623555 11 compute 1381107033 11 comm_size 32 -11 allReduce 795 59025436 +11 allreduce 795 59025436 11 compute 1506911402 11 comm_size 32 -11 allReduce 2 67305727 +11 allreduce 2 67305727 11 compute 21530742 -11 allToAll 13824 13824 +11 alltoall 13824 13824 11 compute 72648500 -11 allToAll 13824 13824 +11 alltoall 13824 13824 11 compute 20517845 11 comm_size 32 -11 allReduce 1 3273339 +11 allreduce 1 3273339 11 compute 73026425 11 comm_size 32 -11 allReduce 32 2103365 1 +11 allreduce 32 2103365 1 11 compute 60481269681 11 finalize \ No newline at end of file diff --git a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace12.txt b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace12.txt index 013ab6d23d..6e73f9441e 100644 --- a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace12.txt +++ b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace12.txt @@ -58,44 +58,44 @@ 12 compute 123084 12 gather 795 795 0 12 compute 238369956 -12 allToAll 1746 1746 +12 alltoall 1746 1746 12 compute 276029 12 barrier 12 compute 409270143 12 comm_size 32 -12 allReduce 32 25565173 1 +12 allreduce 32 25565173 1 12 compute 3038107993 12 compute 1525 -12 allToAllV 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 +12 alltoallv 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 12 compute 1058646378 12 barrier 12 compute 7748 12 compute 332 -12 allToAllV 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 +12 alltoallv 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 12 compute 915154396 12 barrier 12 compute 1451516381 -12 allToAll 13824 13824 +12 alltoall 13824 13824 12 compute 72647798 -12 allToAll 13824 13824 +12 alltoall 13824 13824 12 compute 20518135 12 comm_size 32 -12 allReduce 1 12073536 +12 allreduce 1 12073536 12 compute 1380438209 12 comm_size 32 -12 allReduce 795 67953607 +12 allreduce 795 67953607 12 compute 1505264885 12 comm_size 32 -12 allReduce 2 76015831 +12 allreduce 2 76015831 12 compute 21530249 -12 allToAll 13824 13824 +12 alltoall 13824 13824 12 compute 72647572 -12 allToAll 13824 13824 +12 alltoall 13824 13824 12 compute 20517146 12 comm_size 32 -12 allReduce 1 4487443 +12 allreduce 1 4487443 12 compute 72922086 12 comm_size 32 -12 allReduce 32 2563964 1 +12 allreduce 32 2563964 1 12 compute 60481266895 12 finalize \ No newline at end of file diff --git a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace13.txt b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace13.txt index 599d1707ec..7ee3c2d6fd 100644 --- a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace13.txt +++ b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace13.txt @@ -58,44 +58,44 @@ 13 compute 123092 13 gather 795 795 0 13 compute 240038222 -13 allToAll 1746 1746 +13 alltoall 1746 1746 13 compute 276028 13 barrier 13 compute 409270018 13 comm_size 32 -13 allReduce 32 7746985 1 +13 allreduce 32 7746985 1 13 compute 3038107988 13 compute 1525 -13 allToAllV 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 +13 alltoallv 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 13 compute 1058646386 13 barrier 13 compute 7748 13 compute 332 -13 allToAllV 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 +13 alltoallv 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 13 compute 915154400 13 barrier 13 compute 1451801158 -13 allToAll 13824 13824 +13 alltoall 13824 13824 13 compute 72647798 -13 allToAll 13824 13824 +13 alltoall 13824 13824 13 compute 20518127 13 comm_size 32 -13 allReduce 1 9105419 +13 allreduce 1 9105419 13 compute 1380758960 13 comm_size 32 -13 allReduce 795 14210244 +13 allreduce 795 14210244 13 compute 1504573388 13 comm_size 32 -13 allReduce 2 22024401 +13 allreduce 2 22024401 13 compute 21530249 -13 allToAll 13824 13824 +13 alltoall 13824 13824 13 compute 72647572 -13 allToAll 13824 13824 +13 alltoall 13824 13824 13 compute 20517143 13 comm_size 32 -13 allReduce 1 2831799 +13 allreduce 1 2831799 13 compute 80870940 13 comm_size 32 -13 allReduce 32 12028 1 +13 allreduce 32 12028 1 13 compute 60481266716 13 finalize \ No newline at end of file diff --git a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace14.txt b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace14.txt index 8a3b05ad35..cb4c0279cb 100644 --- a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace14.txt +++ b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace14.txt @@ -58,44 +58,44 @@ 14 compute 123086 14 gather 795 795 0 14 compute 242344291 -14 allToAll 1746 1746 +14 alltoall 1746 1746 14 compute 276030 14 barrier 14 compute 409270145 14 comm_size 32 -14 allReduce 32 21679149 1 +14 allreduce 32 21679149 1 14 compute 3038107618 14 compute 1525 -14 allToAllV 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 +14 alltoallv 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 14 compute 1058646389 14 barrier 14 compute 7748 14 compute 332 -14 allToAllV 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 +14 alltoallv 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 14 compute 915154403 14 barrier 14 compute 1450254991 -14 allToAll 13824 13824 +14 alltoall 13824 13824 14 compute 72648708 -14 allToAll 13824 13824 +14 alltoall 13824 13824 14 compute 20518595 14 comm_size 32 -14 allReduce 1 9822 +14 allreduce 1 9822 14 compute 1379180697 14 comm_size 32 -14 allReduce 795 60372594 +14 allreduce 795 60372594 14 compute 1501942786 14 comm_size 32 -14 allReduce 2 64877886 +14 allreduce 2 64877886 14 compute 21530677 -14 allToAll 13824 13824 +14 alltoall 13824 13824 14 compute 72648532 -14 allToAll 13824 13824 +14 alltoall 13824 13824 14 compute 20517895 14 comm_size 32 -14 allReduce 1 3409934 +14 allreduce 1 3409934 14 compute 73960084 14 comm_size 32 -14 allReduce 32 2319543 1 +14 allreduce 32 2319543 1 14 compute 60481266385 14 finalize \ No newline at end of file diff --git a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace15.txt b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace15.txt index fb82026818..02e19d55f2 100644 --- a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace15.txt +++ b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace15.txt @@ -58,44 +58,44 @@ 15 compute 123090 15 gather 795 795 0 15 compute 248083384 -15 allToAll 1746 1746 +15 alltoall 1746 1746 15 compute 276028 15 barrier 15 compute 409270090 15 comm_size 32 -15 allReduce 32 19421153 1 +15 allreduce 32 19421153 1 15 compute 3038107647 15 compute 1525 -15 allToAllV 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 +15 alltoallv 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 15 compute 1058646397 15 barrier 15 compute 7748 15 compute 332 -15 allToAllV 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 +15 alltoallv 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 15 compute 915154396 15 barrier 15 compute 1449498615 -15 allToAll 13824 13824 +15 alltoall 13824 13824 15 compute 72648698 -15 allToAll 13824 13824 +15 alltoall 13824 13824 15 compute 20518595 15 comm_size 32 -15 allReduce 1 5301084 +15 allreduce 1 5301084 15 compute 1378420591 15 comm_size 32 -15 allReduce 795 59634324 +15 allreduce 795 59634324 15 compute 1500197233 15 comm_size 32 -15 allReduce 2 64461369 +15 allreduce 2 64461369 15 compute 21530676 -15 allToAll 13824 13824 +15 alltoall 13824 13824 15 compute 72648532 -15 allToAll 13824 13824 +15 alltoall 13824 13824 15 compute 20517894 15 comm_size 32 -15 allReduce 1 2260549 +15 allreduce 1 2260549 15 compute 73034913 15 comm_size 32 -15 allReduce 32 2746349 1 +15 allreduce 32 2746349 1 15 compute 60481266209 15 finalize \ No newline at end of file diff --git a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace16.txt b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace16.txt index a185a7993f..cf4429d336 100644 --- a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace16.txt +++ b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace16.txt @@ -58,44 +58,44 @@ 16 compute 124216 16 gather 795 795 0 16 compute 248019689 -16 allToAll 1746 1746 +16 alltoall 1746 1746 16 compute 276028 16 barrier 16 compute 409314252 16 comm_size 32 -16 allReduce 32 18101827 1 +16 allreduce 32 18101827 1 16 compute 3038128476 16 compute 1525 -16 allToAllV 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 +16 alltoallv 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 16 compute 1058645807 16 barrier 16 compute 7155 16 compute 332 -16 allToAllV 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 +16 alltoallv 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 16 compute 915153808 16 barrier 16 compute 1449835669 -16 allToAll 13824 13824 +16 alltoall 13824 13824 16 compute 72647803 -16 allToAll 13824 13824 +16 alltoall 13824 13824 16 compute 20518093 16 comm_size 32 -16 allReduce 1 5226292 +16 allreduce 1 5226292 16 compute 1378796665 16 comm_size 32 -16 allReduce 795 72159977 +16 allreduce 795 72159977 16 compute 1499557201 16 comm_size 32 -16 allReduce 2 63798502 +16 allreduce 2 63798502 16 compute 21530343 -16 allToAll 13824 13824 +16 alltoall 13824 13824 16 compute 72647758 -16 allToAll 13824 13824 +16 alltoall 13824 13824 16 compute 20517492 16 comm_size 32 -16 allReduce 1 3823764 +16 allreduce 1 3823764 16 compute 81457367 16 comm_size 32 -16 allReduce 32 1411377 1 +16 allreduce 32 1411377 1 16 compute 60481274473 16 finalize \ No newline at end of file diff --git a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace17.txt b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace17.txt index 83b0225afe..9783edf60a 100644 --- a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace17.txt +++ b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace17.txt @@ -58,44 +58,44 @@ 17 compute 124783 17 gather 795 795 0 17 compute 247125067 -17 allToAll 1746 1746 +17 alltoall 1746 1746 17 compute 276029 17 barrier 17 compute 409314675 17 comm_size 32 -17 allReduce 32 22370115 1 +17 allreduce 32 22370115 1 17 compute 3038128753 17 compute 1525 -17 allToAllV 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 +17 alltoallv 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 17 compute 1058645810 17 barrier 17 compute 7155 17 compute 332 -17 allToAllV 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 +17 alltoallv 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 17 compute 915153803 17 barrier 17 compute 1448145232 -17 allToAll 13824 13824 +17 alltoall 13824 13824 17 compute 72647798 -17 allToAll 13824 13824 +17 alltoall 13824 13824 17 compute 20518070 17 comm_size 32 -17 allReduce 1 11132375 +17 allreduce 1 11132375 17 compute 1377069218 17 comm_size 32 -17 allReduce 795 71401648 +17 allreduce 795 71401648 17 compute 1496774529 17 comm_size 32 -17 allReduce 2 78649106 +17 allreduce 2 78649106 17 compute 21530303 -17 allToAll 13824 13824 +17 alltoall 13824 13824 17 compute 72647756 -17 allToAll 13824 13824 +17 alltoall 13824 13824 17 compute 20517446 17 comm_size 32 -17 allReduce 1 4068354 +17 allreduce 1 4068354 17 compute 73311170 17 comm_size 32 -17 allReduce 32 4382080 1 +17 allreduce 32 4382080 1 17 compute 60481274164 17 finalize \ No newline at end of file diff --git a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace18.txt b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace18.txt index 5fc3d0d172..ae92922d49 100644 --- a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace18.txt +++ b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace18.txt @@ -58,44 +58,44 @@ 18 compute 124220 18 gather 795 795 0 18 compute 245938721 -18 allToAll 1746 1746 +18 alltoall 1746 1746 18 compute 276028 18 barrier 18 compute 409314088 18 comm_size 32 -18 allReduce 32 25414757 1 +18 allreduce 32 25414757 1 18 compute 3038128233 18 compute 1525 -18 allToAllV 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 +18 alltoallv 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 18 compute 1058646229 18 barrier 18 compute 7563 18 compute 332 -18 allToAllV 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 +18 alltoallv 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 18 compute 915154213 18 barrier 18 compute 1447518376 -18 allToAll 13824 13824 +18 alltoall 13824 13824 18 compute 72648622 -18 allToAll 13824 13824 +18 alltoall 13824 13824 18 compute 20518479 18 comm_size 32 -18 allReduce 1 11692905 +18 allreduce 1 11692905 18 compute 1376442859 18 comm_size 32 -18 allReduce 795 70015898 +18 allreduce 795 70015898 18 compute 1495165972 18 comm_size 32 -18 allReduce 2 77379595 +18 allreduce 2 77379595 18 compute 21530774 -18 allToAll 13824 13824 +18 alltoall 13824 13824 18 compute 72648820 -18 allToAll 13824 13824 +18 alltoall 13824 13824 18 compute 20517985 18 comm_size 32 -18 allReduce 1 5117785 +18 allreduce 1 5117785 18 compute 73632276 18 comm_size 32 -18 allReduce 32 3373668 1 +18 allreduce 32 3373668 1 18 compute 60481274381 18 finalize \ No newline at end of file diff --git a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace19.txt b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace19.txt index b130b22485..6499e3aee2 100644 --- a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace19.txt +++ b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace19.txt @@ -58,44 +58,44 @@ 19 compute 124765 19 gather 795 795 0 19 compute 245277367 -19 allToAll 1746 1746 +19 alltoall 1746 1746 19 compute 276030 19 barrier 19 compute 409314528 19 comm_size 32 -19 allReduce 32 21818681 1 +19 allreduce 32 21818681 1 19 compute 3038130250 19 compute 1525 -19 allToAllV 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 +19 alltoallv 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 19 compute 1058646413 19 barrier 19 compute 7749 19 compute 332 -19 allToAllV 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 +19 alltoallv 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 19 compute 915154395 19 barrier 19 compute 1447127347 -19 allToAll 13824 13824 +19 alltoall 13824 13824 19 compute 72648659 -19 allToAll 13824 13824 +19 alltoall 13824 13824 19 compute 20518521 19 comm_size 32 -19 allReduce 1 10938129 +19 allreduce 1 10938129 19 compute 1376061784 19 comm_size 32 -19 allReduce 795 71878923 +19 allreduce 795 71878923 19 compute 1493790470 19 comm_size 32 -19 allReduce 2 75179146 +19 allreduce 2 75179146 19 compute 21530919 -19 allToAll 13824 13824 +19 alltoall 13824 13824 19 compute 72648815 -19 allToAll 13824 13824 +19 alltoall 13824 13824 19 compute 20518034 19 comm_size 32 -19 allReduce 1 4342658 +19 allreduce 1 4342658 19 compute 75851167 19 comm_size 32 -19 allReduce 32 2469080 1 +19 allreduce 32 2469080 1 19 compute 60481269761 19 finalize \ No newline at end of file diff --git a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace2.txt b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace2.txt index 2af1619650..77531da41b 100644 --- a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace2.txt +++ b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace2.txt @@ -58,44 +58,44 @@ 2 compute 123092 2 gather 795 795 0 2 compute 231016664 -2 allToAll 1746 1746 +2 alltoall 1746 1746 2 compute 276030 2 barrier 2 compute 409271032 2 comm_size 32 -2 allReduce 32 21600798 1 +2 allreduce 32 21600798 1 2 compute 3038108638 2 compute 1525 -2 allToAllV 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 +2 alltoallv 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 2 compute 1058646336 2 barrier 2 compute 7748 2 compute 332 -2 allToAllV 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 +2 alltoallv 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 2 compute 915154403 2 barrier 2 compute 1453971872 -2 allToAll 13824 13824 +2 alltoall 13824 13824 2 compute 72648604 -2 allToAll 13824 13824 +2 alltoall 13824 13824 2 compute 20518491 2 comm_size 32 -2 allReduce 1 9133457 +2 allreduce 1 9133457 2 compute 1382778051 2 comm_size 32 -2 allReduce 795 56590206 +2 allreduce 795 56590206 2 compute 1515905980 2 comm_size 32 -2 allReduce 2 68499832 +2 allreduce 2 68499832 2 compute 21531910 -2 allToAll 13824 13824 +2 alltoall 13824 13824 2 compute 72648598 -2 allToAll 13824 13824 +2 alltoall 13824 13824 2 compute 20518490 2 comm_size 32 -2 allReduce 1 2165903 +2 allreduce 1 2165903 2 compute 47383939 2 comm_size 32 -2 allReduce 32 7340509 1 +2 allreduce 32 7340509 1 2 compute 62566097135 2 finalize \ No newline at end of file diff --git a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace20.txt b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace20.txt index 9b1106c3c2..57154635f9 100644 --- a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace20.txt +++ b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace20.txt @@ -58,44 +58,44 @@ 20 compute 124204 20 gather 795 795 0 20 compute 244616488 -20 allToAll 1746 1746 +20 alltoall 1746 1746 20 compute 276028 20 barrier 20 compute 409313968 20 comm_size 32 -20 allReduce 32 5510267 1 +20 allreduce 32 5510267 1 20 compute 3038130868 20 compute 1525 -20 allToAllV 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 +20 alltoallv 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 20 compute 1058646421 20 barrier 20 compute 7748 20 compute 332 -20 allToAllV 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 +20 alltoallv 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 20 compute 915154401 20 barrier 20 compute 1445555133 -20 allToAll 13824 13824 +20 alltoall 13824 13824 20 compute 72648538 -20 allToAll 13824 13824 +20 alltoall 13824 13824 20 compute 20518471 20 comm_size 32 -20 allReduce 1 9691440 +20 allreduce 1 9691440 20 compute 1374455267 20 comm_size 32 -20 allReduce 795 51860 +20 allreduce 795 51860 20 compute 1491203354 20 comm_size 32 -20 allReduce 2 3286786 +20 allreduce 2 3286786 20 compute 21530547 -20 allToAll 13824 13824 +20 alltoall 13824 13824 20 compute 72648392 -20 allToAll 13824 13824 +20 alltoall 13824 13824 20 compute 20517562 20 comm_size 32 -20 allReduce 1 2308549 +20 allreduce 1 2308549 20 compute 68196979 20 comm_size 32 -20 allReduce 32 6148766 1 +20 allreduce 32 6148766 1 20 compute 60481269975 20 finalize \ No newline at end of file diff --git a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace21.txt b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace21.txt index caf0c2aba6..a25c070b85 100644 --- a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace21.txt +++ b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace21.txt @@ -58,44 +58,44 @@ 21 compute 124765 21 gather 795 795 0 21 compute 244537166 -21 allToAll 1746 1746 +21 alltoall 1746 1746 21 compute 276028 21 barrier 21 compute 409314436 21 comm_size 32 -21 allReduce 32 7208831 1 +21 allreduce 32 7208831 1 21 compute 3038131051 21 compute 1525 -21 allToAllV 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 +21 alltoallv 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 21 compute 1058646427 21 barrier 21 compute 7748 21 compute 332 -21 allToAllV 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 +21 alltoallv 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 21 compute 915154402 21 barrier 21 compute 1444252854 -21 allToAll 13824 13824 +21 alltoall 13824 13824 21 compute 72648659 -21 allToAll 13824 13824 +21 alltoall 13824 13824 21 compute 20518520 21 comm_size 32 -21 allReduce 1 10479272 +21 allreduce 1 10479272 21 compute 1373126126 21 comm_size 32 -21 allReduce 795 3035528 +21 allreduce 795 3035528 21 compute 1488989422 21 comm_size 32 -21 allReduce 2 5357055 +21 allreduce 2 5357055 21 compute 21530648 -21 allToAll 13824 13824 +21 alltoall 13824 13824 21 compute 72648512 -21 allToAll 13824 13824 +21 alltoall 13824 13824 21 compute 20517622 21 comm_size 32 -21 allReduce 1 2161693 +21 allreduce 1 2161693 21 compute 62152034 21 comm_size 32 -21 allReduce 32 11552421 1 +21 allreduce 32 11552421 1 21 compute 60481265726 21 finalize \ No newline at end of file diff --git a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace22.txt b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace22.txt index 1662613d0a..7b2b16a397 100644 --- a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace22.txt +++ b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace22.txt @@ -58,44 +58,44 @@ 22 compute 124196 22 gather 795 795 0 22 compute 244528768 -22 allToAll 1746 1746 +22 alltoall 1746 1746 22 compute 276028 22 barrier 22 compute 409313850 22 comm_size 32 -22 allReduce 32 21210529 1 +22 allreduce 32 21210529 1 22 compute 3038129064 22 compute 1525 -22 allToAllV 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 +22 alltoallv 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 22 compute 1058646432 22 barrier 22 compute 7748 22 compute 332 -22 allToAllV 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 +22 alltoallv 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 22 compute 915154399 22 barrier 22 compute 1444306844 -22 allToAll 13824 13824 +22 alltoall 13824 13824 22 compute 72648999 -22 allToAll 13824 13824 +22 alltoall 13824 13824 22 compute 20518738 22 comm_size 32 -22 allReduce 1 8631733 +22 allreduce 1 8631733 22 compute 1373203364 22 comm_size 32 -22 allReduce 795 60367712 +22 allreduce 795 60367712 22 compute 1488212129 22 comm_size 32 -22 allReduce 2 63829458 +22 allreduce 2 63829458 22 compute 21530897 -22 allToAll 13824 13824 +22 alltoall 13824 13824 22 compute 72648612 -22 allToAll 13824 13824 +22 alltoall 13824 13824 22 compute 20517980 22 comm_size 32 -22 allReduce 1 1900324 +22 allreduce 1 1900324 22 compute 67460267 22 comm_size 32 -22 allReduce 32 4780370 1 +22 allreduce 32 4780370 1 22 compute 60481266360 22 finalize \ No newline at end of file diff --git a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace23.txt b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace23.txt index 64cb45aad0..b4cd61edf2 100644 --- a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace23.txt +++ b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace23.txt @@ -58,44 +58,44 @@ 23 compute 124765 23 gather 795 795 0 23 compute 244359495 -23 allToAll 1746 1746 +23 alltoall 1746 1746 23 compute 276028 23 barrier 23 compute 409314315 23 comm_size 32 -23 allReduce 32 8004854 1 +23 allreduce 32 8004854 1 23 compute 3038128913 23 compute 1525 -23 allToAllV 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 +23 alltoallv 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 23 compute 1058646436 23 barrier 23 compute 7748 23 compute 332 -23 allToAllV 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 +23 alltoallv 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 23 compute 915154403 23 barrier 23 compute 1442892049 -23 allToAll 13824 13824 +23 alltoall 13824 13824 23 compute 72649058 -23 allToAll 13824 13824 +23 alltoall 13824 13824 23 compute 20518772 23 comm_size 32 -23 allReduce 1 11366080 +23 allreduce 1 11366080 23 compute 1371757234 23 comm_size 32 -23 allReduce 795 19651581 +23 allreduce 795 19651581 23 compute 1485895784 23 comm_size 32 -23 allReduce 2 26240201 +23 allreduce 2 26240201 23 compute 21530587 -23 allToAll 13824 13824 +23 alltoall 13824 13824 23 compute 72648412 -23 allToAll 13824 13824 +23 alltoall 13824 13824 23 compute 20517845 23 comm_size 32 -23 allReduce 1 10247 +23 allreduce 1 10247 23 compute 60435010 23 comm_size 32 -23 allReduce 32 11206099 1 +23 allreduce 32 11206099 1 23 compute 60481266309 23 finalize \ No newline at end of file diff --git a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace24.txt b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace24.txt index 4bd8582b52..d2aec8f956 100644 --- a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace24.txt +++ b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace24.txt @@ -58,44 +58,44 @@ 24 compute 124220 24 gather 795 795 0 24 compute 244917352 -24 allToAll 1746 1746 +24 alltoall 1746 1746 24 compute 276028 24 barrier 24 compute 409313728 24 comm_size 32 -24 allReduce 32 20511086 1 +24 allreduce 32 20511086 1 24 compute 3038169943 24 compute 1525 -24 allToAllV 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 +24 alltoallv 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 24 compute 1058646440 24 barrier 24 compute 7748 24 compute 332 -24 allToAllV 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 +24 alltoallv 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 24 compute 915154401 24 barrier 24 compute 1441883451 -24 allToAll 13824 13824 +24 alltoall 13824 13824 24 compute 72648998 -24 allToAll 13824 13824 +24 alltoall 13824 13824 24 compute 20518690 24 comm_size 32 -24 allReduce 1 10902682 +24 allreduce 1 10902682 24 compute 1370730665 24 comm_size 32 -24 allReduce 795 61540948 +24 allreduce 795 61540948 24 compute 1484080041 24 comm_size 32 -24 allReduce 2 60816736 +24 allreduce 2 60816736 24 compute 21532130 -24 allToAll 13824 13824 +24 alltoall 13824 13824 24 compute 72648997 -24 allToAll 13824 13824 +24 alltoall 13824 13824 24 compute 20518693 24 comm_size 32 -24 allReduce 1 2120822 +24 allreduce 1 2120822 24 compute 56435059 24 comm_size 32 -24 allReduce 32 5105979 1 +24 allreduce 32 5105979 1 24 compute 60481270241 24 finalize \ No newline at end of file diff --git a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace25.txt b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace25.txt index 84294c20b8..5134be0a3d 100644 --- a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace25.txt +++ b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace25.txt @@ -58,44 +58,44 @@ 25 compute 124196 25 gather 795 795 0 25 compute 246170355 -25 allToAll 1746 1746 +25 alltoall 1746 1746 25 compute 276028 25 barrier 25 compute 409313755 25 comm_size 32 -25 allReduce 32 5669119 1 +25 allreduce 32 5669119 1 25 compute 2984230246 25 compute 1525 -25 allToAllV 12378660 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386820 386820 386820 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 +25 alltoallv 12378660 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386820 386820 386820 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 25 compute 1058646447 25 barrier 25 compute 7748 25 compute 332 -25 allToAllV 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 12378660 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386820 386820 386820 +25 alltoallv 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 12378660 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386820 386820 386820 25 compute 854144618 25 barrier 25 compute 1441635387 -25 allToAll 13824 13824 +25 alltoall 13824 13824 25 compute 72649040 -25 allToAll 13824 13824 +25 alltoall 13824 13824 25 compute 20518716 25 comm_size 32 -25 allReduce 1 12261945 +25 allreduce 1 12261945 25 compute 1370492323 25 comm_size 32 -25 allReduce 795 21773495 +25 allreduce 795 21773495 25 compute 1483078560 25 comm_size 32 -25 allReduce 2 154705 +25 allreduce 2 154705 25 compute 21532187 -25 allToAll 13824 13824 +25 alltoall 13824 13824 25 compute 72649043 -25 allToAll 13824 13824 +25 alltoall 13824 13824 25 compute 20518717 25 comm_size 32 -25 allReduce 1 3265650 +25 allreduce 1 3265650 25 compute 58721452 25 comm_size 32 -25 allReduce 32 10423698 1 +25 allreduce 32 10423698 1 25 compute 60481270126 25 finalize \ No newline at end of file diff --git a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace26.txt b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace26.txt index 74b87872fc..690166c8a4 100644 --- a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace26.txt +++ b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace26.txt @@ -58,44 +58,44 @@ 26 compute 124198 26 gather 795 795 0 26 compute 247190645 -26 allToAll 1746 1746 +26 alltoall 1746 1746 26 compute 276028 26 barrier 26 compute 409313648 26 comm_size 32 -26 allReduce 32 2008745 1 +26 allreduce 32 2008745 1 26 compute 2984229928 26 compute 1525 -26 allToAllV 12378660 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386820 386820 386820 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 +26 alltoallv 12378660 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386820 386820 386820 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 26 compute 1058646452 26 barrier 26 compute 7748 26 compute 332 -26 allToAllV 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 12378660 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386820 386820 386820 +26 alltoallv 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 12378660 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386820 386820 386820 26 compute 854144617 26 barrier 26 compute 1439789686 -26 allToAll 13824 13824 +26 alltoall 13824 13824 26 compute 60542846 -26 allToAll 13824 13824 +26 alltoall 13824 13824 26 compute 20518690 26 comm_size 32 -26 allReduce 1 13508570 +26 allreduce 1 13508570 26 compute 1368595739 26 comm_size 32 -26 allReduce 795 21460724 +26 allreduce 795 21460724 26 compute 1480450203 26 comm_size 32 -26 allReduce 2 175917 +26 allreduce 2 175917 26 compute 21532129 -26 allToAll 13824 13824 +26 alltoall 13824 13824 26 compute 60542843 -26 allToAll 13824 13824 +26 alltoall 13824 13824 26 compute 20518690 26 comm_size 32 -26 allReduce 1 2415378 +26 allreduce 1 2415378 26 compute 47321791 26 comm_size 32 -26 allReduce 32 18752319 1 +26 allreduce 32 18752319 1 26 compute 60481270254 26 finalize \ No newline at end of file diff --git a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace27.txt b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace27.txt index 79f54b27b0..34e5612da3 100644 --- a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace27.txt +++ b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace27.txt @@ -58,44 +58,44 @@ 27 compute 124781 27 gather 795 795 0 27 compute 249045970 -27 allToAll 1746 1746 +27 alltoall 1746 1746 27 compute 276028 27 barrier 27 compute 409314179 27 comm_size 32 -27 allReduce 32 20892423 1 +27 allreduce 32 20892423 1 27 compute 2984229524 27 compute 1525 -27 allToAllV 12378660 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386820 386820 386820 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 +27 alltoallv 12378660 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386820 386820 386820 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 27 compute 1058646456 27 barrier 27 compute 7748 27 compute 332 -27 allToAllV 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 12378660 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386820 386820 386820 +27 alltoallv 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 12378660 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386820 386820 386820 27 compute 854144616 27 barrier 27 compute 1439369571 -27 allToAll 13824 13824 +27 alltoall 13824 13824 27 compute 11627 -27 allToAll 13824 13824 +27 alltoall 13824 13824 27 compute 20518472 27 comm_size 32 -27 allReduce 1 11959015 +27 allreduce 1 11959015 27 compute 1368175777 27 comm_size 32 -27 allReduce 795 64450365 +27 allreduce 795 64450365 27 compute 1479400301 27 comm_size 32 -27 allReduce 2 73325118 +27 allreduce 2 73325118 27 compute 21531861 -27 allToAll 13824 13824 +27 alltoall 13824 13824 27 compute 11627 -27 allToAll 13824 13824 +27 alltoall 13824 13824 27 compute 20518471 27 comm_size 32 -27 allReduce 1 2864414 +27 allreduce 1 2864414 27 compute 47255321 27 comm_size 32 -27 allReduce 32 8761373 1 +27 allreduce 32 8761373 1 27 compute 60481269758 27 finalize \ No newline at end of file diff --git a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace28.txt b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace28.txt index 1ba5b2dc0b..994984396a 100644 --- a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace28.txt +++ b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace28.txt @@ -58,44 +58,44 @@ 28 compute 124218 28 gather 795 795 0 28 compute 251211915 -28 allToAll 1746 1746 +28 alltoall 1746 1746 28 compute 276028 28 barrier 28 compute 409313589 28 comm_size 32 -28 allReduce 32 23989 1 +28 allreduce 32 23989 1 28 compute 2984190851 28 compute 1525 -28 allToAllV 12378660 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386820 386820 386820 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 +28 alltoallv 12378660 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386820 386820 386820 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 28 compute 1058646461 28 barrier 28 compute 7748 28 compute 332 -28 allToAllV 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 12378660 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386820 386820 386820 +28 alltoallv 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 12378660 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386820 386820 386820 28 compute 854144614 28 barrier 28 compute 1439729605 -28 allToAll 13824 13824 +28 alltoall 13824 13824 28 compute 12007 -28 allToAll 13824 13824 +28 alltoall 13824 13824 28 compute 20518662 28 comm_size 32 -28 allReduce 1 10348621 +28 allreduce 1 10348621 28 compute 1368565748 28 comm_size 32 -28 allReduce 795 15729812 +28 allreduce 795 15729812 28 compute 1479129984 28 comm_size 32 -28 allReduce 2 4751179 +28 allreduce 2 4751179 28 compute 21530860 -28 allToAll 13824 13824 +28 alltoall 13824 13824 28 compute 11643 -28 allToAll 13824 13824 +28 alltoall 13824 13824 28 compute 20517914 28 comm_size 32 -28 allReduce 1 1949975 +28 allreduce 1 1949975 28 compute 53951331 28 comm_size 32 -28 allReduce 32 11843209 1 +28 allreduce 32 11843209 1 28 compute 60481275100 28 finalize \ No newline at end of file diff --git a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace29.txt b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace29.txt index 81809cc5a9..68e09d1719 100644 --- a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace29.txt +++ b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace29.txt @@ -58,44 +58,44 @@ 29 compute 124771 29 gather 795 795 0 29 compute 254905873 -29 allToAll 1746 1746 +29 alltoall 1746 1746 29 compute 276028 29 barrier 29 compute 409314112 29 comm_size 32 -29 allReduce 32 9721390 1 +29 allreduce 32 9721390 1 29 compute 2984189170 29 compute 1525 -29 allToAllV 12378660 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386820 386820 386820 13096620 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 386820 386820 386820 386820 386820 386820 386820 +29 alltoallv 12378660 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386820 386820 386820 13096620 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 386820 386820 386820 386820 386820 386820 386820 29 compute 1058608153 29 barrier 29 compute 7748 29 compute 332 -29 allToAllV 13096620 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 386820 386820 386820 386820 386820 386820 386820 12378660 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386820 386820 386820 +29 alltoallv 13096620 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 386820 386820 386820 386820 386820 386820 386820 12378660 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386820 386820 386820 29 compute 854144616 29 barrier 29 compute 1438469865 -29 allToAll 13824 13824 +29 alltoall 13824 13824 29 compute 12107 -29 allToAll 13824 13824 +29 alltoall 13824 13824 29 compute 20518712 29 comm_size 32 -29 allReduce 1 11245758 +29 allreduce 1 11245758 29 compute 1367275873 29 comm_size 32 -29 allReduce 795 5153979 +29 allreduce 795 5153979 29 compute 1477150179 29 comm_size 32 -29 allReduce 2 348477 +29 allreduce 2 348477 29 compute 21530956 -29 allToAll 13824 13824 +29 alltoall 13824 13824 29 compute 11743 -29 allToAll 13824 13824 +29 alltoall 13824 13824 29 compute 20517964 29 comm_size 32 -29 allReduce 1 1709170 +29 allreduce 1 1709170 29 compute 47317512 29 comm_size 32 -29 allReduce 32 18350318 1 +29 allreduce 32 18350318 1 29 compute 60481274853 29 finalize \ No newline at end of file diff --git a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace3.txt b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace3.txt index 387753f525..5a189c3058 100644 --- a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace3.txt +++ b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace3.txt @@ -58,44 +58,44 @@ 3 compute 123084 3 gather 795 795 0 3 compute 232272172 -3 allToAll 1746 1746 +3 alltoall 1746 1746 3 compute 276028 3 barrier 3 compute 409340097 3 comm_size 32 -3 allReduce 32 26788025 1 +3 allreduce 32 26788025 1 3 compute 3038128971 3 compute 1525 -3 allToAllV 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 +3 alltoallv 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 3 compute 1058646334 3 barrier 3 compute 7748 3 compute 332 -3 allToAllV 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 +3 alltoallv 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 3 compute 915154397 3 barrier 3 compute 1453551932 -3 allToAll 13824 13824 +3 alltoall 13824 13824 3 compute 72648918 -3 allToAll 13824 13824 +3 alltoall 13824 13824 3 compute 20518658 3 comm_size 32 -3 allReduce 1 10088694 +3 allreduce 1 10088694 3 compute 1382358093 3 comm_size 32 -3 allReduce 795 71440182 +3 allreduce 795 71440182 3 compute 1514856084 3 comm_size 32 -3 allReduce 2 82679426 +3 allreduce 2 82679426 3 compute 21532011 -3 allToAll 13824 13824 +3 alltoall 13824 13824 3 compute 72648918 -3 allToAll 13824 13824 +3 alltoall 13824 13824 3 compute 20518650 3 comm_size 32 -3 allReduce 1 2381618 +3 allreduce 1 2381618 3 compute 47351593 3 comm_size 32 -3 allReduce 32 8075911 1 +3 allreduce 32 8075911 1 3 compute 62566098113 3 finalize \ No newline at end of file diff --git a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace30.txt b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace30.txt index 85e847fcbc..fef8f65933 100644 --- a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace30.txt +++ b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace30.txt @@ -58,44 +58,44 @@ 30 compute 124224 30 gather 795 795 0 30 compute 87539379 -30 allToAll 1746 1746 +30 alltoall 1746 1746 30 compute 276029 30 barrier 30 compute 409313447 30 comm_size 32 -30 allReduce 32 18389809 1 +30 allreduce 32 18389809 1 30 compute 2984187726 30 compute 1525 -30 allToAllV 12378660 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386820 386820 386820 13096620 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 386820 386820 386820 386820 386820 386820 386820 +30 alltoallv 12378660 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386820 386820 386820 13096620 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 386820 386820 386820 386820 386820 386820 386820 30 compute 1058608125 30 barrier 30 compute 7712 30 compute 332 -30 allToAllV 13096620 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 386820 386820 386820 386820 386820 386820 386820 12378660 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386820 386820 386820 +30 alltoallv 13096620 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 386820 386820 386820 386820 386820 386820 386820 12378660 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386820 386820 386820 30 compute 854144576 30 barrier 30 compute 866371 -30 allToAll 13824 13824 +30 alltoall 13824 13824 30 compute 10867 -30 allToAll 13824 13824 +30 alltoall 13824 13824 30 compute 26015 30 comm_size 32 -30 allReduce 1 18926466 +30 allreduce 1 18926466 30 compute 37317 30 comm_size 32 -30 allReduce 795 794203941 +30 allreduce 795 794203941 30 compute 40864 30 comm_size 32 -30 allReduce 2 830615079 +30 allreduce 2 830615079 30 compute 835216 -30 allToAll 13824 13824 +30 alltoall 13824 13824 30 compute 10827 -30 allToAll 13824 13824 +30 alltoall 13824 13824 30 compute 25978 30 comm_size 32 -30 allReduce 1 10224036 +30 allreduce 1 10224036 30 compute 415815 30 comm_size 32 -30 allReduce 32 30205336 1 +30 allreduce 32 30205336 1 30 compute 60481268189 30 finalize \ No newline at end of file diff --git a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace31.txt b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace31.txt index 1ba49b5070..9e78b03793 100644 --- a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace31.txt +++ b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace31.txt @@ -58,44 +58,44 @@ 31 compute 124781 31 gather 795 795 0 31 compute 1572422 -31 allToAll 1746 1746 +31 alltoall 1746 1746 31 compute 276028 31 barrier 31 compute 409314016 31 comm_size 32 -31 allReduce 32 9196581 1 +31 allreduce 32 9196581 1 31 compute 2984188007 31 compute 1525 -31 allToAllV 12378660 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386820 386820 386820 13096620 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 386820 386820 386820 386820 386820 386820 386820 +31 alltoallv 12378660 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386820 386820 386820 13096620 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 386820 386820 386820 386820 386820 386820 386820 31 compute 1058608127 31 barrier 31 compute 7712 31 compute 332 -31 allToAllV 13096620 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 386820 386820 386820 386820 386820 386820 386820 12378660 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386820 386820 386820 +31 alltoallv 13096620 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 414450 386820 386820 386820 386820 386820 386820 386820 12378660 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386834 386820 386820 386820 31 compute 854144579 31 barrier 31 compute 866778 -31 allToAll 13824 13824 +31 alltoall 13824 13824 31 compute 12127 -31 allToAll 13824 13824 +31 alltoall 13824 13824 31 compute 26660 31 comm_size 32 -31 allReduce 1 16408053 +31 allreduce 1 16408053 31 compute 37317 31 comm_size 32 -31 allReduce 795 790700995 +31 allreduce 795 790700995 31 compute 40864 31 comm_size 32 -31 allReduce 2 821059536 +31 allreduce 2 821059536 31 compute 835351 -31 allToAll 13824 13824 +31 alltoall 13824 13824 31 compute 11527 -31 allToAll 13824 13824 +31 alltoall 13824 13824 31 compute 26358 31 comm_size 32 -31 allReduce 1 8581230 +31 allreduce 1 8581230 31 compute 415699 31 comm_size 32 -31 allReduce 32 39149334 1 +31 allreduce 32 39149334 1 31 compute 60481268000 31 finalize \ No newline at end of file diff --git a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace4.txt b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace4.txt index 756baccb67..a9cb01417d 100644 --- a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace4.txt +++ b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace4.txt @@ -58,44 +58,44 @@ 4 compute 123084 4 gather 795 795 0 4 compute 234577369 -4 allToAll 1746 1746 +4 alltoall 1746 1746 4 compute 276028 4 barrier 4 compute 409270911 4 comm_size 32 -4 allReduce 32 18332025 1 +4 allreduce 32 18332025 1 4 compute 3038108202 4 compute 1525 -4 allToAllV 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 +4 alltoallv 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 4 compute 1058646339 4 barrier 4 compute 7748 4 compute 332 -4 allToAllV 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 +4 alltoallv 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 4 compute 915154399 4 barrier 4 compute 1454298529 -4 allToAll 13824 13824 +4 alltoall 13824 13824 4 compute 72649038 -4 allToAll 13824 13824 +4 alltoall 13824 13824 4 compute 20518710 4 comm_size 32 -4 allReduce 1 8764901 +4 allreduce 1 8764901 4 compute 1383149406 4 comm_size 32 -4 allReduce 795 58555205 +4 allreduce 795 58555205 4 compute 1514972225 4 comm_size 32 -4 allReduce 2 69773224 +4 allreduce 2 69773224 4 compute 21530912 -4 allToAll 13824 13824 +4 alltoall 13824 13824 4 compute 72648716 -4 allToAll 13824 13824 +4 alltoall 13824 13824 4 compute 20517953 4 comm_size 32 -4 allReduce 1 1849838 +4 allreduce 1 1849838 4 compute 57241690 4 comm_size 32 -4 allReduce 32 5143014 1 +4 allreduce 32 5143014 1 4 compute 62566104180 4 finalize \ No newline at end of file diff --git a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace5.txt b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace5.txt index 5ff9b3235d..ecccf7dd79 100644 --- a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace5.txt +++ b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace5.txt @@ -58,44 +58,44 @@ 5 compute 123092 5 gather 795 795 0 5 compute 234047138 -5 allToAll 1746 1746 +5 alltoall 1746 1746 5 compute 276029 5 barrier 5 compute 409270813 5 comm_size 32 -5 allReduce 32 26075048 1 +5 allreduce 32 26075048 1 5 compute 3038108674 5 compute 1525 -5 allToAllV 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 +5 alltoallv 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 5 compute 1058646347 5 barrier 5 compute 7748 5 compute 332 -5 allToAllV 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 +5 alltoallv 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 5 compute 915154397 5 barrier 5 compute 1453660307 -5 allToAll 13824 13824 +5 alltoall 13824 13824 5 compute 72648498 -5 allToAll 13824 13824 +5 alltoall 13824 13824 5 compute 20518451 5 comm_size 32 -5 allReduce 1 9630351 +5 allreduce 1 9630351 5 compute 1382506563 5 comm_size 32 -5 allReduce 795 86398358 +5 allreduce 795 86398358 5 compute 1513570165 5 comm_size 32 -5 allReduce 2 82995562 +5 allreduce 2 82995562 5 compute 21531740 -5 allToAll 13824 13824 +5 alltoall 13824 13824 5 compute 72648502 -5 allToAll 13824 13824 +5 alltoall 13824 13824 5 compute 20518455 5 comm_size 32 -5 allReduce 1 5339502 +5 allreduce 1 5339502 5 compute 56257081 5 comm_size 32 -5 allReduce 32 5420716 1 +5 allreduce 32 5420716 1 5 compute 62566097632 5 finalize \ No newline at end of file diff --git a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace6.txt b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace6.txt index 4fa4cd54db..9a59e1051e 100644 --- a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace6.txt +++ b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace6.txt @@ -58,44 +58,44 @@ 6 compute 122556 6 gather 795 795 0 6 compute 234561584 -6 allToAll 1746 1746 +6 alltoall 1746 1746 6 compute 276028 6 barrier 6 compute 409318441 6 comm_size 32 -6 allReduce 32 26071846 1 +6 allreduce 32 26071846 1 6 compute 3038127610 6 compute 1525 -6 allToAllV 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 +6 alltoallv 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 6 compute 1058646353 6 barrier 6 compute 7748 6 compute 332 -6 allToAllV 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 +6 alltoallv 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 6 compute 915154402 6 barrier 6 compute 1453541410 -6 allToAll 13824 13824 +6 alltoall 13824 13824 6 compute 72647797 -6 allToAll 13824 13824 +6 alltoall 13824 13824 6 compute 20518134 6 comm_size 32 -6 allReduce 1 10500073 +6 allreduce 1 10500073 6 compute 1382402404 6 comm_size 32 -6 allReduce 795 68340267 +6 allreduce 795 68340267 6 compute 1512701245 6 comm_size 32 -6 allReduce 2 78355589 +6 allreduce 2 78355589 6 compute 21530601 -6 allToAll 13824 13824 +6 alltoall 13824 13824 6 compute 72648538 -6 allToAll 13824 13824 +6 alltoall 13824 13824 6 compute 20517863 6 comm_size 32 -6 allReduce 1 4895476 +6 allreduce 1 4895476 6 compute 59401613 6 comm_size 32 -6 allReduce 32 5355812 1 +6 allreduce 32 5355812 1 6 compute 60481271077 6 finalize \ No newline at end of file diff --git a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace7.txt b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace7.txt index c334e99590..11c2b8caf6 100644 --- a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace7.txt +++ b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace7.txt @@ -58,44 +58,44 @@ 7 compute 122554 7 gather 795 795 0 7 compute 237329701 -7 allToAll 1746 1746 +7 alltoall 1746 1746 7 compute 276028 7 barrier 7 compute 409318380 7 comm_size 32 -7 allReduce 32 26584387 1 +7 allreduce 32 26584387 1 7 compute 3038128727 7 compute 1525 -7 allToAllV 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 +7 alltoallv 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 7 compute 1058646357 7 barrier 7 compute 7748 7 compute 332 -7 allToAllV 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 +7 alltoallv 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 7 compute 915154397 7 barrier 7 compute 1453990364 -7 allToAll 13824 13824 +7 alltoall 13824 13824 7 compute 72648818 -7 allToAll 13824 13824 +7 alltoall 13824 13824 7 compute 20518600 7 comm_size 32 -7 allReduce 1 8126143 +7 allreduce 1 8126143 7 compute 1382888665 7 comm_size 32 -7 allReduce 795 69286550 +7 allreduce 795 69286550 7 compute 1512356592 7 comm_size 32 -7 allReduce 2 81727397 +7 allreduce 2 81727397 7 compute 21532031 -7 allToAll 13824 13824 +7 alltoall 13824 13824 7 compute 72648817 -7 allToAll 13824 13824 +7 alltoall 13824 13824 7 compute 20518605 7 comm_size 32 -7 allReduce 1 6044829 +7 allreduce 1 6044829 7 compute 67755022 7 comm_size 32 -7 allReduce 32 6756150 1 +7 allreduce 32 6756150 1 7 compute 60481269682 7 finalize \ No newline at end of file diff --git a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace8.txt b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace8.txt index 9d662f7917..1d695be52b 100644 --- a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace8.txt +++ b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace8.txt @@ -58,44 +58,44 @@ 8 compute 123092 8 gather 795 795 0 8 compute 238954617 -8 allToAll 1746 1746 +8 alltoall 1746 1746 8 compute 276028 8 barrier 8 compute 409270545 8 comm_size 32 -8 allReduce 32 25745168 1 +8 allreduce 32 25745168 1 8 compute 3038107710 8 compute 1525 -8 allToAllV 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 +8 alltoallv 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 8 compute 1058646360 8 barrier 8 compute 7748 8 compute 332 -8 allToAllV 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 +8 alltoallv 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 8 compute 915154395 8 barrier 8 compute 1452608369 -8 allToAll 13824 13824 +8 alltoall 13824 13824 8 compute 72647804 -8 allToAll 13824 13824 +8 alltoall 13824 13824 8 compute 20518145 8 comm_size 32 -8 allReduce 1 8001472 +8 allreduce 1 8001472 8 compute 1381477053 8 comm_size 32 -8 allReduce 795 71042507 +8 allreduce 795 71042507 8 compute 1510067990 8 comm_size 32 -8 allReduce 2 81335041 +8 allreduce 2 81335041 8 compute 21530405 -8 allToAll 13824 13824 +8 alltoall 13824 13824 8 compute 72647763 -8 allToAll 13824 13824 +8 alltoall 13824 13824 8 compute 20517454 8 comm_size 32 -8 allReduce 1 6534793 +8 allreduce 1 6534793 8 compute 61162725 8 comm_size 32 -8 allReduce 32 5464575 1 +8 allreduce 32 5464575 1 8 compute 60481271862 8 finalize \ No newline at end of file diff --git a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace9.txt b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace9.txt index f2c5a79033..343a0ec5fa 100644 --- a/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace9.txt +++ b/examples/smpi/replay_multiple/ti_traces_32_1/ti_trace9.txt @@ -58,44 +58,44 @@ 9 compute 123078 9 gather 795 795 0 9 compute 237815920 -9 allToAll 1746 1746 +9 alltoall 1746 1746 9 compute 276028 9 barrier 9 compute 409270449 9 comm_size 32 -9 allReduce 32 25455903 1 +9 allreduce 32 25455903 1 9 compute 3038109146 9 compute 1525 -9 allToAllV 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 +9 alltoallv 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 9 compute 1058646363 9 barrier 9 compute 7748 9 compute 332 -9 allToAllV 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 +9 alltoallv 13097094 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 386834 386834 386834 386834 386834 386834 386834 13262850 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414465 414450 414450 414450 9 compute 915154399 9 barrier 9 compute 1452824428 -9 allToAll 13824 13824 +9 alltoall 13824 13824 9 compute 72648698 -9 allToAll 13824 13824 +9 alltoall 13824 13824 9 compute 20518540 9 comm_size 32 -9 allReduce 1 7592763 +9 allreduce 1 7592763 9 compute 1381722154 9 comm_size 32 -9 allReduce 795 70563282 +9 allreduce 795 70563282 9 compute 1509467030 9 comm_size 32 -9 allReduce 2 81813815 +9 allreduce 2 81813815 9 compute 21530882 -9 allToAll 13824 13824 +9 alltoall 13824 13824 9 compute 72648896 -9 allToAll 13824 13824 +9 alltoall 13824 13824 9 compute 20518044 9 comm_size 32 -9 allReduce 1 5855800 +9 allreduce 1 5855800 9 compute 67632473 9 comm_size 32 -9 allReduce 32 3946615 1 +9 allreduce 32 3946615 1 9 compute 60481273037 9 finalize \ No newline at end of file diff --git a/include/simgrid_config.h.in b/include/simgrid/config.h.in similarity index 96% rename from include/simgrid_config.h.in rename to include/simgrid/config.h.in index 3b93712833..72d6570e10 100644 --- a/include/simgrid_config.h.in +++ b/include/simgrid/config.h.in @@ -1,4 +1,4 @@ -/* simgrid_config.h - Results of the configure made visible to user code. */ +/* simgrid/config.h - Results of the configure made visible to user code. */ /* Copyright (c) 2009-2018. The SimGrid Team. All rights reserved. */ diff --git a/include/simgrid/engine.h b/include/simgrid/engine.h index 3908e454ae..e355a9d832 100644 --- a/include/simgrid/engine.h +++ b/include/simgrid/engine.h @@ -12,6 +12,7 @@ SG_BEGIN_DECL() XBT_PUBLIC void sg_engine_load_platform(const char* filename); XBT_PUBLIC void sg_engine_load_deployment(const char* filename); +XBT_PUBLIC void sg_engine_run(); XBT_PUBLIC void sg_engine_register_function(const char* name, int (*code)(int, char**)); XBT_PUBLIC void sg_engine_register_default(int (*code)(int, char**)); XBT_PUBLIC double sg_engine_get_clock(); diff --git a/include/simgrid/jedule/jedule.hpp b/include/simgrid/jedule/jedule.hpp index 5381697fd7..8e2d80405c 100644 --- a/include/simgrid/jedule/jedule.hpp +++ b/include/simgrid/jedule/jedule.hpp @@ -8,12 +8,9 @@ #include #include -#include #include -#if SIMGRID_HAVE_JEDULE - namespace simgrid { namespace jedule{ @@ -21,18 +18,27 @@ class XBT_PUBLIC Jedule { public: Jedule()=default; ~Jedule(); - std::vector event_set; - Container* root_container = nullptr; - std::unordered_map meta_info; - void addMetaInfo(char* key, char* value); - void cleanupOutput(); - void writeOutput(FILE *file); + std::vector event_set_; + Container* root_container_ = nullptr; + void add_meta_info(char* key, char* value); + void cleanup_output(); + void write_output(FILE* file); + + // deprecated + XBT_ATTRIB_DEPRECATED_v323("Please use Jedule::add_meta_info()") void addMetaInfo(char* key, char* value) + { + add_meta_info(key, value); + } + XBT_ATTRIB_DEPRECATED_v323("Please use Jedule::cleanup_output()") void cleanupOutput() { cleanup_output(); } + XBT_ATTRIB_DEPRECATED_v323("Please use Jedule::write_output()") void writeOutput(FILE* file) { write_output(file); } + +private: + std::unordered_map meta_info_; }; } } typedef simgrid::jedule::Jedule *jedule_t; -#endif #endif /* JEDULE_HPP_ */ diff --git a/include/simgrid/jedule/jedule_events.hpp b/include/simgrid/jedule/jedule_events.hpp index 5ab0f8f108..3c853e3162 100644 --- a/include/simgrid/jedule/jedule_events.hpp +++ b/include/simgrid/jedule/jedule_events.hpp @@ -9,13 +9,11 @@ #include #include -#include #include #include #include -#if SIMGRID_HAVE_JEDULE namespace simgrid { namespace jedule{ @@ -23,24 +21,38 @@ class XBT_PUBLIC Event { public: Event(std::string name, double start_time, double end_time, std::string type); ~Event(); - void addCharacteristic(char* characteristic); - void addResources(std::vector* host_selection); - void addInfo(char* key, char* value); + void add_characteristic(char* characteristic); + void add_resources(std::vector* host_selection); + void add_info(char* key, char* value); void print(FILE* file); + // deprecated + XBT_ATTRIB_DEPRECATED_v323("Please use Event::add_characteristic()") void addCharacteristic(char* characteristic) + { + add_characteristic(characteristic); + } + XBT_ATTRIB_DEPRECATED_v323("Please use Event::add_resources()") void addResources( + std::vector* host_selection) + { + add_resources(host_selection); + } + XBT_ATTRIB_DEPRECATED_v323("Please use Event::add_info()") void addInfo(char* key, char* value) + { + add_info(key, value); + } + private: - std::string name; - double start_time; - double end_time; - std::string type; - std::vector* resource_subsets; - std::vector characteristics_list; /* just a list of names (strings) */ - std::unordered_map info_map; /* key/value pairs */ + std::string name_; + double start_time_; + double end_time_; + std::string type_; + std::vector* resource_subsets_; + std::vector characteristics_list_; /* just a list of names */ + std::unordered_map info_map_; /* key/value pairs */ }; } } typedef simgrid::jedule::Event* jed_event_t; -#endif #endif /* JEDULE_EVENTS_H_ */ diff --git a/include/simgrid/jedule/jedule_platform.hpp b/include/simgrid/jedule/jedule_platform.hpp index e076f2902e..d2911092c1 100644 --- a/include/simgrid/jedule/jedule_platform.hpp +++ b/include/simgrid/jedule/jedule_platform.hpp @@ -7,15 +7,12 @@ #define JED_SIMGRID_PLATFORM_H_ #include -#include #include #include #include #include -#if SIMGRID_HAVE_JEDULE - namespace simgrid { namespace jedule{ class XBT_PUBLIC Container { @@ -23,21 +20,45 @@ public: explicit Container(std::string name); virtual ~Container(); private: - int last_id; - int is_lowest = 0; + int last_id_; + int is_lowest_ = 0; + public: std::string name; std::unordered_map name2id; Container *parent = nullptr; std::vector children; std::vector resource_list; - void addChild(Container* child); - void addResources(std::vector hosts); - void createHierarchy(sg_netzone_t from_as); - std::vector getHierarchy(); - std::string getHierarchyAsString(); + void add_child(Container* child); + void add_resources(std::vector hosts); + void create_hierarchy(sg_netzone_t from_as); + std::vector get_hierarchy(); + std::string get_hierarchy_as_string(); void print(FILE *file); - void printResources(FILE *file); + void print_resources(FILE* file); + + // deprecated + XBT_ATTRIB_DEPRECATED_v323("Please use Container::add_child()") void addChild(Container* child) { add_child(child); } + XBT_ATTRIB_DEPRECATED_v323("Please use Container::add_resources()") void addResources(std::vector hosts) + { + add_resources(hosts); + } + XBT_ATTRIB_DEPRECATED_v323("Please use Container::create_hierarchy()") void createHierarchy(sg_netzone_t from_as) + { + create_hierarchy(from_as); + } + XBT_ATTRIB_DEPRECATED_v323("Please use Container::get_hierarchy()") std::vector getHierarchy() + { + return get_hierarchy(); + } + XBT_ATTRIB_DEPRECATED_v323("Please use Container::get_hierarchy_as_string()") std::string getHierarchyAsString() + { + return get_hierarchy_as_string(); + } + XBT_ATTRIB_DEPRECATED_v323("Please use Container::print_resources()") void printResources(FILE* file) + { + print_resources(file); + } }; class XBT_PUBLIC Subset { @@ -55,6 +76,4 @@ typedef simgrid::jedule::Container * jed_container_t; typedef simgrid::jedule::Subset * jed_subset_t; void get_resource_selection_by_hosts(std::vector* subset_list, std::vector *host_list); -#endif - #endif /* JED_SIMGRID_PLATFORM_H_ */ diff --git a/include/simgrid/jedule/jedule_sd_binding.h b/include/simgrid/jedule/jedule_sd_binding.h index 5f5ab68d2d..95a009d467 100644 --- a/include/simgrid/jedule/jedule_sd_binding.h +++ b/include/simgrid/jedule/jedule_sd_binding.h @@ -7,15 +7,12 @@ #define JEDULE_SD_BINDING_H_ #include -#include -#if SIMGRID_HAVE_JEDULE SG_BEGIN_DECL() XBT_PUBLIC void jedule_log_sd_event(SD_task_t task); XBT_PUBLIC void jedule_sd_init(void); XBT_PUBLIC void jedule_sd_exit(void); XBT_PUBLIC void jedule_sd_dump(const char* filename); SG_END_DECL() -#endif #endif /* JEDULE_SD_BINDING_H_ */ diff --git a/include/simgrid/kernel/future.hpp b/include/simgrid/kernel/future.hpp index e779c0ad63..766293985a 100644 --- a/include/simgrid/kernel/future.hpp +++ b/include/simgrid/kernel/future.hpp @@ -204,23 +204,31 @@ public: } }; -template -void bindPromise(Promise promise, Future future) +template void bind_promise(Promise promise, Future future) { class PromiseBinder { public: explicit PromiseBinder(Promise promise) : promise_(std::move(promise)) {} - void operator()(Future future) - { - simgrid::xbt::setPromise(promise_, future); - } + void operator()(Future future) { simgrid::xbt::set_promise(promise_, future); } + private: Promise promise_; }; future.then_(PromiseBinder(std::move(promise))); } -template Future unwrapFuture(Future> future); +template Future unwrap_future(Future> future); + +template +XBT_ATTRIB_DEPRECATED_v323("Please use bind_promise") void bindPromise(Promise promise, Future future) +{ + bind_promise(promise, future); +} +template +XBT_ATTRIB_DEPRECATED_v323("Please use unwrap_future") Future unwrapFuture(Future> future) +{ + unwrap_future(future); +} /** Result of some (probably) asynchronous operation in the SimGrid kernel * @@ -327,17 +335,14 @@ public: throw std::future_error(std::future_errc::no_state); // Give shared-ownership to the continuation: auto state = std::move(state_); - state->set_continuation(simgrid::xbt::makeTask( - std::move(continuation), state)); + state->set_continuation(simgrid::xbt::make_task(std::move(continuation), state)); } /** Attach a continuation to this future * * This version never does future unwrapping. */ - template - auto thenNoUnwrap(F continuation) - -> Future + template auto then_no_unwrap(F continuation) -> Future { typedef decltype(continuation(std::move(*this))) R; if (state_ == nullptr) @@ -347,18 +352,23 @@ public: Promise promise; Future future = promise.get_future(); // ...and when the current future is ready... - state->set_continuation(simgrid::xbt::makeTask( - [](Promise promise, std::shared_ptr> state, F continuation) { - // ...set the new future value by running the continuation. - Future future(std::move(state)); - simgrid::xbt::fulfillPromise(promise,[&]{ - return continuation(std::move(future)); - }); - }, - std::move(promise), state, std::move(continuation))); + state->set_continuation(simgrid::xbt::make_task( + [](Promise promise, std::shared_ptr> state, F continuation) { + // ...set the new future value by running the continuation. + Future future(std::move(state)); + simgrid::xbt::fulfill_promise(promise, [&] { return continuation(std::move(future)); }); + }, + std::move(promise), state, std::move(continuation))); return std::move(future); } + template + XBT_ATTRIB_DEPRECATED_v323("Please use then_no_unwrap") auto thenNoUnwrap(F continuation) + -> Future + { + then_no_unwrap(continuation); + } + /** Attach a continuation to this future * * The future must be valid in order to make this call. @@ -373,7 +383,7 @@ public: auto then(F continuation) -> typename std::enable_if::value, Future>::type { - return this->thenNoUnwrap(std::move(continuation)); + return this->then_no_unwrap(std::move(continuation)); } /** Attach a continuation to this future (future chaining) */ @@ -384,7 +394,7 @@ public: decltype(continuation(std::move(*this))) >::type { - return unwrapFuture(this->thenNoUnwap(std::move(continuation))); + return unwrap_future(this->then_no_unwrap(std::move(continuation))); } /** Get the value from the future @@ -410,12 +420,11 @@ private: std::shared_ptr> state_; }; -template -Future unwrapFuture(Future> future) +template Future unwrap_future(Future> future) { Promise promise; Future result = promise.get_future(); - bindPromise(std::move(promise), std::move(future)); + bind_promise(std::move(promise), std::move(future)); return std::move(result); } diff --git a/include/simgrid/kernel/routing/ClusterZone.hpp b/include/simgrid/kernel/routing/ClusterZone.hpp index 44212a9f42..c3135dcc6c 100644 --- a/include/simgrid/kernel/routing/ClusterZone.hpp +++ b/include/simgrid/kernel/routing/ClusterZone.hpp @@ -67,7 +67,7 @@ namespace routing { class ClusterZone : public NetZoneImpl { public: - explicit ClusterZone(NetZone* father, std::string name); + explicit ClusterZone(NetZoneImpl* father, std::string name); void get_local_route(NetPoint* src, NetPoint* dst, RouteCreationArgs* into, double* latency) override; void get_graph(xbt_graph_t graph, std::map* nodes, @@ -80,7 +80,7 @@ public: } /* We use a map instead of a std::vector here because that's a sparse vector. Some values may not exist */ - /* The pair is {linkUp, linkDown} */ + /* The pair is {link_up, link_down} */ std::unordered_map> private_links_; unsigned int node_pos(int id) { return id * num_links_per_node_; } diff --git a/include/simgrid/kernel/routing/DijkstraZone.hpp b/include/simgrid/kernel/routing/DijkstraZone.hpp index b3a53224b2..c4354636b0 100644 --- a/include/simgrid/kernel/routing/DijkstraZone.hpp +++ b/include/simgrid/kernel/routing/DijkstraZone.hpp @@ -33,13 +33,17 @@ namespace routing { */ class XBT_PRIVATE DijkstraZone : public RoutedZone { public: - DijkstraZone(NetZone* father, std::string name, bool cached); + DijkstraZone(NetZoneImpl* father, std::string name, bool cached); void seal() override; ~DijkstraZone() override; - xbt_node_t routeGraphNewNode(int id, int graph_id); - xbt_node_t nodeMapSearch(int id); - void newRoute(int src_id, int dst_id, RouteCreationArgs* e_route); + +private: + xbt_node_t route_graph_new_node(int id, int graph_id); + xbt_node_t node_map_search(int id); + void new_route(int src_id, int dst_id, RouteCreationArgs* e_route); + +public: /* For each vertex (node) already in the graph, * make sure it also has a loopback link; this loopback * can potentially already be in the graph, and in that diff --git a/include/simgrid/kernel/routing/DragonflyZone.hpp b/include/simgrid/kernel/routing/DragonflyZone.hpp index d1efcd1c99..c300f7a295 100644 --- a/include/simgrid/kernel/routing/DragonflyZone.hpp +++ b/include/simgrid/kernel/routing/DragonflyZone.hpp @@ -61,19 +61,20 @@ public: */ class XBT_PUBLIC DragonflyZone : public ClusterZone { public: - explicit DragonflyZone(NetZone* father, std::string name); + explicit DragonflyZone(NetZoneImpl* father, std::string name); ~DragonflyZone() override; // void create_links_for_node(sg_platf_cluster_cbarg_t cluster, int id, int rank, int position) override; void get_local_route(NetPoint* src, NetPoint* dst, RouteCreationArgs* into, double* latency) override; void parse_specific_arguments(ClusterCreationArgs* cluster) override; void seal() override; - void generateRouters(); - void generateLinks(); - void createLink(const std::string& id, int numlinks, resource::LinkImpl** linkup, resource::LinkImpl** linkdown); - void rankId_to_coords(int rankId, unsigned int coords[4]); + void rankId_to_coords(int rank_id, unsigned int coords[4]); private: + void generate_routers(); + void generate_links(); + void create_link(const std::string& id, int numlinks, resource::LinkImpl** linkup, resource::LinkImpl** linkdown); + simgrid::s4u::Link::SharingPolicy sharing_policy_; double bw_ = 0; double lat_ = 0; diff --git a/include/simgrid/kernel/routing/EmptyZone.hpp b/include/simgrid/kernel/routing/EmptyZone.hpp index 421e552772..b015de01b9 100644 --- a/include/simgrid/kernel/routing/EmptyZone.hpp +++ b/include/simgrid/kernel/routing/EmptyZone.hpp @@ -21,7 +21,7 @@ namespace routing { class XBT_PRIVATE EmptyZone : public NetZoneImpl { public: - explicit EmptyZone(NetZone* father, std::string name); + explicit EmptyZone(NetZoneImpl* father, std::string name); ~EmptyZone() override; void get_local_route(NetPoint* src, NetPoint* dst, RouteCreationArgs* into, double* latency) override diff --git a/include/simgrid/kernel/routing/FatTreeZone.hpp b/include/simgrid/kernel/routing/FatTreeZone.hpp index b7023dcb7f..e39ef330bc 100644 --- a/include/simgrid/kernel/routing/FatTreeZone.hpp +++ b/include/simgrid/kernel/routing/FatTreeZone.hpp @@ -98,7 +98,7 @@ public: */ class XBT_PRIVATE FatTreeZone : public ClusterZone { public: - explicit FatTreeZone(NetZone* father, std::string name); + explicit FatTreeZone(NetZoneImpl* father, std::string name); ~FatTreeZone() override; void get_local_route(NetPoint* src, NetPoint* dst, RouteCreationArgs* into, double* latency) override; @@ -115,7 +115,7 @@ public: */ void parse_specific_arguments(ClusterCreationArgs* cluster) override; void add_processing_node(int id); - void generate_dot_file(const std::string& filename = "fatTree.dot") const; + void generate_dot_file(const std::string& filename = "fat_tree.dot") const; private: // description of a PGFT (TODO : better doc) @@ -132,12 +132,12 @@ private: ClusterCreationArgs* cluster_ = nullptr; void add_link(FatTreeNode* parent, unsigned int parent_port, FatTreeNode* child, unsigned int child_port); - int getLevelPosition(const unsigned int level); - void generateLabels(); - void generateSwitches(); - int connectNodeToParents(FatTreeNode* node); - bool areRelated(FatTreeNode* parent, FatTreeNode* child); - bool isInSubTree(FatTreeNode* root, FatTreeNode* node); + int get_level_position(const unsigned int level); + void generate_labels(); + void generate_switches(); + int connect_node_to_parents(FatTreeNode* node); + bool are_related(FatTreeNode* parent, FatTreeNode* child); + bool is_in_sub_tree(FatTreeNode* root, FatTreeNode* node); }; } // namespace routing } // namespace kernel diff --git a/include/simgrid/kernel/routing/FloydZone.hpp b/include/simgrid/kernel/routing/FloydZone.hpp index 92fe57f9a1..172c694872 100644 --- a/include/simgrid/kernel/routing/FloydZone.hpp +++ b/include/simgrid/kernel/routing/FloydZone.hpp @@ -23,7 +23,7 @@ namespace routing { */ class XBT_PRIVATE FloydZone : public RoutedZone { public: - explicit FloydZone(NetZone* father, std::string name); + explicit FloydZone(NetZoneImpl* father, std::string name); ~FloydZone() override; void get_local_route(NetPoint* src, NetPoint* dst, RouteCreationArgs* into, double* latency) override; diff --git a/include/simgrid/kernel/routing/FullZone.hpp b/include/simgrid/kernel/routing/FullZone.hpp index 99722a1afa..bbf16f6b43 100644 --- a/include/simgrid/kernel/routing/FullZone.hpp +++ b/include/simgrid/kernel/routing/FullZone.hpp @@ -20,7 +20,7 @@ namespace routing { */ class XBT_PRIVATE FullZone : public RoutedZone { public: - explicit FullZone(NetZone* father, std::string name); + explicit FullZone(NetZoneImpl* father, std::string name); void seal() override; ~FullZone() override; diff --git a/include/simgrid/kernel/routing/NetPoint.hpp b/include/simgrid/kernel/routing/NetPoint.hpp index 94c0dd3994..046cd45382 100644 --- a/include/simgrid/kernel/routing/NetPoint.hpp +++ b/include/simgrid/kernel/routing/NetPoint.hpp @@ -26,7 +26,7 @@ class NetPoint : public simgrid::xbt::Extendable { public: enum class Type { Host, Router, NetZone }; - NetPoint(std::string name, NetPoint::Type componentType, NetZoneImpl* netzone_p); + NetPoint(std::string name, NetPoint::Type component_type, NetZoneImpl* netzone_p); ~NetPoint() = default; // Our rank in the vertices_ array of the netzone that contains us. @@ -40,7 +40,7 @@ public: bool is_host() { return component_type_ == Type::Host; } bool is_router() { return component_type_ == Type::Router; } - static simgrid::xbt::signal onCreation; + static simgrid::xbt::signal on_creation; bool operator<(const NetPoint& rhs) const { return name_ < rhs.name_; } diff --git a/include/simgrid/kernel/routing/NetZoneImpl.hpp b/include/simgrid/kernel/routing/NetZoneImpl.hpp index ba1d690726..9e8090536b 100644 --- a/include/simgrid/kernel/routing/NetZoneImpl.hpp +++ b/include/simgrid/kernel/routing/NetZoneImpl.hpp @@ -11,6 +11,7 @@ #include #include +#include namespace simgrid { namespace kernel { @@ -46,20 +47,29 @@ class BypassRoute; * called Autonomous Systems in this article). * */ -class XBT_PUBLIC NetZoneImpl : public s4u::NetZone { +class XBT_PUBLIC NetZoneImpl { friend simgrid::kernel::EngineImpl; // it destroys netRoot_ protected: - explicit NetZoneImpl(NetZone* father, std::string name); + explicit NetZoneImpl(NetZoneImpl* father, std::string name); virtual ~NetZoneImpl(); public: + s4u::NetZone* get_iface() { return &piface_; } + /** @brief Make an host within that NetZone */ - simgrid::s4u::Host* create_host(const char* name, std::vector* speedPerPstate, int coreAmount, + simgrid::s4u::Host* create_host(const char* name, std::vector* speed_per_pstate, int core_count, std::map* props); /** @brief Creates a new route in this NetZone */ - void add_bypass_route(NetPoint* src, NetPoint* dst, NetPoint* gw_src, NetPoint* gw_dst, - std::vector& link_list, bool symmetrical) override; + virtual void add_bypass_route(NetPoint* src, NetPoint* dst, NetPoint* gw_src, NetPoint* gw_dst, + std::vector& link_list, bool symmetrical); + + /** @brief Seal your netzone once you're done adding content, and before routing stuff through it */ + virtual void seal(); + virtual int add_component(kernel::routing::NetPoint* elm); /* A host, a router or a netzone, whatever */ + virtual void add_route(kernel::routing::NetPoint* src, kernel::routing::NetPoint* dst, + kernel::routing::NetPoint* gw_src, kernel::routing::NetPoint* gw_dst, + std::vector& link_list, bool symmetrical); protected: /** @@ -76,7 +86,37 @@ protected: bool get_bypass_route(routing::NetPoint* src, routing::NetPoint* dst, /* OUT */ std::vector& links, double* latency); +private: + s4u::NetZone piface_; + + // our content, as known to our graph routing algorithm (maps vertex_id -> vertex) + std::vector vertices_; + + NetZoneImpl* father_ = nullptr; + + std::vector children_; // sub-netzones + public: + unsigned int get_table_size() { return vertices_.size(); } + std::vector get_vertices() { return vertices_; } + + NetZoneImpl* get_father(); + + std::vector* get_children(); // Sub netzones + +private: + std::string name_; + bool sealed_ = false; // We cannot add more content when sealed + +public: + /** @brief Retrieves the name of that netzone as a C++ string */ + const std::string& get_name() const { return name_; } + /** @brief Retrieves the name of that netzone as a C string */ + const char* get_cname() const; + + std::vector get_all_hosts(); + int get_host_count(); + /* @brief get the route between two nodes in the full platform * * @param src where from diff --git a/include/simgrid/kernel/routing/RoutedZone.hpp b/include/simgrid/kernel/routing/RoutedZone.hpp index 443cd4e311..0d1937787c 100644 --- a/include/simgrid/kernel/routing/RoutedZone.hpp +++ b/include/simgrid/kernel/routing/RoutedZone.hpp @@ -50,18 +50,37 @@ namespace routing { class XBT_PRIVATE RoutedZone : public NetZoneImpl { public: - explicit RoutedZone(NetZone* father, std::string name); + explicit RoutedZone(NetZoneImpl* father, std::string name); void get_graph(xbt_graph_t graph, std::map* nodes, std::map* edges) override; - virtual RouteCreationArgs* newExtendedRoute(RoutingMode hierarchy, NetPoint* src, NetPoint* dst, NetPoint* gw_src, - NetPoint* gw_dst, std::vector& link_list, - bool symmetrical, bool change_order); protected: - void getRouteCheckParams(NetPoint* src, NetPoint* dst); - void addRouteCheckParams(NetPoint* src, NetPoint* dst, NetPoint* gw_src, NetPoint* gw_dst, - std::vector& link_list, bool symmetrical); + virtual RouteCreationArgs* new_extended_route(RoutingMode hierarchy, NetPoint* src, NetPoint* dst, NetPoint* gw_src, + NetPoint* gw_dst, std::vector& link_list, + bool symmetrical, bool change_order); + void get_route_check_params(NetPoint* src, NetPoint* dst); + void add_route_check_params(NetPoint* src, NetPoint* dst, NetPoint* gw_src, NetPoint* gw_dst, + std::vector& link_list, bool symmetrical); + + // deprecated + XBT_ATTRIB_DEPRECATED_v323("Please use RoutedZone::new_extended_route()") virtual RouteCreationArgs* newExtendedRoute( + RoutingMode hierarchy, NetPoint* src, NetPoint* dst, NetPoint* gw_src, NetPoint* gw_dst, + std::vector& link_list, bool symmetrical, bool change_order) + { + return new_extended_route(hierarchy, src, dst, gw_src, gw_dst, link_list, symmetrical, change_order); + } + XBT_ATTRIB_DEPRECATED_v323("Please use RoutedZone::get_route_check_params()") void getRouteCheckParams(NetPoint* src, + NetPoint* dst) + { + get_route_check_params(src, dst); + } + XBT_ATTRIB_DEPRECATED_v323("Please use RoutedZone::add_route_check_params()") void addRouteCheckParams( + NetPoint* src, NetPoint* dst, NetPoint* gw_src, NetPoint* gw_dst, std::vector& link_list, + bool symmetrical) + { + add_route_check_params(src, dst, gw_src, gw_dst, link_list, symmetrical); + } }; } // namespace routing } // namespace kernel diff --git a/include/simgrid/kernel/routing/TorusZone.hpp b/include/simgrid/kernel/routing/TorusZone.hpp index 22a172e655..29e9855818 100644 --- a/include/simgrid/kernel/routing/TorusZone.hpp +++ b/include/simgrid/kernel/routing/TorusZone.hpp @@ -21,7 +21,7 @@ namespace routing { class XBT_PRIVATE TorusZone : public ClusterZone { public: - explicit TorusZone(NetZone* father, std::string name); + explicit TorusZone(NetZoneImpl* father, std::string name); void create_links_for_node(ClusterCreationArgs* cluster, int id, int rank, unsigned int position) override; void get_local_route(NetPoint* src, NetPoint* dst, RouteCreationArgs* into, double* latency) override; void parse_specific_arguments(ClusterCreationArgs* cluster) override; diff --git a/include/simgrid/kernel/routing/VivaldiZone.hpp b/include/simgrid/kernel/routing/VivaldiZone.hpp index a5e1bc6599..873eddd24c 100644 --- a/include/simgrid/kernel/routing/VivaldiZone.hpp +++ b/include/simgrid/kernel/routing/VivaldiZone.hpp @@ -46,10 +46,18 @@ namespace routing { class XBT_PRIVATE VivaldiZone : public ClusterZone { public: - explicit VivaldiZone(NetZone* father, std::string name); + explicit VivaldiZone(NetZoneImpl* father, std::string name); - void setPeerLink(NetPoint* netpoint, double bw_in, double bw_out, std::string coord); + void set_peer_link(NetPoint* netpoint, double bw_in, double bw_out, std::string coord); void get_local_route(NetPoint* src, NetPoint* dst, RouteCreationArgs* into, double* latency) override; + + // deprecated + XBT_ATTRIB_DEPRECATED_v323("Please use VivaldiZone::set_peer_link()") void setPeerLink(NetPoint* netpoint, + double bw_in, double bw_out, + std::string coord) + { + set_peer_link(netpoint, bw_in, bw_out, coord); + } }; namespace vivaldi { diff --git a/include/simgrid/mailbox.h b/include/simgrid/mailbox.h new file mode 100644 index 0000000000..774fe6c2fd --- /dev/null +++ b/include/simgrid/mailbox.h @@ -0,0 +1,20 @@ +/* Copyright (c) 2018. 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. */ + +#ifndef INCLUDE_SIMGRID_MAILBOX_H_ +#define INCLUDE_SIMGRID_MAILBOX_H_ + +#include +#include + +/* C interface */ +SG_BEGIN_DECL() + +XBT_PUBLIC void sg_mailbox_set_receiver(const char* alias); +XBT_PUBLIC int sg_mailbox_listen(const char* alias); + +SG_END_DECL() + +#endif /* INCLUDE_SIMGRID_MAILBOX_H_ */ diff --git a/include/simgrid/modelchecker.h b/include/simgrid/modelchecker.h index 547f9fd237..f071a26eb9 100644 --- a/include/simgrid/modelchecker.h +++ b/include/simgrid/modelchecker.h @@ -14,12 +14,11 @@ #ifndef SIMGRID_MODELCHECKER_H #define SIMGRID_MODELCHECKER_H -#include /* size_t */ - -#include /* SIMGRID_HAVE_MC ? */ - +#include /* SIMGRID_HAVE_MC ? */ #include +#include /* size_t */ + SG_BEGIN_DECL() XBT_PUBLIC int MC_random(int min, int max); diff --git a/include/simgrid/msg.h b/include/simgrid/msg.h index c22f43367e..b562b47a2a 100644 --- a/include/simgrid/msg.h +++ b/include/simgrid/msg.h @@ -11,6 +11,7 @@ #include #include #include +#include #include #include #include diff --git a/include/simgrid/plugins/load_balancer.h b/include/simgrid/plugins/load_balancer.h index 0d7e857f5a..8e83cab362 100644 --- a/include/simgrid/plugins/load_balancer.h +++ b/include/simgrid/plugins/load_balancer.h @@ -1 +1,10 @@ +/* Copyright (c) 2009-2018. 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. */ +#ifndef SIMGRID_PLUGINS_LOAD_BALANCER_H_ +#define SIMGRID_PLUGINS_LOAD_BALANCER_H_ + void sg_load_balancer_plugin_init(); + +#endif diff --git a/include/simgrid/s4u/Actor.hpp b/include/simgrid/s4u/Actor.hpp index bbe2e73900..46e268b5b3 100644 --- a/include/simgrid/s4u/Actor.hpp +++ b/include/simgrid/s4u/Actor.hpp @@ -132,8 +132,7 @@ class XBT_PUBLIC Actor : public simgrid::xbt::Extendable { static std::function wrap_task(F f, Args... args) { typedef decltype(f(std::move(args)...)) R; - auto task = std::make_shared>( - simgrid::xbt::makeTask(std::move(f), std::move(args)...)); + auto task = std::make_shared>(simgrid::xbt::make_task(std::move(f), std::move(args)...)); return [task] { (*task)(); }; } @@ -283,25 +282,25 @@ public: const char* get_property(const char* key); void set_property(const char* key, const char* value); - XBT_ATTRIB_DEPRECATED_v323("Please use Actor::create()") static ActorPtr - createActor(const char* name, s4u::Host* host, std::function code) + XBT_ATTRIB_DEPRECATED_v323("Please use Actor::create()") static ActorPtr createActor( + const char* name, s4u::Host* host, std::function code) { return create(name, host, code); } - XBT_ATTRIB_DEPRECATED_v323("Please use Actor::create()") static ActorPtr - createActor(const char* name, s4u::Host* host, std::function*)> code, - std::vector* args) + XBT_ATTRIB_DEPRECATED_v323("Please use Actor::create()") static ActorPtr createActor( + const char* name, s4u::Host* host, std::function*)> code, + std::vector* args) { return create(name, host, code, args); } template ::type> - XBT_ATTRIB_DEPRECATED_v323("Please use Actor::create()") static ActorPtr - createActor(const char* name, s4u::Host* host, F code, Args... args) + XBT_ATTRIB_DEPRECATED_v323("Please use Actor::create()") static ActorPtr createActor( + const char* name, s4u::Host* host, F code, Args... args) { return create(name, host, code, std::move(args)...); } - XBT_ATTRIB_DEPRECATED_v323("Please use Actor::create()") static ActorPtr - createActor(const char* name, s4u::Host* host, const char* function, std::vector args) + XBT_ATTRIB_DEPRECATED_v323("Please use Actor::create()") static ActorPtr createActor( + const char* name, s4u::Host* host, const char* function, std::vector args) { return create(name, host, function, args); } @@ -329,7 +328,8 @@ public: XBT_ATTRIB_DEPRECATED_v323("Please use Actor::get_kill_time()") double getKillTime() { return get_kill_time(); } XBT_ATTRIB_DEPRECATED_v323("Please use Actor::by_pid()") static ActorPtr byPid(aid_t pid) { return by_pid(pid); } XBT_ATTRIB_DEPRECATED_v323("Please use Actor::kill_all()") static void killAll() { kill_all(); } - XBT_ATTRIB_DEPRECATED_v323("Please use Actor::kill_all() with no parameter") static void killAll(int resetPid) + XBT_ATTRIB_DEPRECATED_v323("Please use Actor::kill_all() with no parameter") static void killAll( + int XBT_ATTRIB_UNUSED resetPid) { kill_all(); } @@ -431,8 +431,7 @@ XBT_ATTRIB_DEPRECATED_v323("Please use this_actor::get_pid()") XBT_PUBLIC aid_t XBT_ATTRIB_DEPRECATED_v323("Please use this_actor::get_ppid()") XBT_PUBLIC aid_t getPpid(); XBT_ATTRIB_DEPRECATED_v323("Please use this_actor::get_host()") XBT_PUBLIC Host* getHost(); XBT_ATTRIB_DEPRECATED_v323("Please use this_actor::is_suspended()") XBT_PUBLIC bool isSuspended(); -XBT_ATTRIB_DEPRECATED_v323("Please use this_actor::on_exit()") XBT_PUBLIC - void onExit(int_f_pvoid_pvoid_t fun, void* data); +XBT_ATTRIB_DEPRECATED_v323("Please use this_actor::on_exit()") XBT_PUBLIC void onExit(int_f_pvoid_pvoid_t fun, void* data); } /** @} */ diff --git a/include/simgrid/s4u/Comm.hpp b/include/simgrid/s4u/Comm.hpp index be8ccf375f..f5c4401918 100644 --- a/include/simgrid/s4u/Comm.hpp +++ b/include/simgrid/s4u/Comm.hpp @@ -45,9 +45,9 @@ public: /** Start the comm, and ignore its result. It can be completely forgotten after that. */ Activity* detach(); /** Start the comm, and ignore its result. It can be completely forgotten after that. */ - Activity* detach(void (*cleanFunction)(void*)) + Activity* detach(void (*clean_function)(void*)) { - clean_fun_ = cleanFunction; + clean_fun_ = clean_function; return detach(); } diff --git a/include/simgrid/s4u/Engine.hpp b/include/simgrid/s4u/Engine.hpp index a0f10cf947..d30bc2ffed 100644 --- a/include/simgrid/s4u/Engine.hpp +++ b/include/simgrid/s4u/Engine.hpp @@ -132,6 +132,8 @@ public: /** @brief Retrieves all netzones of the type indicated by the template argument */ template std::vector get_filtered_netzones() { + static_assert(std::is_base_of::value, + "Filtering netzones is only possible for subclasses of kernel::routing::NetZoneImpl"); std::vector res; get_filtered_netzones_recursive(get_netzone_root(), &res); return res; @@ -204,15 +206,13 @@ public: } XBT_ATTRIB_DEPRECATED_v323("Please use Engine::get_host_count()") size_t getHostCount() { return get_host_count(); } - XBT_ATTRIB_DEPRECATED_v322("Engine::getHostList() is deprecated in favor of Engine::get_all_hosts(). Please switch " - "before v3.22") void getHostList(std::vector* whereTo); + XBT_ATTRIB_DEPRECATED_v322("Please use Engine::get_all_hosts()") void getHostList(std::vector* whereTo); XBT_ATTRIB_DEPRECATED_v323("Please use Engine::get_all_hosts()") std::vector getAllHosts() { return get_all_hosts(); } XBT_ATTRIB_DEPRECATED_v323("Please use Engine::get_link_count()") size_t getLinkCount() { return get_link_count(); } - XBT_ATTRIB_DEPRECATED_v322("Engine::getLinkList() is deprecated in favor of Engine::get_all_links(). Please " - "switch before v3.22") void getLinkList(std::vector* list); + XBT_ATTRIB_DEPRECATED_v322("Please use Engine::get_all_links()") void getLinkList(std::vector* list); XBT_ATTRIB_DEPRECATED_v323("Please use Engine::get_link_list()") std::vector getAllLinks() { return get_all_links(); @@ -224,8 +224,7 @@ public: XBT_ATTRIB_DEPRECATED_v323("Please use Engine::get_clock()") static double getClock() { return get_clock(); } XBT_ATTRIB_DEPRECATED_v323("Please use Engine::get_all_netpoints()") void getNetpointList( std::vector* list); - XBT_ATTRIB_DEPRECATED_v323("Please use Engine::netpoint_by_name_or_null()") - simgrid::kernel::routing::NetPoint* getNetpointByNameOrNull(std::string name) + XBT_ATTRIB_DEPRECATED_v323("Please use Engine::netpoint_by_name_or_null()") simgrid::kernel::routing::NetPoint* getNetpointByNameOrNull(std::string name) { return netpoint_by_name_or_null(name); } @@ -233,8 +232,7 @@ public: { return get_netzone_root(); } - XBT_ATTRIB_DEPRECATED_v323( - "Please use Engine::netzone_by_name_or_null()") simgrid::s4u::NetZone* getNetzoneByNameOrNull(const char* name) + XBT_ATTRIB_DEPRECATED_v323("Please use Engine::netzone_by_name_or_null()") simgrid::s4u::NetZone* getNetzoneByNameOrNull(const char* name) { return netzone_by_name_or_null(name); } @@ -270,15 +268,17 @@ extern XBT_PUBLIC xbt::signal on_simulation_end; /** Callback fired when the time jumps into the future */ extern XBT_PUBLIC xbt::signal on_time_advance; -/** Callback fired when the time cannot jump because of inter-actors deadlock */ +/** Callback fired when the time cannot advance because of inter-actors deadlock */ extern XBT_PUBLIC xbt::signal on_deadlock; template XBT_PRIVATE void get_filtered_netzones_recursive(s4u::NetZone* current, std::vector* whereto) { - for (auto const& elem : *(current->get_children())) { + static_assert(std::is_base_of::value, + "Filtering netzones is only possible for subclasses of kernel::routing::NetZoneImpl"); + for (auto const& elem : current->get_children()) { get_filtered_netzones_recursive(elem, whereto); - if (elem == dynamic_cast(elem)) - whereto->push_back(dynamic_cast(elem)); + if (elem->get_impl() == dynamic_cast(elem->get_impl())) + whereto->push_back(dynamic_cast(elem->get_impl())); } } } diff --git a/include/simgrid/s4u/Host.hpp b/include/simgrid/s4u/Host.hpp index 4d9f6077f0..477bb22515 100644 --- a/include/simgrid/s4u/Host.hpp +++ b/include/simgrid/s4u/Host.hpp @@ -108,15 +108,22 @@ public: return res; } - double getSpeed(); + double get_speed(); double get_available_speed(); int get_core_count(); + double get_load(); - double getPstateSpeed(int pstate_index); + double get_pstate_speed(int pstate_index); int get_pstate_count() const; void set_pstate(int pstate_index); int get_pstate(); + XBT_ATTRIB_DEPRECATED_v323("Please use Host::get_speed() instead.") double getSpeed() { return get_speed(); } + XBT_ATTRIB_DEPRECATED_v323("Please use Host::get_pstate_speed() instead.") double getPstateSpeed(int pstate_index) + { + return get_pstate_speed(pstate_index); + } + std::vector get_attached_storages(); XBT_ATTRIB_DEPRECATED_v323("Please use Host::get_attached_storages() instead.") void getAttachedStorages( std::vector* storages); @@ -125,7 +132,11 @@ public: * * This is defined in the platform file, and cannot be modified programatically (yet). */ - std::unordered_map const& getMountedStorages(); + std::unordered_map const& get_mounted_storages(); + XBT_ATTRIB_DEPRECATED_v323("Please use Host::get_mounted_storages() instead.") std::unordered_map const& getMountedStorages() + { + return get_mounted_storages(); + } void route_to(Host* dest, std::vector& links, double* latency); void route_to(Host* dest, std::vector& links, double* latency); @@ -139,13 +150,6 @@ public: /** Block the calling actor on an execution located on the called host (with explicit priority) */ void execute(double flops, double priority); - /** @brief Returns the current computation load (in flops per second) - * The external load (coming from an availability trace) is not taken in account. - * - * @return The number of activities currently running on a host (an activity at priority 2 is counted twice). - */ - double getLoad(); - // Deprecated functions XBT_ATTRIB_DEPRECATED_v323("Please use Host::get_name()") simgrid::xbt::string const& getName() const { diff --git a/include/simgrid/s4u/Link.hpp b/include/simgrid/s4u/Link.hpp index fd39b35d3c..e1832a8b22 100644 --- a/include/simgrid/s4u/Link.hpp +++ b/include/simgrid/s4u/Link.hpp @@ -94,7 +94,6 @@ public: static simgrid::xbt::signal on_communication_state_change; // Deprecated methods - XBT_ATTRIB_DEPRECATED_v321("Use get_cname(): v3.21 will turn this warning into an error.") const char* name(); XBT_ATTRIB_DEPRECATED_v323("Please use Link::by_name()") static Link* byName(const char* name) { return by_name(name); } XBT_ATTRIB_DEPRECATED_v323("Please use Link::get_name()") const std::string& getName() const { return get_name(); } XBT_ATTRIB_DEPRECATED_v323("Please use Link::get_cname()") const char* getCname() const { return get_cname(); } diff --git a/include/simgrid/s4u/Mutex.hpp b/include/simgrid/s4u/Mutex.hpp index 4230a984ed..b30de03c12 100644 --- a/include/simgrid/s4u/Mutex.hpp +++ b/include/simgrid/s4u/Mutex.hpp @@ -48,11 +48,14 @@ public: Mutex& operator=(Mutex const&) = delete; /** Constructs a new mutex */ - static Ptr createMutex(); + static Ptr create(); void lock(); void unlock(); bool try_lock(); + + // deprecated + XBT_ATTRIB_DEPRECATED_v323("Please use Mutex::create()") static Ptr createMutex() { return create(); } }; using MutexPtr = Mutex::Ptr; diff --git a/include/simgrid/s4u/NetZone.hpp b/include/simgrid/s4u/NetZone.hpp index 8eb0e8cb6e..e4d56e0f77 100644 --- a/include/simgrid/s4u/NetZone.hpp +++ b/include/simgrid/s4u/NetZone.hpp @@ -27,42 +27,44 @@ class XBT_PUBLIC NetZone { protected: friend simgrid::kernel::routing::NetZoneImpl; - explicit NetZone(NetZone * father, std::string name); - virtual ~NetZone(); + explicit NetZone(kernel::routing::NetZoneImpl* impl); + ~NetZone(); public: - /** @brief Seal your netzone once you're done adding content, and before routing stuff through it */ - virtual void seal(); /** @brief Retrieves the name of that netzone as a C++ string */ - const std::string& get_name() const { return name_; } + const std::string& get_name() const; /** @brief Retrieves the name of that netzone as a C string */ const char* get_cname() const; NetZone* get_father(); - std::vector* get_children(); // Sub netzones std::vector get_all_hosts(); int get_host_count(); + kernel::routing::NetZoneImpl* get_impl() { return pimpl_; } + private: + kernel::routing::NetZoneImpl* pimpl_; std::unordered_map properties_; public: /** Get the properties assigned to a netzone */ std::unordered_map* get_properties(); + std::vector get_children(); + /** Retrieve the property value (or nullptr if not set) */ const char* get_property(const char* key); void set_property(const char* key, const char* value); /* Add content to the netzone, at parsing time. It should be sealed afterward. */ - virtual int add_component(kernel::routing::NetPoint* elm); /* A host, a router or a netzone, whatever */ - virtual void add_route(kernel::routing::NetPoint* src, kernel::routing::NetPoint* dst, - kernel::routing::NetPoint* gw_src, kernel::routing::NetPoint* gw_dst, - std::vector& link_list, bool symmetrical); - virtual void add_bypass_route(kernel::routing::NetPoint* src, kernel::routing::NetPoint* dst, - kernel::routing::NetPoint* gw_src, kernel::routing::NetPoint* gw_dst, - std::vector& link_list, bool symmetrical) = 0; + int add_component(kernel::routing::NetPoint* elm); /* A host, a router or a netzone, whatever */ + void add_route(kernel::routing::NetPoint* src, kernel::routing::NetPoint* dst, kernel::routing::NetPoint* gw_src, + kernel::routing::NetPoint* gw_dst, std::vector& link_list, + bool symmetrical); + void add_bypass_route(kernel::routing::NetPoint* src, kernel::routing::NetPoint* dst, + kernel::routing::NetPoint* gw_src, kernel::routing::NetPoint* gw_dst, + std::vector& link_list, bool symmetrical); /*** Called on each newly created regular route (not on bypass routes) */ static simgrid::xbt::signal on_creation; static simgrid::xbt::signal on_seal; -private: - // our content, as known to our graph routing algorithm (maps vertexId -> vertex) - std::vector vertices_; - -protected: - unsigned int get_table_size() { return vertices_.size(); } - std::vector get_vertices() { return vertices_; } - -private: - NetZone* father_ = nullptr; - std::string name_; - - bool sealed_ = false; // We cannot add more content when sealed - - std::vector* children_ = nullptr; // sub-netzones - -public: // Deprecation wrappers + // Deprecation wrappers XBT_ATTRIB_DEPRECATED_v323("Please use NetZone::get_father()") NetZone* getFather() { return get_father(); } XBT_ATTRIB_DEPRECATED_v323("Please use NetZone::get_name()") const std::string& getName() const { return get_name(); } XBT_ATTRIB_DEPRECATED_v323("Please use NetZone::get_cname()") const char* getCname() const { return get_cname(); } @@ -104,8 +90,7 @@ public: // Deprecation wrappers { add_bypass_route(src, dst, gw_src, gw_dst, link_list, symmetrical); } - XBT_ATTRIB_DEPRECATED_v323( - "Please use NetZone::get_properties()") std::unordered_map* getProperties() + XBT_ATTRIB_DEPRECATED_v323("Please use NetZone::get_properties()") std::unordered_map* getProperties() { return get_properties(); } @@ -117,21 +102,20 @@ public: // Deprecation wrappers { set_property(key, value); } - XBT_ATTRIB_DEPRECATED_v323("Please use NetZone::add_component()") virtual int addComponent( - kernel::routing::NetPoint* elm) + XBT_ATTRIB_DEPRECATED_v323("Please use NetZone::add_component()") int addComponent(kernel::routing::NetPoint* elm) { return add_component(elm); } - XBT_ATTRIB_DEPRECATED_v323("Please use NetZone::get_vertices()") std::vector getVertices() - { - return get_vertices(); - } + XBT_ATTRIB_DEPRECATED_v323("Please use NetZone::get_vertices()") std::vector getVertices(); XBT_ATTRIB_DEPRECATED_v323("Please use NetZone::get_host_count()") int getHostCount() { return get_host_count(); } XBT_ATTRIB_DEPRECATED_v323("Please use NetZone::get_all_hosts()") void getHosts( std::vector* whereto); // retrieve my content as a vector of hosts XBT_ATTRIB_DEPRECATED_v323("Please use NetZone::get_children()") std::vector* getChildren() { - return get_children(); + std::vector* res = new std::vector(); + for (auto child : get_children()) + res->push_back(child); + return res; } }; } diff --git a/include/simgrid/s4u/Storage.hpp b/include/simgrid/s4u/Storage.hpp index bd860996a3..38931236f8 100644 --- a/include/simgrid/s4u/Storage.hpp +++ b/include/simgrid/s4u/Storage.hpp @@ -20,9 +20,7 @@ extern template class XBT_PUBLIC Extendable; } namespace s4u { -XBT_ATTRIB_DEPRECATED_v322( - "simgrid::s4u::getStorageList() is deprecated in favor of Engine::get_all_storages(). Please switch before v3.22") - XBT_PUBLIC void getStorageList(std::map* whereTo); +XBT_ATTRIB_DEPRECATED_v322("Please use Engine::get_all_storages()") XBT_PUBLIC void getStorageList(std::map* whereTo); class XBT_PUBLIC Storage : public simgrid::xbt::Extendable { friend s4u::Engine; diff --git a/include/simgrid/s4u/VirtualMachine.hpp b/include/simgrid/s4u/VirtualMachine.hpp index 0419fc0313..baafbcf808 100644 --- a/include/simgrid/s4u/VirtualMachine.hpp +++ b/include/simgrid/s4u/VirtualMachine.hpp @@ -8,13 +8,6 @@ #include -enum e_surf_vm_state_t { - SURF_VM_STATE_CREATED, /**< created, but not yet started */ - SURF_VM_STATE_RUNNING, - SURF_VM_STATE_SUSPENDED, /**< Suspend/resume does not involve disk I/O, so we assume there is no transition states. */ - SURF_VM_STATE_DESTROYED -}; - namespace simgrid { namespace s4u { @@ -38,25 +31,50 @@ public: VirtualMachine(VirtualMachine const&) = delete; VirtualMachine& operator=(VirtualMachine const&) = delete; - simgrid::vm::VirtualMachineImpl* getImpl() { return pimpl_vm_; } + enum class state { + CREATED, /**< created, but not yet started */ + RUNNING, + SUSPENDED, /**< Suspend/resume does not involve disk I/O, so we assume there is no transition states. */ + DESTROYED + }; + + simgrid::vm::VirtualMachineImpl* get_impl() { return pimpl_vm_; } void start(); void suspend(); void resume(); void shutdown(); void destroy(); - simgrid::s4u::Host* getPm(); - void setPm(simgrid::s4u::Host * pm); - size_t getRamsize(); - void setRamsize(size_t ramsize); - void setBound(double bound); + simgrid::s4u::Host* get_pm(); + void set_pm(simgrid::s4u::Host* pm); + size_t get_ramsize(); + void set_ramsize(size_t ramsize); + void set_bound(double bound); - e_surf_vm_state_t getState(); + VirtualMachine::state get_state(); static simgrid::xbt::signal on_start; static simgrid::xbt::signal on_started; static simgrid::xbt::signal on_shutdown; static simgrid::xbt::signal on_suspend; static simgrid::xbt::signal on_resume; + + // Deprecated methods + XBT_ATTRIB_DEPRECATED_v323("Please use VirtualMachine::get_state()") VirtualMachine::state getState() + { + return get_state(); + } + XBT_ATTRIB_DEPRECATED_v323("Please use VirtualMachine::get_impl()") simgrid::vm::VirtualMachineImpl* getImpl() + { + return pimpl_vm_; + } + XBT_ATTRIB_DEPRECATED_v323("Please use VirtualMachine::get_pm()") simgrid::s4u::Host* getPm() { return get_pm(); } + XBT_ATTRIB_DEPRECATED_v323("Please use VirtualMachine::set_pm()") void setPm(simgrid::s4u::Host* pm) { set_pm(pm); } + XBT_ATTRIB_DEPRECATED_v323("Please use VirtualMachine::get_ramsize()") size_t getRamsize() { return get_ramsize(); } + XBT_ATTRIB_DEPRECATED_v323("Please use VirtualMachine::set_ramsize()") void setRamsize(size_t ramsize) + { + set_ramsize(ramsize); + } + XBT_ATTRIB_DEPRECATED_v323("Please use VirtualMachine::set_bound()") void setBound(double bound) { set_bound(bound); } }; } } // namespace simgrid::s4u diff --git a/include/simgrid/simix.hpp b/include/simgrid/simix.hpp index 9943239d5c..06a9e30065 100644 --- a/include/simgrid/simix.hpp +++ b/include/simgrid/simix.hpp @@ -61,9 +61,7 @@ template typename std::result_of::type simcall(F&& code) // conveniently handles the success/failure value for us. typedef typename std::result_of::type R; simgrid::xbt::Result result; - simcall_run_kernel([&]{ - simgrid::xbt::fulfillPromise(result, std::forward(code)); - }); + simcall_run_kernel([&] { simgrid::xbt::fulfill_promise(result, std::forward(code)); }); return result.get(); } @@ -77,11 +75,6 @@ typedef std::function args)> ActorCodeFactory XBT_PUBLIC void register_function(const char* name, ActorCodeFactory factory); -/** These functions will be called when we detect a deadlock: any remaining process is locked on an action - * - * If these functions manage to unlock some of the processes, then the deadlock will be avoided. - */ -XBT_PUBLIC_DATA simgrid::xbt::signal onDeadlock; } } diff --git a/include/simgrid/simix/blocking_simcall.hpp b/include/simgrid/simix/blocking_simcall.hpp index dcc7b1d87c..d2c87daeec 100644 --- a/include/simgrid/simix/blocking_simcall.hpp +++ b/include/simgrid/simix/blocking_simcall.hpp @@ -46,8 +46,7 @@ XBT_PUBLIC void unblock(smx_actor_t process); * @return Value of the kernel future * @exception Exception from the kernel future */ -template -auto kernelSync(F code) -> decltype(code().get()) +template auto kernel_sync(F code) -> decltype(code().get()) { typedef decltype(code().get()) T; if (SIMIX_is_maestro()) @@ -60,7 +59,7 @@ auto kernelSync(F code) -> decltype(code().get()) try { auto future = code(); future.then_([&result, self](std::shared_ptr>&& value) { - simgrid::xbt::setPromise(result, simgrid::kernel::Future(value)); + simgrid::xbt::set_promise(result, simgrid::kernel::Future(value)); simgrid::simix::unblock(self); }); } @@ -71,6 +70,11 @@ auto kernelSync(F code) -> decltype(code().get()) }); return result.get(); } +template +XBT_ATTRIB_DEPRECATED_v323("Please use simix::kernel_sync()") auto kernelSync(F code) -> decltype(code().get()) +{ + return kernel_sync(code); +} /** A blocking (`wait()`-based) future for SIMIX processes */ // TODO, .wait_for() @@ -96,7 +100,7 @@ public: // When the kernel future is ready... this->future_.then_([&result, self](std::shared_ptr>&& value) { // ... wake up the process with the result of the kernel future. - simgrid::xbt::setPromise(result, simgrid::kernel::Future(value)); + simgrid::xbt::set_promise(result, simgrid::kernel::Future(value)); simgrid::simix::unblock(self); }); } @@ -146,9 +150,7 @@ private: * @param code SimGrid kernel code which returns a simgrid::kernel::Future * @return Actor future */ -template -auto kernelAsync(F code) - -> Future +template auto kernel_async(F code) -> Future { typedef decltype(code().get()) T; @@ -158,7 +160,11 @@ auto kernelAsync(F code) // Wrap the kernel future in a actor future: return simgrid::simix::Future(std::move(future)); } - +template +XBT_ATTRIB_DEPRECATED_v323("Please use simix::kernel_sync()") auto kernelAsync(F code) -> Future +{ + return kernel_async(code); +} } } diff --git a/include/simgrid/smpi/replay.hpp b/include/simgrid/smpi/replay.hpp index 3269015c7e..d116608502 100644 --- a/include/simgrid/smpi/replay.hpp +++ b/include/simgrid/smpi/replay.hpp @@ -2,9 +2,15 @@ /* 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. */ -#include "private.hpp" +#ifndef SMPI_REPLAY_HPP_ +#define SMPI_REPLAY_HPP_ + +#include +#include #include +#include +#include #include #define CHECK_ACTION_PARAMS(action, mandatory, optional) \ @@ -24,6 +30,13 @@ } \ } +XBT_PRIVATE void* smpi_get_tmp_sendbuffer(int size); +XBT_PRIVATE void* smpi_get_tmp_recvbuffer(int size); +XBT_PRIVATE void smpi_free_tmp_buffer(void* buf); +XBT_PRIVATE void smpi_free_replay_tmp_buffers(); + +XBT_PRIVATE void log_timed_action(simgrid::xbt::ReplayAction& action, double clock); + namespace simgrid { namespace smpi { namespace replay { @@ -151,7 +164,7 @@ public: /** * Base class for all ReplayActions. * Note that this class actually implements the behavior of each action - * while the parsing of the replay arguments is done in the ActionArgParser class. + * while the parsing of the replay arguments is done in the @ActionArgParser class. * In other words: The logic goes here, the setup is done by the ActionArgParser. */ template class ReplayAction { @@ -164,7 +177,16 @@ public: explicit ReplayAction(std::string name) : name(name), my_proc_id(simgrid::s4u::this_actor::get_pid()) {} virtual ~ReplayAction() = default; - virtual void execute(simgrid::xbt::ReplayAction& action); + void execute(simgrid::xbt::ReplayAction& action) + { + // Needs to be re-initialized for every action, hence here + double start_time = smpi_process()->simulated_elapsed(); + args.parse(action, name); + kernel(action); + if (name != "Init") + log_timed_action(action, start_time); + } + virtual void kernel(simgrid::xbt::ReplayAction& action) = 0; void* send_buffer(int size) { return smpi_get_tmp_sendbuffer(size); } void* recv_buffer(int size) { return smpi_get_tmp_recvbuffer(size); } @@ -229,7 +251,7 @@ private: RequestStorage& req_storage; public: - explicit WaitAllAction(RequestStorage& storage) : ReplayAction("waitAll"), req_storage(storage) {} + explicit WaitAllAction(RequestStorage& storage) : ReplayAction("waitall"), req_storage(storage) {} void kernel(simgrid::xbt::ReplayAction& action) override; }; @@ -253,13 +275,13 @@ public: class AllReduceAction : public ReplayAction { public: - explicit AllReduceAction() : ReplayAction("allReduce") {} + explicit AllReduceAction() : ReplayAction("allreduce") {} void kernel(simgrid::xbt::ReplayAction& action) override; }; class AllToAllAction : public ReplayAction { public: - explicit AllToAllAction() : ReplayAction("allToAll") {} + explicit AllToAllAction() : ReplayAction("alltoall") {} void kernel(simgrid::xbt::ReplayAction& action) override; }; @@ -283,21 +305,23 @@ public: class ScatterVAction : public ReplayAction { public: - explicit ScatterVAction() : ReplayAction("scatterV") {} + explicit ScatterVAction() : ReplayAction("scatterv") {} void kernel(simgrid::xbt::ReplayAction& action) override; }; class ReduceScatterAction : public ReplayAction { public: - explicit ReduceScatterAction() : ReplayAction("reduceScatter") {} + explicit ReduceScatterAction() : ReplayAction("reducescatter") {} void kernel(simgrid::xbt::ReplayAction& action) override; }; class AllToAllVAction : public ReplayAction { public: - explicit AllToAllVAction() : ReplayAction("allToAllV") {} + explicit AllToAllVAction() : ReplayAction("alltoallv") {} void kernel(simgrid::xbt::ReplayAction& action) override; }; } } } + +#endif diff --git a/include/simgrid_config.h b/include/simgrid_config.h new file mode 100644 index 0000000000..7d2de9f8f3 --- /dev/null +++ b/include/simgrid_config.h @@ -0,0 +1,9 @@ +/* simgrid_config.h - backward-compatibility wrapper. Stop using it */ + +/* Copyright (c) 2018. 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. */ + +#warning simgrid_config.h is now deprecated. Please use simgrid/config.h instead +#include diff --git a/include/smpi/smpi_helpers.h b/include/smpi/smpi_helpers.h index c7107059ec..1d92e4afc9 100644 --- a/include/smpi/smpi_helpers.h +++ b/include/smpi/smpi_helpers.h @@ -1,27 +1,16 @@ -#ifndef MPI_HELPERS_H -#define MPI_HELPERS_H +/* Copyright (c) 2018. The SimGrid Team. All rights reserved. */ -#ifndef _GNU_SOURCE -#define _GNU_SOURCE -#endif +/* 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. */ -#include -#include /* Load it before the define next line to not mess with the system headers */ -#if _POSIX_TIMERS -#include -#endif +#ifndef SMPI_HELPERS_H +#define SMPI_HELPERS_H -int smpi_usleep(useconds_t usecs); -#if _POSIX_TIMERS > 0 -int smpi_nanosleep(const struct timespec* tp, struct timespec* t); -int smpi_clock_gettime(clockid_t clk_id, struct timespec* tp); +#ifndef _GNU_SOURCE +#define _GNU_SOURCE #endif -unsigned int smpi_sleep(unsigned int secs); -int smpi_gettimeofday(struct timeval* tv, struct timezone* tz); -struct option; -int smpi_getopt_long (int argc, char *const *argv, const char *options, const struct option *long_options, int *opt_index); -int smpi_getopt (int argc, char *const *argv, const char *options); +#include #define sleep(x) smpi_sleep(x) #define usleep(x) smpi_usleep(x) @@ -33,5 +22,6 @@ int smpi_getopt (int argc, char *const *argv, const char *options); #define getopt(x,y,z) smpi_getopt(x,y,z) #define getopt_long(x,y,z,a,b) smpi_getopt_long(x,y,z,a,b) +#define getopt_long_only(x,y,z,a,b) smpi_getopt_long_only(x,y,z,a,b) #endif diff --git a/include/smpi/smpi_helpers_internal.h b/include/smpi/smpi_helpers_internal.h new file mode 100644 index 0000000000..0c78541146 --- /dev/null +++ b/include/smpi/smpi_helpers_internal.h @@ -0,0 +1,38 @@ +/* Copyright (c) 2018. 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. */ + +#ifndef SMPI_HELPERS_INTERNAL_H +#define SMPI_HELPERS_INTERNAL_H + +#include + +#include +#if _POSIX_TIMERS +#include +#endif + +#ifdef __cplusplus +extern "C" { +#endif + +int smpi_usleep(useconds_t usecs); +#if _POSIX_TIMERS > 0 +int smpi_nanosleep(const struct timespec* tp, struct timespec* t); +int smpi_clock_gettime(clockid_t clk_id, struct timespec* tp); +#endif +unsigned int smpi_sleep(unsigned int secs); +int smpi_gettimeofday(struct timeval* tv, struct timezone* tz); + +struct option; +int smpi_getopt_long_only(int argc, char* const* argv, const char* options, const struct option* long_options, + int* opt_index); +int smpi_getopt_long(int argc, char* const* argv, const char* options, const struct option* long_options, + int* opt_index); +int smpi_getopt(int argc, char* const* argv, const char* options); + +#ifdef __cplusplus +} // extern "C" +#endif +#endif diff --git a/include/xbt/automaton.h b/include/xbt/automaton.h index f76712c0f6..0b935ed2fb 100644 --- a/include/xbt/automaton.h +++ b/include/xbt/automaton.h @@ -1,5 +1,4 @@ -/* Copyright (c) 2011-2018. The SimGrid Team. - * All rights reserved. */ +/* Copyright (c) 2011-2018. 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,10 +7,6 @@ #define XBT_AUTOMATON_H #include -#include -#include -#include -#include SG_BEGIN_DECL() diff --git a/include/xbt/backtrace.hpp b/include/xbt/backtrace.hpp index 754bd5fb22..ae378b7216 100644 --- a/include/xbt/backtrace.hpp +++ b/include/xbt/backtrace.hpp @@ -29,7 +29,8 @@ XBT_PUBLIC std::vector backtrace(); * * Try ro resolve symbols and source code location. */ -XBT_PUBLIC std::vector resolveBacktrace(xbt_backtrace_location_t const* loc, std::size_t count); +XBT_PUBLIC std::vector resolve_backtrace(xbt_backtrace_location_t const* loc, std::size_t count); +XBT_ATTRIB_DEPRECATED_v323("Please use xbt::resolve_backtrace()") XBT_PUBLIC std::vector resolveBacktrace(xbt_backtrace_location_t const* loc, std::size_t count); } } diff --git a/include/xbt/base.h b/include/xbt/base.h index 34e588f5b1..d283304435 100644 --- a/include/xbt/base.h +++ b/include/xbt/base.h @@ -71,10 +71,11 @@ #define XBT_ATTRIB_DEPRECATED(mesg) __attribute__((deprecated(mesg))) #endif -#define XBT_ATTRIB_DEPRECATED_v321(mesg) XBT_ATTRIB_DEPRECATED(mesg) /* Will be dropped in v3.21 */ #define XBT_ATTRIB_DEPRECATED_v322(mesg) XBT_ATTRIB_DEPRECATED(mesg) /* Will be dropped in v3.22 */ #define XBT_ATTRIB_DEPRECATED_v323(mesg) \ XBT_ATTRIB_DEPRECATED(mesg " (this compatibility wrapper will be dropped in v3.23)") /* Will be dropped in v3.23 */ +#define XBT_ATTRIB_DEPRECATED_v324(mesg) \ + XBT_ATTRIB_DEPRECATED(mesg " (this compatibility wrapper will be dropped in v3.24)") /* Will be dropped in v3.24 */ #if !defined(__APPLE__) # define XBT_ATTRIB_CONSTRUCTOR(prio) __attribute__((__constructor__(prio))) diff --git a/include/xbt/config.hpp b/include/xbt/config.hpp index 10cdc39aa4..c8888e639a 100644 --- a/include/xbt/config.hpp +++ b/include/xbt/config.hpp @@ -162,11 +162,11 @@ bind_flag(T& value, const char* name, const char* description, std::map inline -std::function wrapMain(F code, std::vector args) +template +inline XBT_ATTRIB_DEPRECATED_v323("Please use wrap_main()") std::function wrapMain( + F code, std::vector args) { return MainFunction(std::move(code), std::move(args)); } -template inline -std::function wrapMain(F code, int argc, const char*const argv[]) +template inline std::function wrap_main(F code, std::vector args) +{ + return MainFunction(std::move(code), std::move(args)); +} + +template +inline XBT_ATTRIB_DEPRECATED_v323("Please use wrap_main()") std::function wrapMain(F code, int argc, + const char* const argv[]) +{ + std::vector args(argv, argv + argc); + return MainFunction(std::move(code), std::move(args)); +} +template inline std::function wrap_main(F code, int argc, const char* const argv[]) { std::vector args(argv, argv + argc); return MainFunction(std::move(code), std::move(args)); @@ -288,14 +300,19 @@ public: } }; -template -auto makeTask(F code, Args... args) --> Task< decltype(code(std::move(args)...))() > +template +XBT_ATTRIB_DEPRECATED_v323("Please use make_task()") auto makeTask(F code, Args... args) + -> Task { TaskImpl task(std::move(code), std::make_tuple(std::move(args)...)); return Task(std::move(task)); } +template auto make_task(F code, Args... args) -> Task +{ + TaskImpl task(std::move(code), std::make_tuple(std::move(args)...)); + return Task(std::move(task)); +} } } diff --git a/include/xbt/future.hpp b/include/xbt/future.hpp index 3c1f761ab7..be488ed9d7 100644 --- a/include/xbt/future.hpp +++ b/include/xbt/future.hpp @@ -199,9 +199,17 @@ public: * @param code What we want to do * @param promise Where to want to store the result */ -template -auto fulfillPromise(R& promise, F&& code) --> decltype(promise.set_value(code())) +template auto fulfill_promise(R& promise, F&& code) -> decltype(promise.set_value(code())) +{ + try { + promise.set_value(std::forward(code)()); + } catch (...) { + promise.set_exception(std::current_exception()); + } +} +template +XBT_ATTRIB_DEPRECATED_v323("Please use xbt::fulfill_promise()") auto fulfillPromise(R& promise, F&& code) + -> decltype(promise.set_value(code())) { try { promise.set_value(std::forward(code)()); @@ -211,9 +219,18 @@ auto fulfillPromise(R& promise, F&& code) } } -template -auto fulfillPromise(P& promise, F&& code) --> decltype(promise.set_value()) +template auto fulfill_promise(P& promise, F&& code) -> decltype(promise.set_value()) +{ + try { + std::forward(code)(); + promise.set_value(); + } catch (...) { + promise.set_exception(std::current_exception()); + } +} +template +XBT_ATTRIB_DEPRECATED_v323("Please use xbt::fulfill_promise()") auto fulfillPromise(P& promise, F&& code) + -> decltype(promise.set_value()) { try { std::forward(code)(); @@ -238,10 +255,14 @@ auto fulfillPromise(P& promise, F&& code) * @param promise output (a valid future or a result) * @param future input (a ready/waitable future or a valid result) */ -template inline -void setPromise(P& promise, F&& future) +template inline void set_promise(P& promise, F&& future) +{ + fulfill_promise(promise, [&] { return std::forward(future).get(); }); +} +template +inline XBT_ATTRIB_DEPRECATED_v323("Please use xbt::set_promise()") void setPromise(P& promise, F&& future) { - fulfillPromise(promise, [&]{ return std::forward(future).get(); }); + fulfill_promise(promise, [&] { return std::forward(future).get(); }); } } diff --git a/include/xbt/log.hpp b/include/xbt/log.hpp index d2503b9fa1..083ce2dd7a 100644 --- a/include/xbt/log.hpp +++ b/include/xbt/log.hpp @@ -16,8 +16,12 @@ namespace xbt { * * @ingroup XBT_ex */ -XBT_PUBLIC void logException(e_xbt_log_priority_t priority, const char* context, std::exception const& exception); +XBT_PUBLIC void log_exception(e_xbt_log_priority_t priority, const char* context, std::exception const& exception); -XBT_PUBLIC void installExceptionHandler(); +XBT_PUBLIC void install_exception_handler(); + +// deprecated +XBT_ATTRIB_DEPRECATED_v323("xbt::log_exception()") XBT_PUBLIC void logException(e_xbt_log_priority_t priority, const char* context, std::exception const& exception); +XBT_ATTRIB_DEPRECATED_v323("xbt::install_exception_handler()") XBT_PUBLIC void installExceptionHandler(); } } diff --git a/include/xbt/misc.h b/include/xbt/misc.h index c04f2089dc..7af14159c6 100644 --- a/include/xbt/misc.h +++ b/include/xbt/misc.h @@ -8,7 +8,7 @@ #ifndef XBT_MISC_H #define XBT_MISC_H -#include +#include #include #include diff --git a/include/xbt/signal.hpp b/include/xbt/signal.hpp index 1cd6e06f41..4c1d46d22d 100644 --- a/include/xbt/signal.hpp +++ b/include/xbt/signal.hpp @@ -37,8 +37,11 @@ namespace xbt { for (auto const& handler : handlers_) handler(args...); } - void disconnectSlots() { handlers_.clear(); } - int getSlotsAmount() { return handlers_.size(); } + void disconnect_slots() { handlers_.clear(); } + int get_slot_count() { return handlers_.size(); } + // deprecated + XBT_ATTRIB_DEPRECATED_v323("Please use xbt::disconnect_slots)") void disconnectSlots() { disconnect_slots(); } + XBT_ATTRIB_DEPRECATED_v323("Please use xbt::get_slot_count)") int getSlotsAmount() { return get_slot_count(); } }; } diff --git a/include/xbt/string.hpp b/include/xbt/string.hpp index 7af6d332c1..9400d3d3bf 100644 --- a/include/xbt/string.hpp +++ b/include/xbt/string.hpp @@ -6,7 +6,7 @@ #ifndef SIMGRID_XBT_STRING_HPP #define SIMGRID_XBT_STRING_HPP -#include +#include #include #include diff --git a/include/xbt/sysdep.h b/include/xbt/sysdep.h index 44ef89aa89..7bcc04b738 100644 --- a/include/xbt/sysdep.h +++ b/include/xbt/sysdep.h @@ -14,7 +14,7 @@ #include #include -#include +#include #include #include diff --git a/sonar-project.properties b/sonar-project.properties index 39e72748c7..680725f0c9 100644 --- a/sonar-project.properties +++ b/sonar-project.properties @@ -3,7 +3,7 @@ sonar.projectKey=simgrid sonar.projectName=SimGrid -sonar.projectVersion=3.19.90 +sonar.projectVersion=3.20.90 sonar.links.homepage=http://simgrid.org sonar.links.issue=https://github.com/simgrid/simgrid/issues diff --git a/src/bindings/java/jmsg_as.cpp b/src/bindings/java/jmsg_as.cpp index 2e08d3b20a..0d4d89fc59 100644 --- a/src/bindings/java/jmsg_as.cpp +++ b/src/bindings/java/jmsg_as.cpp @@ -69,14 +69,14 @@ JNIEXPORT jobjectArray JNICALL Java_org_simgrid_msg_As_getSons(JNIEnv * env, job if (not cls) return nullptr; - jtable = env->NewObjectArray(static_cast(self_as->get_children()->size()), cls, nullptr); + jtable = env->NewObjectArray(static_cast(self_as->get_children().size()), cls, nullptr); if (not jtable) { jxbt_throw_jni(env, "Hosts table allocation failed"); return nullptr; } - for (auto const& tmp_as : *self_as->get_children()) { + for (auto const& tmp_as : self_as->get_children()) { jobject tmp_jas = jnetzone_new_instance(env); if (not tmp_jas) { jxbt_throw_jni(env, "java As instantiation failed"); diff --git a/src/bindings/java/jmsg_host.cpp b/src/bindings/java/jmsg_host.cpp index 166b570f59..32c513fa12 100644 --- a/src/bindings/java/jmsg_host.cpp +++ b/src/bindings/java/jmsg_host.cpp @@ -236,7 +236,7 @@ JNIEXPORT jobjectArray JNICALL Java_org_simgrid_msg_Host_getMountedStorage(JNIEn int index = 0; jobjectArray jtable; - std::unordered_map mounted_storages = host->getMountedStorages(); + std::unordered_map mounted_storages = host->get_mounted_storages(); int count = mounted_storages.size(); jclass cls = env->FindClass("org/simgrid/msg/Storage"); @@ -326,7 +326,7 @@ JNIEXPORT jobjectArray JNICALL Java_org_simgrid_msg_Host_all(JNIEnv * env, jclas JNIEXPORT void JNICALL Java_org_simgrid_msg_Host_setAsyncMailbox(JNIEnv * env, jclass cls_arg, jobject jname) { const char *name = env->GetStringUTFChars((jstring) jname, 0); - MSG_mailbox_set_async(name); + sg_mailbox_set_receiver(name); env->ReleaseStringUTFChars((jstring) jname, name); } diff --git a/src/bindings/java/jmsg_vm.cpp b/src/bindings/java/jmsg_vm.cpp index f85535969a..6bdf53e244 100644 --- a/src/bindings/java/jmsg_vm.cpp +++ b/src/bindings/java/jmsg_vm.cpp @@ -90,7 +90,7 @@ JNIEXPORT jobjectArray JNICALL Java_org_simgrid_msg_VM_all(JNIEnv* env, jclass c msg_host_t h; xbt_dynar_foreach (hosts, it, h) { simgrid::s4u::VirtualMachine* vm = dynamic_cast(h); - if (vm != nullptr && vm->getState() != SURF_VM_STATE_DESTROYED) { + if (vm != nullptr && vm->get_state() != simgrid::s4u::VirtualMachine::state::DESTROYED) { jobject jvm = static_cast(vm->extension(JAVA_HOST_LEVEL)); vms.push_back(jvm); } diff --git a/src/bindings/java/org/simgrid/NativeLib.java b/src/bindings/java/org/simgrid/NativeLib.java index 660158a75f..da9801dcdd 100644 --- a/src/bindings/java/org/simgrid/NativeLib.java +++ b/src/bindings/java/org/simgrid/NativeLib.java @@ -142,11 +142,11 @@ public final class NativeLib { else if ("x86_64".equalsIgnoreCase(arch) || "AMD64".equalsIgnoreCase(arch)) arch = "amd64"; - if (os.toLowerCase().startsWith("win")){ + if (os.toLowerCase().startsWith("win")) { os = "Windows"; - } else if (os.contains("OS X")) + } else if (os.contains("OS X")) { os = "Darwin"; - + } os = os.replace(' ', '_'); arch = arch.replace(' ', '_'); diff --git a/src/bindings/lua/lua_platf.cpp b/src/bindings/lua/lua_platf.cpp index dac0399226..1b8431dce1 100644 --- a/src/bindings/lua/lua_platf.cpp +++ b/src/bindings/lua/lua_platf.cpp @@ -476,12 +476,12 @@ int console_AS_open(lua_State *L) { simgrid::kernel::routing::ZoneCreationArgs AS; AS.id = id; AS.routing = mode_int; - simgrid::s4u::NetZone* new_as = sg_platf_new_Zone_begin(&AS); + simgrid::kernel::routing::NetZoneImpl* new_as = sg_platf_new_Zone_begin(&AS); /* Build a Lua representation of the new AS on the stack */ lua_newtable(L); - simgrid::s4u::NetZone** lua_as = - (simgrid::s4u::NetZone**)lua_newuserdata(L, sizeof(simgrid::s4u::NetZone*)); /* table userdatum */ + simgrid::kernel::routing::NetZoneImpl** lua_as = (simgrid::kernel::routing::NetZoneImpl**)lua_newuserdata( + L, sizeof(simgrid::kernel::routing::NetZoneImpl*)); /* table userdatum */ *lua_as = new_as; luaL_getmetatable(L, PLATF_MODULE_NAME); /* table userdatum metatable */ lua_setmetatable(L, -2); /* table userdatum */ diff --git a/src/include/xbt/mmalloc.h b/src/include/xbt/mmalloc.h index 54cbd1945a..fd209109a6 100644 --- a/src/include/xbt/mmalloc.h +++ b/src/include/xbt/mmalloc.h @@ -10,7 +10,6 @@ #define SIMGRID_MMALLOC_H 1 #include "src/internal_config.h" -#if HAVE_MMALLOC #include /* for NULL */ #include /* for size_t */ @@ -29,6 +28,7 @@ SG_BEGIN_DECL() typedef struct mdesc s_xbt_mheap_t; typedef s_xbt_mheap_t* xbt_mheap_t; +#if HAVE_MMALLOC /* Allocate SIZE bytes of memory (and memset it to 0). */ XBT_PUBLIC void* mmalloc(xbt_mheap_t md, size_t size); @@ -63,7 +63,7 @@ ssize_t mmalloc_get_busy_size(xbt_mheap_t, void* ptr); void* malloc_no_memset(size_t n); +#endif SG_END_DECL() -#endif #endif /* SIMGRID_MMALLOC_H */ diff --git a/src/instr/instr_interface.cpp b/src/instr/instr_interface.cpp index 4b9c0f129e..67cd9306c5 100644 --- a/src/instr/instr_interface.cpp +++ b/src/instr/instr_interface.cpp @@ -4,7 +4,6 @@ * under the terms of the license (GNU LGPL) which comes with this package. */ #include "simgrid/kernel/routing/NetPoint.hpp" -#include "simgrid_config.h" #include "src/instr/instr_private.hpp" #include "src/surf/network_interface.hpp" #include "src/surf/surf_private.hpp" diff --git a/src/instr/instr_paje_events.hpp b/src/instr/instr_paje_events.hpp index db2ff430ea..27ce68dc01 100644 --- a/src/instr/instr_paje_events.hpp +++ b/src/instr/instr_paje_events.hpp @@ -66,8 +66,8 @@ public: class StateEvent : public PajeEvent { EntityValue* value; - std::string filename = "(null)"; #if HAVE_SMPI + std::string filename = "(null)"; int linenumber = -1; #endif TIData* extra_; diff --git a/src/instr/instr_platform.cpp b/src/instr/instr_platform.cpp index 0184c25331..7a6c2b0e57 100644 --- a/src/instr/instr_platform.cpp +++ b/src/instr/instr_platform.cpp @@ -127,9 +127,9 @@ static void recursiveGraphExtraction(simgrid::s4u::NetZone* netzone, container_t return; } XBT_DEBUG("Graph extraction for NetZone = %s", netzone->get_cname()); - if (not netzone->get_children()->empty()) { + if (not netzone->get_children().empty()) { // bottom-up recursion - for (auto const& nz_son : *netzone->get_children()) { + for (auto const& nz_son : netzone->get_children()) { container_t child_container = container->children_.at(nz_son->get_cname()); recursiveGraphExtraction(nz_son, child_container, filter); } @@ -139,7 +139,7 @@ static void recursiveGraphExtraction(simgrid::s4u::NetZone* netzone, container_t std::map* nodes = new std::map; std::map* edges = new std::map; - static_cast(netzone)->get_graph(graph, nodes, edges); + netzone->get_impl()->get_graph(graph, nodes, edges); for (auto elm : *edges) { xbt_edge_t edge = elm.second; linkContainers(simgrid::instr::Container::by_name(static_cast(edge->src->data)), @@ -210,7 +210,7 @@ static void instr_host_on_creation(simgrid::s4u::Host& host) if ((TRACE_categorized() || TRACE_uncategorized() || TRACE_platform()) && (not TRACE_disable_speed())) { simgrid::instr::VariableType* power = container->type_->by_name_or_create("power", ""); power->set_calling_container(container); - power->set_event(0, host.getSpeed()); + power->set_event(0, host.get_speed()); } if (TRACE_uncategorized()) @@ -232,7 +232,8 @@ static void instr_host_on_speed_change(simgrid::s4u::Host& host) ->set_event(surf_get_clock(), host.get_core_count() * host.get_available_speed()); } -static void instr_cpu_action_on_state_change(simgrid::surf::CpuAction* action) +static void instr_cpu_action_on_state_change(simgrid::surf::CpuAction* action, + simgrid::kernel::resource::Action::State /* previous */) { simgrid::surf::Cpu* cpu = static_cast(action->get_variable()->get_constraint(0)->get_id()); TRACE_surf_resource_set_utilization("HOST", "power_used", cpu->get_cname(), action->get_category(), @@ -352,7 +353,7 @@ void instr_define_callbacks() simgrid::s4u::Link::on_creation.connect(instr_link_on_creation); simgrid::s4u::Link::on_bandwidth_change.connect(instr_link_on_bandwidth_change); simgrid::s4u::NetZone::on_seal.connect([](simgrid::s4u::NetZone& /*netzone*/) { currentContainer.pop_back(); }); - simgrid::kernel::routing::NetPoint::onCreation.connect(instr_netpoint_on_creation); + simgrid::kernel::routing::NetPoint::on_creation.connect(instr_netpoint_on_creation); } simgrid::s4u::NetZone::on_creation.connect(instr_netzone_on_creation); @@ -466,15 +467,15 @@ static void recursiveXBTGraphExtraction(xbt_graph_t graph, std::map* edges, sg_netzone_t netzone, container_t container) { - if (not netzone->get_children()->empty()) { + if (not netzone->get_children().empty()) { // bottom-up recursion - for (auto const& netzone_child : *netzone->get_children()) { + for (auto const& netzone_child : netzone->get_children()) { container_t child_container = container->children_.at(netzone_child->get_cname()); recursiveXBTGraphExtraction(graph, nodes, edges, netzone_child, child_container); } } - static_cast(netzone)->get_graph(graph, nodes, edges); + netzone->get_impl()->get_graph(graph, nodes, edges); } xbt_graph_t instr_routing_platform_graph() diff --git a/src/instr/instr_private.hpp b/src/instr/instr_private.hpp index 52c6aaa8f2..4bdfd3ea64 100644 --- a/src/instr/instr_private.hpp +++ b/src/instr/instr_private.hpp @@ -10,7 +10,6 @@ #include "simgrid/instr.h" #include "simgrid/s4u/Actor.hpp" -#include "simgrid_config.h" #include "src/instr/instr_paje_containers.hpp" #include "src/instr/instr_paje_events.hpp" #include "src/instr/instr_paje_types.hpp" @@ -62,12 +61,12 @@ public: // NoOpTI: init, finalize, test, wait, barrier explicit TIData(std::string name) : name_(name){}; - // CPuTI: compute, sleep (+ waitAny and waitAll out of laziness) + // CPuTI: compute, sleep (+ waitAny and waitall out of laziness) explicit TIData(std::string name, double amount) : name_(name), amount_(amount){}; // Pt2PtTI: send, isend, sssend, issend, recv, irecv explicit TIData(std::string name, int endpoint, int size, std::string datatype) : name_(name), endpoint(endpoint), send_size(size), send_type(datatype){}; - // CollTI: bcast, reduce, allReduce, gather, scatter, allGather, allToAll + // CollTI: bcast, reduce, allreduce, gather, scatter, allgather, alltoall explicit TIData(std::string name, int root, double amount, int send_size, int recv_size, std::string send_type, std::string recv_type) : name_(name) @@ -77,7 +76,7 @@ public: , recv_size(recv_size) , send_type(send_type) , recv_type(recv_type){}; - // VarCollTI: gatherV, scatterV, allGatherV, allToAllV (+ reduceScatter out of laziness) + // VarCollTI: gatherv, scatterv, allgatherv, alltoallv (+ reducescatter out of laziness) explicit TIData(std::string name, int root, int send_size, std::vector* sendcounts, int recv_size, std::vector* recvcounts, std::string send_type, std::string recv_type) : TIData(name, root, send_size, std::shared_ptr>(sendcounts), recv_size, @@ -197,6 +196,29 @@ public: } std::string display_size() override { return std::to_string(send_size > 0 ? send_size : recv_size); } }; + +/** + * If we want to wait for a request of asynchronous communication, we need to be able + * to identify this request. We do this by searching for a request identified by (src, dest, tag). + */ +class WaitTIData : public TIData { + int src; + int dest; + int tag; + +public: + explicit WaitTIData(int src, int dest, int tag) : TIData("wait"), src(src), dest(dest), tag(tag){}; + + std::string print() override + { + std::stringstream stream; + stream << getName() << " " << src << " " << dest << " " << tag; + + return stream.str(); + } + + std::string display_size() override { return ""; } +}; } } diff --git a/src/instr/jedule/jedule.cpp b/src/instr/jedule/jedule.cpp index 475b615623..32004590fa 100644 --- a/src/instr/jedule/jedule.cpp +++ b/src/instr/jedule/jedule.cpp @@ -13,36 +13,38 @@ namespace simgrid{ namespace jedule { Jedule::~Jedule() { - delete this->root_container; - for (auto const& evt : this->event_set) + delete this->root_container_; + for (auto const& evt : this->event_set_) delete evt; - this->event_set.clear(); + this->event_set_.clear(); } -void Jedule::addMetaInfo(char *key, char *value) { +void Jedule::add_meta_info(char* key, char* value) +{ xbt_assert(key != nullptr); xbt_assert(value != nullptr); - this->meta_info.insert({key, value}); + this->meta_info_.insert({key, value}); } -void Jedule::writeOutput(FILE *file) { - if (not this->event_set.empty()) { +void Jedule::write_output(FILE* file) +{ + if (not this->event_set_.empty()) { fprintf(file, "\n"); - if (not this->meta_info.empty()) { + if (not this->meta_info_.empty()) { fprintf(file, " \n"); - for (auto const& elm : this->meta_info) + for (auto const& elm : this->meta_info_) fprintf(file, " \n",elm.first,elm.second); fprintf(file, " \n"); } fprintf(file, " \n"); - this->root_container->print(file); + this->root_container_->print(file); fprintf(file, " \n"); fprintf(file, " \n"); - for (auto const& event : this->event_set) + for (auto const& event : this->event_set_) event->print(file); fprintf(file, " \n"); diff --git a/src/instr/jedule/jedule_events.cpp b/src/instr/jedule/jedule_events.cpp index 5789db9e12..b03a59d516 100644 --- a/src/instr/jedule/jedule_events.cpp +++ b/src/instr/jedule/jedule_events.cpp @@ -13,64 +13,65 @@ namespace simgrid{ namespace jedule{ Event::Event(std::string name, double start_time, double end_time, std::string type) - : name(name), start_time(start_time), end_time(end_time), type(type) + : name_(name), start_time_(start_time), end_time_(end_time), type_(type) { - this->resource_subsets = new std::vector(); + this->resource_subsets_ = new std::vector(); } Event::~Event() { - if (not this->resource_subsets->empty()) { - for (auto const& subset : *this->resource_subsets) + if (not this->resource_subsets_->empty()) { + for (auto const& subset : *this->resource_subsets_) delete subset; - delete this->resource_subsets; + delete this->resource_subsets_; } } -void Event::addResources(std::vector *host_selection) +void Event::add_resources(std::vector* host_selection) { - get_resource_selection_by_hosts(this->resource_subsets, host_selection); + get_resource_selection_by_hosts(this->resource_subsets_, host_selection); } -void Event::addCharacteristic(char *characteristic) +void Event::add_characteristic(char* characteristic) { xbt_assert( characteristic != nullptr ); - this->characteristics_list.push_back(characteristic); + this->characteristics_list_.push_back(characteristic); } -void Event::addInfo(char* key, char *value) { +void Event::add_info(char* key, char* value) +{ xbt_assert((key != nullptr) && value != nullptr); - this->info_map.insert({key, value}); + this->info_map_.insert({key, value}); } void Event::print(FILE *jed_file) { fprintf(jed_file, " \n"); - fprintf(jed_file, " \n", this->name.c_str()); - fprintf(jed_file, " \n", this->start_time); - fprintf(jed_file, " \n", this->end_time); - fprintf(jed_file, " \n", this->type.c_str()); + fprintf(jed_file, " \n", this->name_.c_str()); + fprintf(jed_file, " \n", this->start_time_); + fprintf(jed_file, " \n", this->end_time_); + fprintf(jed_file, " \n", this->type_.c_str()); - xbt_assert(not this->resource_subsets->empty()); + xbt_assert(not this->resource_subsets_->empty()); fprintf(jed_file, " \n"); - for (auto const& subset : *this->resource_subsets) { + for (auto const& subset : *this->resource_subsets_) { fprintf(jed_file, "