A
lgorithmique
N
umérique
D
istribuée
Public GIT Repository
projects
/
simgrid.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
[SMPI] Replay: Introduce and use WaitTestParser
[simgrid.git]
/
src
/
s4u
/
s4u_host.cpp
diff --git
a/src/s4u/s4u_host.cpp
b/src/s4u/s4u_host.cpp
index
61c8305
..
78e9b73
100644
(file)
--- a/
src/s4u/s4u_host.cpp
+++ b/
src/s4u/s4u_host.cpp
@@
-1,25
+1,14
@@
-/* Copyright (c) 2006-201
7
. The SimGrid Team. All rights reserved. */
+/* Copyright (c) 2006-201
8
. 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. */
/* 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 <string>
-#include <functional>
-#include <stdexcept>
-
-#include <map>
-
#include "simgrid/kernel/routing/NetPoint.hpp"
#include "simgrid/s4u/Engine.hpp"
#include "simgrid/kernel/routing/NetPoint.hpp"
#include "simgrid/s4u/Engine.hpp"
-#include "simgrid/s4u/Host.hpp"
-#include "simgrid/s4u/Storage.hpp"
-#include "simgrid/simix.hpp"
-#include "src/msg/msg_private.hpp"
-#include "src/simix/ActorImpl.hpp"
-#include "src/simix/smx_private.hpp"
+#include "src/simix/smx_host_private.hpp"
#include "src/surf/HostImpl.hpp"
#include "src/surf/HostImpl.hpp"
-#include "src/surf/cpu_interface.hpp"
-#include
"xbt/log.h"
+
+#include
<string>
XBT_LOG_EXTERNAL_CATEGORY(surf_route);
XBT_LOG_EXTERNAL_CATEGORY(surf_route);
@@
-103,7
+92,7
@@
void Host::turnOn() {
if (isOff()) {
simgrid::simix::kernelImmediate([this] {
this->extension<simgrid::simix::Host>()->turnOn();
if (isOff()) {
simgrid::simix::kernelImmediate([this] {
this->extension<simgrid::simix::Host>()->turnOn();
- this->pimpl_cpu->turn
O
n();
+ this->pimpl_cpu->turn
_o
n();
onStateChange(*this);
});
}
onStateChange(*this);
});
}
@@
-120,7
+109,7
@@
void Host::turnOff() {
}
bool Host::isOn() {
}
bool Host::isOn() {
- return this->pimpl_cpu->is
O
n();
+ return this->pimpl_cpu->is
_o
n();
}
int Host::getPstatesCount() const
}
int Host::getPstatesCount() const
@@
-154,21
+143,21
@@
void Host::actorList(std::vector<ActorPtr>* whereto)
*/
void Host::routeTo(Host* dest, std::vector<Link*>& links, double* latency)
{
*/
void Host::routeTo(Host* dest, std::vector<Link*>& links, double* latency)
{
- std::vector<
surf
::LinkImpl*> linkImpls;
+ std::vector<
kernel::resource
::LinkImpl*> linkImpls;
this->routeTo(dest, linkImpls, latency);
this->routeTo(dest, linkImpls, latency);
- for (
surf
::LinkImpl* const& l : linkImpls)
+ for (
kernel::resource
::LinkImpl* const& l : linkImpls)
links.push_back(&l->piface_);
}
/** @brief Just like Host::routeTo, but filling an array of link implementations */
links.push_back(&l->piface_);
}
/** @brief Just like Host::routeTo, but filling an array of link implementations */
-void Host::routeTo(Host* dest, std::vector<
surf
::LinkImpl*>& links, double* latency)
+void Host::routeTo(Host* dest, std::vector<
kernel::resource
::LinkImpl*>& links, double* latency)
{
{
- simgrid::kernel::routing::NetZoneImpl::get
GlobalR
oute(pimpl_netpoint, dest->pimpl_netpoint, links, latency);
+ simgrid::kernel::routing::NetZoneImpl::get
_global_r
oute(pimpl_netpoint, dest->pimpl_netpoint, links, latency);
if (XBT_LOG_ISENABLED(surf_route, xbt_log_priority_debug)) {
if (XBT_LOG_ISENABLED(surf_route, xbt_log_priority_debug)) {
- XBT_CDEBUG(surf_route, "Route from '%s' to '%s' (latency: %f):", get
Cname(), dest->getC
name(),
+ XBT_CDEBUG(surf_route, "Route from '%s' to '%s' (latency: %f):", get
_cname(), dest->get_c
name(),
(latency == nullptr ? -1 : *latency));
for (auto const& link : links)
(latency == nullptr ? -1 : *latency));
for (auto const& link : links)
- XBT_CDEBUG(surf_route, "Link %s", link->get
C
name());
+ XBT_CDEBUG(surf_route, "Link %s", link->get
_c
name());
}
}
}
}
@@
-197,6
+186,13
@@
void Host::getProcesses(std::vector<ActorPtr>* list)
}
}
}
}
+/** @brief Returns how many actors have been launched on this host */
+// FIXME: Specify whether the user should expect only non-daemon actors here!
+int Host::get_actor_count()
+{
+ return this->extension<simgrid::simix::Host>()->process_list.size();
+}
+
/** @brief Get the peak processor speed (in flops/s), at the specified pstate */
double Host::getPstateSpeed(int pstate_index)
{
/** @brief Get the peak processor speed (in flops/s), at the specified pstate */
double Host::getPstateSpeed(int pstate_index)
{
@@
-205,7
+201,7
@@
double Host::getPstateSpeed(int pstate_index)
});
}
});
}
-/** @brief Get the peak processor speed (in flops/s), at the current pstate */
+/** @brief Get the peak processor speed (
under full load (=1.0),
in flops/s), at the current pstate */
double Host::getSpeed()
{
return pimpl_cpu->getSpeed(1.0);
double Host::getSpeed()
{
return pimpl_cpu->getSpeed(1.0);
@@
-270,7
+266,7
@@
void Host::execute(double flops)
double Host::getLoad()
{
double Host::getLoad()
{
- return this->pimpl_cpu->get
L
oad();
+ return this->pimpl_cpu->get
_l
oad();
}
} // namespace simgrid
}
} // namespace simgrid