From: SUTER Frederic Date: Fri, 5 Nov 2021 09:49:56 +0000 (+0100) Subject: move Cpu resource definition where it belongs X-Git-Tag: v3.30~279 X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/commitdiff_plain/c78100114ee98cae862783d942238de2011ac251 move Cpu resource definition where it belongs --- diff --git a/MANIFEST.in b/MANIFEST.in index 2f4a23a3ce..0b79ccca77 100644 --- a/MANIFEST.in +++ b/MANIFEST.in @@ -2263,6 +2263,8 @@ include src/kernel/lmm/maxmin.cpp include src/kernel/lmm/maxmin.hpp include src/kernel/lmm/maxmin_test.cpp include src/kernel/resource/Action.cpp +include src/kernel/resource/CpuImpl.cpp +include src/kernel/resource/CpuImpl.hpp include src/kernel/resource/DiskImpl.cpp include src/kernel/resource/DiskImpl.hpp include src/kernel/resource/Model.cpp @@ -2638,8 +2640,6 @@ include src/surf/SplitDuplexLinkImpl.hpp include src/surf/SplitDuplexLinkImpl_test.cpp include src/surf/cpu_cas01.cpp include src/surf/cpu_cas01.hpp -include src/surf/cpu_interface.cpp -include src/surf/cpu_interface.hpp include src/surf/cpu_ti.cpp include src/surf/cpu_ti.hpp include src/surf/disk_s19.cpp diff --git a/doc/doxygen/inside_extending.doc b/doc/doxygen/inside_extending.doc index fefe0a21ac..8dc029baa2 100644 --- a/doc/doxygen/inside_extending.doc +++ b/doc/doxygen/inside_extending.doc @@ -16,7 +16,7 @@ A model in SimGrid is composed of three classes: Model, Resource and Action Actually there are five kind of models: CpuModel, NetworkModel, WorkstationModel, WorkstationVMModel and StorageModel. For each kind of model, there is an -interface (e.g.: @ref SURF_cpu_interface "cpu_interface.hpp") and some implementations (e.g.: cpu_cas01.hpp, +interface (e.g.: @ref SURF_cpu_interface "CpuImpl.hpp") and some implementations (e.g.: cpu_cas01.hpp, cpu_ti.hpp). The CPU model Cas01, for instance, is initialized by the function diff --git a/src/instr/instr_platform.cpp b/src/instr/instr_platform.cpp index 9e70fa7006..8853454c11 100644 --- a/src/instr/instr_platform.cpp +++ b/src/instr/instr_platform.cpp @@ -14,7 +14,7 @@ #include #include "src/instr/instr_private.hpp" -#include "src/surf/cpu_interface.hpp" +#include "src/kernel/resource/CpuImpl.hpp" #include "src/surf/network_interface.hpp" #include "src/surf/surf_interface.hpp" diff --git a/src/kernel/activity/CommImpl.cpp b/src/kernel/activity/CommImpl.cpp index b2f92e7442..ebb179b291 100644 --- a/src/kernel/activity/CommImpl.cpp +++ b/src/kernel/activity/CommImpl.cpp @@ -11,8 +11,8 @@ #include "src/kernel/activity/CommImpl.hpp" #include "src/kernel/activity/MailboxImpl.hpp" #include "src/kernel/context/Context.hpp" +#include "src/kernel/resource/CpuImpl.hpp" #include "src/mc/mc_replay.hpp" -#include "src/surf/cpu_interface.hpp" #include "src/surf/network_interface.hpp" XBT_LOG_NEW_DEFAULT_SUBCATEGORY(simix_network, simix, "SIMIX network-related synchronization"); diff --git a/src/kernel/activity/ExecImpl.cpp b/src/kernel/activity/ExecImpl.cpp index ca3c8f212e..80d30559c5 100644 --- a/src/kernel/activity/ExecImpl.cpp +++ b/src/kernel/activity/ExecImpl.cpp @@ -11,9 +11,9 @@ #include "src/kernel/activity/ExecImpl.hpp" #include "src/kernel/actor/ActorImpl.hpp" #include "src/kernel/actor/SimcallObserver.hpp" +#include "src/kernel/resource/CpuImpl.hpp" #include "src/mc/mc_replay.hpp" #include "src/surf/HostImpl.hpp" -#include "src/surf/cpu_interface.hpp" XBT_LOG_EXTERNAL_DEFAULT_CATEGORY(simix_process); diff --git a/src/kernel/activity/IoImpl.cpp b/src/kernel/activity/IoImpl.cpp index 4038c62365..5daae909fa 100644 --- a/src/kernel/activity/IoImpl.cpp +++ b/src/kernel/activity/IoImpl.cpp @@ -13,9 +13,9 @@ #include "src/kernel/actor/ActorImpl.hpp" #include "src/kernel/actor/SimcallObserver.hpp" #include "src/kernel/context/Context.hpp" +#include "src/kernel/resource/CpuImpl.hpp" #include "src/kernel/resource/DiskImpl.hpp" #include "src/mc/mc_replay.hpp" -#include "src/surf/cpu_interface.hpp" XBT_LOG_NEW_DEFAULT_SUBCATEGORY(simix_io, simix, "Logging specific to SIMIX (io)"); diff --git a/src/kernel/activity/SleepImpl.cpp b/src/kernel/activity/SleepImpl.cpp index cec6de2d26..2434802a6d 100644 --- a/src/kernel/activity/SleepImpl.cpp +++ b/src/kernel/activity/SleepImpl.cpp @@ -7,8 +7,8 @@ #include "src/kernel/activity/SleepImpl.hpp" #include "src/kernel/actor/ActorImpl.hpp" +#include "src/kernel/resource/CpuImpl.hpp" #include "src/simix/popping_private.hpp" -#include "src/surf/cpu_interface.hpp" XBT_LOG_EXTERNAL_DEFAULT_CATEGORY(simix_process); namespace simgrid { diff --git a/src/kernel/activity/SynchroRaw.cpp b/src/kernel/activity/SynchroRaw.cpp index c01df2b4fc..4f50b7f7fc 100644 --- a/src/kernel/activity/SynchroRaw.cpp +++ b/src/kernel/activity/SynchroRaw.cpp @@ -9,8 +9,8 @@ #include "src/kernel/activity/SynchroRaw.hpp" #include "src/kernel/actor/ActorImpl.hpp" #include "src/kernel/context/Context.hpp" +#include "src/kernel/resource/CpuImpl.hpp" #include "src/simix/popping_private.hpp" -#include "src/surf/cpu_interface.hpp" XBT_LOG_NEW_DEFAULT_SUBCATEGORY(simix_synchro, simix, "SIMIX Synchronization (mutex, semaphores and conditions)"); diff --git a/src/surf/cpu_interface.cpp b/src/kernel/resource/CpuImpl.cpp similarity index 98% rename from src/surf/cpu_interface.cpp rename to src/kernel/resource/CpuImpl.cpp index dcb2411af6..8bc77b8dfc 100644 --- a/src/surf/cpu_interface.cpp +++ b/src/kernel/resource/CpuImpl.cpp @@ -3,7 +3,7 @@ /* 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 "src/surf/cpu_interface.hpp" +#include "src/kernel/resource/CpuImpl.hpp" #include "src/kernel/resource/profile/Profile.hpp" #include "src/surf/cpu_ti.hpp" #include "src/surf/surf_interface.hpp" @@ -51,8 +51,8 @@ void CpuModel::update_actions_state_full(double /*now*/, double delta) CpuImpl::CpuImpl(s4u::Host* host, const std::vector& speed_per_pstate) : Resource_T(host->get_cname()), piface_(host), speed_per_pstate_(speed_per_pstate) { - speed_.scale = 1; - speed_.peak = speed_per_pstate_.front(); + speed_.scale = 1; + speed_.peak = speed_per_pstate_.front(); host->set_cpu(this); } diff --git a/src/surf/cpu_interface.hpp b/src/kernel/resource/CpuImpl.hpp similarity index 96% rename from src/surf/cpu_interface.hpp rename to src/kernel/resource/CpuImpl.hpp index 814966237b..28b1c8772f 100644 --- a/src/surf/cpu_interface.hpp +++ b/src/kernel/resource/CpuImpl.hpp @@ -3,8 +3,8 @@ /* 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 SURF_CPU_INTERFACE_HPP_ -#define SURF_CPU_INTERFACE_HPP_ +#ifndef CPU_IMPL_HPP_ +#define CPU_IMPL_HPP_ #include "simgrid/kernel/resource/Model.hpp" #include "simgrid/s4u/Host.hpp" @@ -13,14 +13,14 @@ #include -/*********** - * Classes * - ***********/ - namespace simgrid { namespace kernel { namespace resource { +/*********** + * Classes * + ***********/ + class CpuAction; /********* @@ -52,7 +52,7 @@ class XBT_PUBLIC CpuImpl : public Resource_T { friend VirtualMachineImpl; // Resets the VCPU s4u::Host* piface_; - int core_count_ = 1; + int core_count_ = 1; unsigned long pstate_ = 0; /*< Current pstate (index in the speed_per_pstate_)*/ std::vector speed_per_pstate_; /*< List of supported CPU capacities (pstate related). Not 'const' because VCPU get modified on migration */ @@ -163,25 +163,25 @@ protected: **/ virtual void reset_vcpu(CpuImpl* that); - Metric speed_ = {1.0, 0, nullptr}; + Metric speed_ = {1.0, 0, nullptr}; }; /********** * Action * **********/ - /** @ingroup SURF_cpu_interface +/** @ingroup SURF_cpu_interface * @brief A CpuAction represents the execution of code on one or several Cpus */ class XBT_PUBLIC CpuAction : public Action { public: + using Action::Action; + /** @brief Signal emitted when the action state changes (ready/running/done, etc) * Signature: `void(CpuAction const& action, simgrid::kernel::resource::Action::State previous)` */ static xbt::signal on_state_change; - using Action::Action; - void set_state(Action::State state) override; void update_remains_lazy(double now) override; @@ -194,4 +194,4 @@ public: } // namespace kernel } // namespace simgrid -#endif /* SURF_CPU_INTERFACE_HPP_ */ +#endif /* CPU_IMPL_HPP_ */ diff --git a/src/kernel/routing/NetZoneImpl.cpp b/src/kernel/routing/NetZoneImpl.cpp index 0b875ed417..ccaeb57e2c 100644 --- a/src/kernel/routing/NetZoneImpl.cpp +++ b/src/kernel/routing/NetZoneImpl.cpp @@ -10,10 +10,10 @@ #include "src/include/simgrid/sg_config.hpp" #include "src/kernel/EngineImpl.hpp" +#include "src/kernel/resource/CpuImpl.hpp" #include "src/kernel/resource/DiskImpl.hpp" #include "src/surf/HostImpl.hpp" #include "src/surf/SplitDuplexLinkImpl.hpp" -#include "src/surf/cpu_interface.hpp" #include "src/surf/network_interface.hpp" XBT_LOG_EXTERNAL_DEFAULT_CATEGORY(surf_route); diff --git a/src/plugins/host_energy.cpp b/src/plugins/host_energy.cpp index fe9a948bcd..18ed351da1 100644 --- a/src/plugins/host_energy.cpp +++ b/src/plugins/host_energy.cpp @@ -11,7 +11,7 @@ #include #include -#include "src/surf/cpu_interface.hpp" +#include "src/kernel/resource/CpuImpl.hpp" #include #include diff --git a/src/surf/HostImpl.hpp b/src/surf/HostImpl.hpp index 16c39c7698..2b1cfeb673 100644 --- a/src/surf/HostImpl.hpp +++ b/src/surf/HostImpl.hpp @@ -7,8 +7,8 @@ #define SURF_HOST_INTERFACE_HPP #include "src/kernel/actor/ActorImpl.hpp" +#include "src/kernel/resource/CpuImpl.hpp" #include "src/kernel/resource/DiskImpl.hpp" -#include "src/surf/cpu_interface.hpp" #include "src/surf/network_interface.hpp" #include diff --git a/src/surf/cpu_cas01.hpp b/src/surf/cpu_cas01.hpp index 3a027b45bf..7001cd06a9 100644 --- a/src/surf/cpu_cas01.hpp +++ b/src/surf/cpu_cas01.hpp @@ -6,7 +6,7 @@ #ifndef SIMGRID_SURF_CPUCAS01_HPP #define SIMGRID_SURF_CPUCAS01_HPP -#include "cpu_interface.hpp" +#include "src/kernel/resource/CpuImpl.hpp" #include "xbt/base.h" /*********** diff --git a/src/surf/cpu_ti.hpp b/src/surf/cpu_ti.hpp index 122122e00f..cd16167353 100644 --- a/src/surf/cpu_ti.hpp +++ b/src/surf/cpu_ti.hpp @@ -6,7 +6,7 @@ #ifndef SURF_MODEL_CPUTI_H_ #define SURF_MODEL_CPUTI_H_ -#include "cpu_interface.hpp" +#include "src/kernel/resource/CpuImpl.hpp" #include "src/kernel/resource/profile/Profile.hpp" #include #include diff --git a/src/surf/xml/surfxml_parseplatf.cpp b/src/surf/xml/surfxml_parseplatf.cpp index 775fa67710..0992af4de7 100644 --- a/src/surf/xml/surfxml_parseplatf.cpp +++ b/src/surf/xml/surfxml_parseplatf.cpp @@ -5,7 +5,7 @@ #include -#include "src/surf/cpu_interface.hpp" +#include "src/kernel/resource/CpuImpl.hpp" #include "src/surf/network_interface.hpp" #include "src/surf/surf_interface.hpp" #include "src/surf/xml/platf.hpp" diff --git a/teshsuite/surf/surf_usage/surf_usage.cpp b/teshsuite/surf/surf_usage/surf_usage.cpp index 57350958c2..9ec4cd6557 100644 --- a/teshsuite/surf/surf_usage/surf_usage.cpp +++ b/teshsuite/surf/surf_usage/surf_usage.cpp @@ -9,7 +9,7 @@ #include "simgrid/kernel/routing/NetZoneImpl.hpp" // full type for NetZoneImpl object #include "simgrid/s4u/Engine.hpp" #include "simgrid/zone.h" -#include "src/surf/cpu_interface.hpp" +#include "src/kernel/resource/CpuImpl.hpp" #include "src/surf/network_interface.hpp" #include "surf/surf.hpp" #include "xbt/config.hpp" diff --git a/teshsuite/surf/surf_usage2/surf_usage2.cpp b/teshsuite/surf/surf_usage2/surf_usage2.cpp index 18bc5b0a12..9634f4f431 100644 --- a/teshsuite/surf/surf_usage2/surf_usage2.cpp +++ b/teshsuite/surf/surf_usage2/surf_usage2.cpp @@ -10,7 +10,7 @@ #include "simgrid/s4u/Engine.hpp" #include "simgrid/zone.h" #include "src/kernel/EngineImpl.hpp" -#include "src/surf/cpu_interface.hpp" +#include "src/kernel/resource/CpuImpl.hpp" #include "src/surf/network_interface.hpp" #include "src/surf/surf_interface.hpp" #include "surf/surf.hpp" diff --git a/tools/cmake/DefinePackages.cmake b/tools/cmake/DefinePackages.cmake index aff655f6fb..15a8cf1e19 100644 --- a/tools/cmake/DefinePackages.cmake +++ b/tools/cmake/DefinePackages.cmake @@ -35,7 +35,6 @@ set(EXTRA_DIST src/smpi/smpi_main.c src/smpi/smpi_replay_main.cpp src/surf/cpu_cas01.hpp - src/surf/cpu_interface.hpp src/surf/cpu_ti.hpp src/surf/network_cm02.hpp src/surf/network_constant.hpp @@ -310,9 +309,11 @@ set(SURF_SRC src/kernel/lmm/maxmin.cpp src/kernel/resource/Action.cpp - src/kernel/resource/Model.cpp + src/kernel/resource/CpuImpl.cpp + src/kernel/resource/CpuImpl.hpp src/kernel/resource/DiskImpl.cpp src/kernel/resource/DiskImpl.hpp + src/kernel/resource/Model.cpp src/kernel/resource/Resource.hpp src/kernel/resource/VirtualMachineImpl.hpp src/kernel/resource/VirtualMachineImpl.cpp @@ -349,7 +350,6 @@ set(SURF_SRC src/kernel/EngineImpl.hpp src/surf/cpu_cas01.cpp - src/surf/cpu_interface.cpp src/surf/cpu_ti.cpp src/surf/disk_s19.cpp src/surf/network_cm02.cpp