Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
SMPI network calibration: tutorial
authorBruno Donassolo <bruno.donassolo@inria.fr>
Wed, 10 Nov 2021 14:19:49 +0000 (15:19 +0100)
committerBruno Donassolo <bruno.donassolo@inria.fr>
Mon, 6 Dec 2021 19:26:54 +0000 (20:26 +0100)
commit1ba3b199ce47dca5644315bf6009a795d3816ffd
tree0eead05e24f812302dca226a86af24dd3175858c
parentcdc88d00bfd00a5c819f01f97161dafbecf571d5
SMPI network calibration: tutorial

Presents how to do a proper SMPI calibration using SimGrid.
Extract models for communications from real measures of dahu cluster.
The models are created automatically using pycewise and ckmeans/dhist.

Implemented support for dynamic cost in SMPI operations.

Main chainges:
* New tutorial: includes a dockerfile and jupyter notebook explaining
how to do the SMPI calibration
* SMPI dynamic costs: added API to allow user to add a callback to set
dynamic costs for MPI_Send, MPI_Isend and MPI_Recv operations.
  - ortogonal with other costs configs, e.g. smpi/os, smpi/or.
* New example: examples/smpi/comm_dynamic_costs
44 files changed:
ChangeLog
MANIFEST.in
docs/source/Platform_howtos.rst
docs/source/tuto_network_calibration/CMakeLists.txt [new file with mode: 0644]
docs/source/tuto_network_calibration/Dockerfile [new file with mode: 0644]
docs/source/tuto_network_calibration/Utils.cpp [new file with mode: 0644]
docs/source/tuto_network_calibration/Utils.hpp [new file with mode: 0644]
docs/source/tuto_network_calibration/clustering_ckmeans.ipynb [new file with mode: 0644]
docs/source/tuto_network_calibration/clustering_dhist.ipynb [new file with mode: 0644]
docs/source/tuto_network_calibration/dahu_platform_ckmeans.cpp [new file with mode: 0644]
docs/source/tuto_network_calibration/dahu_platform_dhist.cpp [new file with mode: 0644]
docs/source/tuto_network_calibration/fig/pingpong_real.drawio [new file with mode: 0644]
docs/source/tuto_network_calibration/fig/pingpong_real.png [new file with mode: 0644]
docs/source/tuto_network_calibration/fig/pingpong_simgrid.drawio [new file with mode: 0644]
docs/source/tuto_network_calibration/fig/pingpong_simgrid.png [new file with mode: 0644]
docs/source/tuto_network_calibration/isend_ckmeans.json [new file with mode: 0644]
docs/source/tuto_network_calibration/isend_dhist.json [new file with mode: 0644]
docs/source/tuto_network_calibration/network_calibration_tutorial.ipynb [new file with mode: 0644]
docs/source/tuto_network_calibration/network_calibration_tutorial.rst [new file with mode: 0644]
docs/source/tuto_network_calibration/pingpong_ckmeans.json [new file with mode: 0644]
docs/source/tuto_network_calibration/pingpong_dhist.json [new file with mode: 0644]
docs/source/tuto_network_calibration/plot_ckmeans_PingPong.png [new file with mode: 0644]
docs/source/tuto_network_calibration/plot_dhist_PingPong.png [new file with mode: 0644]
docs/source/tuto_network_calibration/plot_op_average.png [new file with mode: 0644]
docs/source/tuto_network_calibration/plot_op_raw.png [new file with mode: 0644]
docs/source/tuto_network_calibration/plot_op_segmented.png [new file with mode: 0644]
docs/source/tuto_network_calibration/plot_op_simgrid_ckmeans.png [new file with mode: 0644]
docs/source/tuto_network_calibration/plot_op_simgrid_dhist.png [new file with mode: 0644]
docs/source/tuto_network_calibration/recv_ckmeans.json [new file with mode: 0644]
docs/source/tuto_network_calibration/recv_dhist.json [new file with mode: 0644]
docs/source/tuto_network_calibration/send_ckmeans.json [new file with mode: 0644]
docs/source/tuto_network_calibration/send_dhist.json [new file with mode: 0644]
examples/smpi/comm_dynamic_costs/CMakeLists.txt [new file with mode: 0644]
examples/smpi/comm_dynamic_costs/comm-dynamic-cost.cpp [new file with mode: 0644]
examples/smpi/comm_dynamic_costs/comm-dynamic-cost.tesh [new file with mode: 0644]
examples/smpi/comm_dynamic_costs/hostfile [new file with mode: 0644]
include/smpi/smpi.h
src/smpi/include/private.hpp
src/smpi/include/smpi_host.hpp
src/smpi/include/smpi_request.hpp
src/smpi/internals/smpi_global.cpp
src/smpi/internals/smpi_host.cpp
src/smpi/mpi/smpi_request.cpp
tools/cmake/DefinePackages.cmake