From: Takahiro Hirofuchi Date: Wed, 4 Jun 2014 14:22:52 +0000 (+0200) Subject: Merge branch 'master' of scm.gforge.inria.fr:/gitroot/simgrid/simgrid X-Git-Tag: v3_12~1005^2~7 X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/commitdiff_plain/41f8a753a029e349539da446fc3e63fda2789f1d?hp=750f41e27a732caccffe6b6fd1300a5e2237ce52 Merge branch 'master' of scm.gforge.inria.fr:/gitroot/simgrid/simgrid --- diff --git a/buildtools/Cmake/AddTests.cmake b/buildtools/Cmake/AddTests.cmake index 702cd7b7f5..7c0f94edb6 100644 --- a/buildtools/Cmake/AddTests.cmake +++ b/buildtools/Cmake/AddTests.cmake @@ -26,7 +26,7 @@ IF(WIN32) SET(TESH_COMMAND perl.exe ${CMAKE_BINARY_DIR}/bin/tesh) SET(TESH_OPTION $TESH_OPTION --timeout 50) ELSE() -SET(TESH_COMMAND ${CMAKE_BINARY_DIR}/bin/tesh) +SET(TESH_COMMAND perl ${CMAKE_BINARY_DIR}/bin/tesh) ENDIF() #some tests may take forever on non futexes systems, using busy_wait with n cores < n workers diff --git a/doc/doxygen/module-surf.doc b/doc/doxygen/module-surf.doc index e4aed28d19..d7e025fcec 100644 --- a/doc/doxygen/module-surf.doc +++ b/doc/doxygen/module-surf.doc @@ -23,7 +23,7 @@ \ingroup SURF_API \brief Functions for creating the environment and launching the simulation - This section describes the functions for initialising SURF, performing + This section describes the functions for initializing SURF, performing the simulation and exiting SURF. */ @@ -31,14 +31,14 @@ \ingroup SURF_API \brief How to build a new API on top of SURF - SURF provides the functionnalities to simulate the platform. There are two main datatypes in SURF: + SURF provides the functionalities to simulate the platform. There are two main data types in SURF: the actions and the resources. Several types of resources exist: - the workstation resource, - the network resource, - the CPU resource, - the timer resource. - The implentation of these resources depends on the platform model you choose. There are several + The implementation of these resources depends on the platform model you choose. There are several platform models. You can select your model by calling surf_workstation_resource_init_CLM03() or surf_workstation_resource_init_KCCFLN05(). See the documentation of these functions to have more details about the models. Remember that the model KCCFLN05 is an implementation of both the @@ -77,7 +77,7 @@ Have a look at the implementation of \ref MSG_API "MSG" and \ref SD_API "Simdag" to see how these module interact with SURF. But if you want to create a new API on top of SURF, - we strongly recommand you to contact us before anyway. + we strongly recommend you to contact us before anyway. */ diff --git a/src/surf/network_constant.cpp b/src/surf/network_constant.cpp index b3cd6f9c8a..1f17a2c0f3 100644 --- a/src/surf/network_constant.cpp +++ b/src/surf/network_constant.cpp @@ -37,12 +37,8 @@ double NetworkConstantModel::shareResources(double /*now*/) for(ActionList::iterator it(actionSet->begin()), itend(actionSet->end()) ; it != itend ; ++it) { action = static_cast(&*it); - if (action->m_latency > 0) { - if (min < 0) - min = action->m_latency; - else if (action->m_latency < min) - min = action->m_latency; - } + if (action->m_latency > 0 && (min < 0 || action->m_latency < min)) + min = action->m_latency; } return min; diff --git a/src/surf/network_interface.hpp b/src/surf/network_interface.hpp index 46cd1a4b98..3c20de2209 100644 --- a/src/surf/network_interface.hpp +++ b/src/surf/network_interface.hpp @@ -106,11 +106,11 @@ public: * * @param name The name of the NetworkLink * @param bw_initial The initial bandwidth of the NetworkLink in bytes per second - * @param bw_trace The trace associated to the NetworkLink bandwidth [TODO] + * @param bw_trace The trace associated to the NetworkLink bandwidth * @param lat_initial The initial latency of the NetworkLink in seconds - * @param lat_trace The trace associated to the NetworkLink latency [TODO] + * @param lat_trace The trace associated to the NetworkLink latency * @param state_initial The initial NetworkLink (state)[e_surf_resource_state_t] - * @param state_trace The trace associated to the NetworkLink (state)[e_surf_resource_state_t] [TODO] + * @param state_trace The trace associated to the NetworkLink (state)[e_surf_resource_state_t] * @param policy The sharing policy of the NetworkLink * @param properties Dictionary of properties associated to this Resource * @return The created NetworkLink @@ -128,13 +128,15 @@ public: virtual void gapAppend(double /*size*/, const NetworkLinkPtr /*link*/, NetworkActionPtr /*action*/) {}; /** - * @brief Create a communication between two [TODO] - * @details [TODO] + * @brief Create a communication between two workstations. + * @details It makes calls to the routing part, and execute the communication + * between the two end points. * - * @param src The source [TODO] - * @param dst The destination [TODO] + * @param src The source of the communication + * @param dst The destination of the communication * @param size The size of the communication in bytes - * @param rate The + * @param rate Allows to limit the transfer rate. Negative value means + * unlimited. * @return The action representing the communication */ virtual ActionPtr communicate(RoutingEdgePtr src, RoutingEdgePtr dst, @@ -148,31 +150,35 @@ public: void (*f_networkSolve)(lmm_system_t); /** - * @brief [brief description] - * @details [long description] + * @brief Gets the right multiplicative factor for the latency. + * @details According to the model, the effective latency when sending + * a message might be different from the theoretical latency in function + * of its size. In order to account for this, this function get this factor. * - * @param size [description] - * @return [description] + * @param size The size of the message. + * @return The latency factor. */ virtual double latencyFactor(double size); /** - * @brief [brief description] - * @details [long description] + * @brief Gets the right multiplicative factor for the bandwidth. + * @details According to the model, the effective bandwidth when sending + * a message might be different from the theoretical bandwidth in function + * of its size. In order to account for this, this function get this factor. * - * @param size [description] - * @return [description] + * @param size The size of the message. + * @return The bandwidth factor. */ virtual double bandwidthFactor(double size); /** - * @brief [brief description] - * @details [long description] - * - * @param rate [description] - * @param bound [description] - * @param size [description] - * @return [description] + * @brief Gets definitive bandwidth. + * @details It gives the minimum bandwidth between the one that would + * occur if no limitation was enforced, and the maximum wanted bandwidth + * @param rate The desired maximum bandwidth. + * @param bound The bandwidth with only the network taken into account. + * @param size The size of the message. + * @return The new bandwidth. */ virtual double bandwidthConstraint(double rate, double bound, double size); bool m_haveGap; diff --git a/tools/tesh/CMakeLists.txt b/tools/tesh/CMakeLists.txt index 5688054e22..89e50a9e5e 100644 --- a/tools/tesh/CMakeLists.txt +++ b/tools/tesh/CMakeLists.txt @@ -1,6 +1,6 @@ cmake_minimum_required(VERSION 2.6) -if(WIN32) +if(1) # add_custom_target(tesh ALL # DEPENDS ${CMAKE_HOME_DIRECTORY}/buildtools/Cmake/Scripts/tesh.pl # COMMENT "Install ${CMAKE_HOME_DIRECTORY}/buildtools/Cmake/Scripts/tesh.pl" @@ -9,7 +9,7 @@ if(WIN32) configure_file("${CMAKE_HOME_DIRECTORY}/buildtools/Cmake/Scripts/tesh.pl" "${CMAKE_BINARY_DIR}/bin/tesh" @ONLY IMMEDIATE) - file(COPY ${CMAKE_HOME_DIRECTORY}/buildtools/Cmake/Scripts/Diff.pm + file(COPY ${CMAKE_HOME_DIRECTORY}/buildtools/Cmake/Scripts/Diff.pm DESTINATION ${CMAKE_BINARY_DIR}/bin FILE_PERMISSIONS OWNER_EXECUTE OWNER_WRITE OWNER_READ GROUP_EXECUTE GROUP_READ)