X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/bbe6c726ee543b902eed02a60cd49fb3f6e83462..6cb7d1fc585d47d6dbad8c288e8f275448f8025c:/src/surf/ptask_L07.hpp diff --git a/src/surf/ptask_L07.hpp b/src/surf/ptask_L07.hpp index c9faa7538d..4ae5bb8dd8 100644 --- a/src/surf/ptask_L07.hpp +++ b/src/surf/ptask_L07.hpp @@ -1,15 +1,12 @@ -/* Copyright (c) 2013-2015. The SimGrid Team. +/* Copyright (c) 2013-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. */ #include - #include - #include - #include "src/surf/HostImpl.hpp" #ifndef HOST_L07_HPP_ @@ -42,40 +39,31 @@ public: HostL07Model(); ~HostL07Model(); - double next_occuring_event(double now) override; + double nextOccuringEvent(double now) override; void updateActionsState(double now, double delta) override; Action *executeParallelTask(int host_nb, sg_host_t *host_list, - double *flops_amount, double *bytes_amount, - double rate) override; + double *flops_amount, double *bytes_amount, double rate) override; }; class CpuL07Model : public CpuModel { public: - CpuL07Model(HostL07Model *hmodel,lmm_system_t sys); + CpuL07Model(HostL07Model* hmodel, lmm_system_t sys); ~CpuL07Model(); - Cpu *createCpu(simgrid::s4u::Host *host, xbt_dynar_t speedPeakList, - tmgr_trace_t speedTrace, int core, - tmgr_trace_t state_trace) override; - HostL07Model *p_hostModel; + Cpu *createCpu(simgrid::s4u::Host *host, std::vector *speedPerPstate, int core) override; + HostL07Model *hostModel_; }; class NetworkL07Model : public NetworkModel { public: - NetworkL07Model(HostL07Model *hmodel, lmm_system_t sys); + NetworkL07Model(HostL07Model* hmodel, lmm_system_t sys); ~NetworkL07Model(); - Link* createLink(const char *name, - double bw_initial, - tmgr_trace_t bw_trace, - double lat_initial, - tmgr_trace_t lat_trace, - e_surf_link_sharing_policy_t policy, - xbt_dict_t properties) override; - - Action *communicate(NetCard *src, NetCard *dst, double size, double rate) override; - bool next_occuring_event_isIdempotent() override {return true;} - - HostL07Model *p_hostModel; + LinkImpl* createLink(const std::string& name, double bandwidth, double latency, + e_surf_link_sharing_policy_t policy) override; + + Action* communicate(s4u::Host* src, s4u::Host* dst, double size, double rate) override; + + HostL07Model *hostModel_; }; /************ @@ -84,28 +72,26 @@ public: class CpuL07 : public Cpu { public: - CpuL07(CpuL07Model *model, simgrid::s4u::Host *host, xbt_dynar_t speedPeakList, - tmgr_trace_t power_trace, int core, tmgr_trace_t state_trace); - ~CpuL07(); + CpuL07(CpuL07Model *model, simgrid::s4u::Host *host, std::vector * speedPerPstate, int core); + ~CpuL07() override; bool isUsed() override; - void apply_event(tmgr_trace_iterator_t event, double value) override; - Action *execution_start(double size) override; - Action *sleep(double duration) override; + void apply_event(tmgr_trace_event_t event, double value) override; + Action* execution_start(double size) override; + Action* sleep(double duration) override; + protected: void onSpeedChange() override; }; -class LinkL07 : public Link { +class LinkL07 : public LinkImpl { public: - LinkL07(NetworkL07Model *model, const char* name, xbt_dict_t props, - double bw_initial, tmgr_trace_t bw_trace, - double lat_initial, tmgr_trace_t lat_trace, - e_surf_link_sharing_policy_t policy); - ~LinkL07(){ }; + LinkL07(NetworkL07Model* model, const std::string& name, double bandwidth, double latency, + e_surf_link_sharing_policy_t policy); + ~LinkL07() override; bool isUsed() override; - void apply_event(tmgr_trace_iterator_t event, double value) override; - void updateBandwidth(double value) override; - void updateLatency(double value) override; + void apply_event(tmgr_trace_event_t event, double value) override; + void setBandwidth(double value) override; + void setLatency(double value) override; }; /********** @@ -114,28 +100,21 @@ public: class L07Action : public CpuAction { friend Action *CpuL07::execution_start(double size); friend Action *CpuL07::sleep(double duration); - friend Action *HostL07Model::executeParallelTask(int host_nb, - sg_host_t*host_list, - double *flops_amount, - double *bytes_amount, - double rate); + friend Action *HostL07Model::executeParallelTask(int host_nb, sg_host_t*host_list, + double *flops_amount, double *bytes_amount, double rate); public: - L07Action(Model *model, int host_nb, - sg_host_t*host_list, - double *flops_amount, - double *bytes_amount, - double rate); + L07Action(Model *model, int host_nb, sg_host_t *host_list, double *flops_amount, double *bytes_amount, double rate); ~L07Action(); void updateBound(); int unref() override; - std::vector * p_netcardList = new std::vector(); - double *p_computationAmount; - double *p_communicationAmount; - double m_latency; - double m_rate; + std::vector* hostList_ = new std::vector(); + double *computationAmount_; + double *communicationAmount_; + double latency_; + double rate_; }; }