X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/f5284b2bb0f9897ef61de8762907f274c47c4c69..40616078da72e823931c1fb884949054699ec39d:/src/s4u/s4u_host.cpp diff --git a/src/s4u/s4u_host.cpp b/src/s4u/s4u_host.cpp index d821972504..e3c363563c 100644 --- a/src/s4u/s4u_host.cpp +++ b/src/s4u/s4u_host.cpp @@ -1,5 +1,4 @@ -/* Copyright (c) 2006-2014. The SimGrid Team. - * All rights reserved. */ +/* Copyright (c) 2006-2017. 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. */ @@ -195,22 +194,15 @@ void Host::setProperty(const char*key, const char *value){ } /** Get the processes attached to the host */ -xbt_swag_t Host::processes() +void Host::processes(std::vector* list) { - return simgrid::simix::kernelImmediate([this] { - return this->extension()->process_list; - }); -} - -/** Get the peak power of a host */ -double Host::getPstateSpeedCurrent() -{ - return simgrid::simix::kernelImmediate([this] { - return this->pimpl_cpu->getPstateSpeedCurrent(); - }); + smx_actor_t actor = NULL; + xbt_swag_foreach(actor, this->extension()->process_list) { + list->push_back(actor->iface()); + } } -/** Get one power peak (in flops/s) of a host at a given pstate */ +/** @brief Get the peak processor speed (in flops/s), at the specified pstate */ double Host::getPstateSpeed(int pstate_index) { return simgrid::simix::kernelImmediate([this, pstate_index] { @@ -218,10 +210,11 @@ double Host::getPstateSpeed(int pstate_index) }); } -/** @brief Get the speed of the cpu associated to a host */ +/** @brief Get the peak processor speed (in flops/s), at the current pstate */ double Host::speed() { return pimpl_cpu->getSpeed(1.0); } + /** @brief Returns the number of core of the processor. */ int Host::coreCount() { return pimpl_cpu->coreCount(); @@ -257,10 +250,10 @@ xbt_dict_t Host::mountedStoragesAsDict() * \brief Returns the list of storages attached to an host. * \return a dict containing all storages attached to the host */ -xbt_dynar_t Host::attachedStorages() +void Host::attachedStorages(std::vector* storages) { - return simgrid::simix::kernelImmediate([this] { - return this->pimpl_->getAttachedStorageList(); + simgrid::simix::kernelImmediate([this, storages] { + this->pimpl_->getAttachedStorageList(storages); }); }