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
Remove unused type definitions.
[simgrid.git]
/
src
/
surf
/
cpu_ti.hpp
diff --git
a/src/surf/cpu_ti.hpp
b/src/surf/cpu_ti.hpp
index
76017eb
..
2b3dff1
100644
(file)
--- a/
src/surf/cpu_ti.hpp
+++ b/
src/surf/cpu_ti.hpp
@@
-1,17
+1,15
@@
-/* Copyright (c) 2013-201
8
. The SimGrid Team. All rights reserved. */
+/* Copyright (c) 2013-201
9
. 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 <boost/intrusive/list.hpp>
-
-#include <xbt/base.h>
+#ifndef SURF_MODEL_CPUTI_H_
+#define SURF_MODEL_CPUTI_H_
+#include "src/kernel/resource/profile/trace_mgr.hpp"
#include "src/surf/cpu_interface.hpp"
#include "src/surf/cpu_interface.hpp"
-#include "src/surf/trace_mgr.hpp"
-/* Epsilon */
-#define EPSILON 0.000000001
+#include <boost/intrusive/list.hpp>
namespace simgrid {
namespace surf {
namespace simgrid {
namespace surf {
@@
-25,12
+23,12
@@
class XBT_PRIVATE CpuTi;
/*********
* Trace *
*********/
/*********
* Trace *
*********/
-class CpuTi
Trac
e {
+class CpuTi
Profil
e {
public:
public:
- explicit CpuTi
Trace(tmgr_trace_t speedTrac
e);
- CpuTi
Trace(const CpuTiTrac
e&) = delete;
- CpuTi
Trace& operator=(const CpuTiTrac
e&) = delete;
- ~CpuTi
Trac
e();
+ explicit CpuTi
Profile(kernel::profile::Profile* profil
e);
+ CpuTi
Profile(const CpuTiProfil
e&) = delete;
+ CpuTi
Profile& operator=(const CpuTiProfil
e&) = delete;
+ ~CpuTi
Profil
e();
double integrate_simple(double a, double b);
double integrate_simple_point(double a);
double integrate_simple(double a, double b);
double integrate_simple_point(double a);
@@
-42,16
+40,15
@@
public:
int binary_search(double* array, double a, int low, int high);
};
int binary_search(double* array, double a, int low, int high);
};
-enum trace_type {
-
- TRACE_FIXED, /*< Trace fixed, no availability file */
- TRACE_DYNAMIC /*< Dynamic, have an availability file */
-};
-
class CpuTiTmgr {
class CpuTiTmgr {
+ enum class Type {
+ FIXED, /*< Trace fixed, no availability file */
+ DYNAMIC /*< Dynamic, have an availability file */
+ };
+
public:
public:
-
CpuTiTmgr(trace_type type, double value) : type_(type
), value_(value){};
- CpuTiTmgr(
tmgr_trace_t speedTrac
e, double value);
+
explicit CpuTiTmgr(double value) : type_(Type::FIXED
), value_(value){};
+ CpuTiTmgr(
kernel::profile::Profile* speed_profil
e, double value);
CpuTiTmgr(const CpuTiTmgr&) = delete;
CpuTiTmgr& operator=(const CpuTiTmgr&) = delete;
~CpuTiTmgr();
CpuTiTmgr(const CpuTiTmgr&) = delete;
CpuTiTmgr& operator=(const CpuTiTmgr&) = delete;
~CpuTiTmgr();
@@
-60,15
+57,16
@@
public:
double solve(double a, double amount);
double get_power_scale(double a);
double solve(double a, double amount);
double get_power_scale(double a);
- trace_type type_;
+private:
+ Type type_;
double value_; /*< Percentage of cpu speed available. Value fixed between 0 and 1 */
/* Dynamic */
double last_time_ = 0.0; /*< Integral interval last point (discrete time) */
double total_ = 0.0; /*< Integral total between 0 and last_pointn */
double value_; /*< Percentage of cpu speed available. Value fixed between 0 and 1 */
/* Dynamic */
double last_time_ = 0.0; /*< Integral interval last point (discrete time) */
double total_ = 0.0; /*< Integral total between 0 and last_pointn */
- CpuTi
Trace *trace_
= nullptr;
-
tmgr_trace_t speed_trac
e_ = nullptr;
+ CpuTi
Profile* profile_
= nullptr;
+
kernel::profile::Profile* speed_profil
e_ = nullptr;
};
/**********
};
/**********
@@
-78,10
+76,12
@@
public:
class XBT_PRIVATE CpuTiAction : public CpuAction {
friend class CpuTi;
public:
class XBT_PRIVATE CpuTiAction : public CpuAction {
friend class CpuTi;
public:
- CpuTiAction(CpuTiModel *model, double cost, bool failed, CpuTi *cpu);
+ CpuTiAction(CpuTi* cpu, double cost);
+ CpuTiAction(const CpuTiAction&) = delete;
+ CpuTiAction& operator=(const CpuTiAction&) = delete;
~CpuTiAction();
~CpuTiAction();
- void set_state(
simgrid::
kernel::resource::Action::State state) override;
+ void set_state(kernel::resource::Action::State state) override;
void cancel() override;
void suspend() override;
void resume() override;
void cancel() override;
void suspend() override;
void resume() override;
@@
-103,23
+103,25
@@
typedef boost::intrusive::list<CpuTiAction, ActionTiListOptions > ActionTiList;
class CpuTi : public Cpu {
public:
CpuTi(CpuTiModel* model, simgrid::s4u::Host* host, std::vector<double>* speed_per_pstate, int core);
class CpuTi : public Cpu {
public:
CpuTi(CpuTiModel* model, simgrid::s4u::Host* host, std::vector<double>* speed_per_pstate, int core);
+ CpuTi(const CpuTi&) = delete;
+ CpuTi& operator&(const CpuTi&) = delete;
~CpuTi() override;
~CpuTi() override;
- void set_speed_
trace(tmgr_trace_t trac
e) override;
+ void set_speed_
profile(kernel::profile::Profile* profil
e) override;
- void apply_event(
tmgr_trace_event_t
event, double value) override;
+ void apply_event(
kernel::profile::Event*
event, double value) override;
void update_actions_finish_time(double now);
void update_remaining_amount(double now);
bool is_used() override;
CpuAction *execution_start(double size) override;
void update_actions_finish_time(double now);
void update_remaining_amount(double now);
bool is_used() override;
CpuAction *execution_start(double size) override;
-
simgrid::kernel::resource::Action* execution_start(double size, int requestedCores
) override
+
kernel::resource::Action* execution_start(double, int
) override
{
THROW_UNIMPLEMENTED;
return nullptr;
}
CpuAction *sleep(double duration) override;
{
THROW_UNIMPLEMENTED;
return nullptr;
}
CpuAction *sleep(double duration) override;
- double get_
available_speed
() override;
+ double get_
speed_ratio
() override;
void set_modified(bool modified);
void set_modified(bool modified);
@@
-128,8
+130,6
@@
public:
double sum_priority_ = 0; /*< the sum of actions' priority that are running on cpu */
double last_update_ = 0; /*< last update of actions' remaining amount done */
double sum_priority_ = 0; /*< the sum of actions' priority that are running on cpu */
double last_update_ = 0; /*< last update of actions' remaining amount done */
- double current_frequency_;
-
boost::intrusive::list_member_hook<> cpu_ti_hook;
};
boost::intrusive::list_member_hook<> cpu_ti_hook;
};
@@
-141,15
+141,20
@@
typedef boost::intrusive::list<CpuTi, CpuTiListOptions> CpuTiList;
*********/
class CpuTiModel : public CpuModel {
public:
*********/
class CpuTiModel : public CpuModel {
public:
- CpuTiModel() : CpuModel(Model::UpdateAlgo::Full){};
+ static void create_pm_vm_models(); // Make both models be TI models
+
+ CpuTiModel();
+ CpuTiModel(const CpuTiModel&) = delete;
+ CpuTiModel& operator=(const CpuTiModel&) = delete;
~CpuTiModel() override;
~CpuTiModel() override;
- Cpu* create
C
pu(simgrid::s4u::Host* host, std::vector<double>* speed_per_pstate, int core) override;
+ Cpu* create
_c
pu(simgrid::s4u::Host* host, std::vector<double>* speed_per_pstate, int core) override;
double next_occuring_event(double now) override;
void update_actions_state(double now, double delta) override;
double next_occuring_event(double now) override;
void update_actions_state(double now, double delta) override;
- kernel::resource::Action::StateSet runningActionSetThatDoesNotNeedBeingChecked_;
CpuTiList modified_cpus_;
};
}
}
CpuTiList modified_cpus_;
};
}
}
+
+#endif /* SURF_MODEL_CPUTI_H_ */