crown  1.0.0
pelib::crown::CrownCompositeAnnealing Class Reference

#include <CrownCompositeAnnealing.hpp>

Inheritance diagram for pelib::crown::CrownCompositeAnnealing:
[legend]

List of all members.

Public Member Functions

 CrownCompositeAnnealing (float init_temperature=default_init_temperature, float cooling_factor=default_cooling_factor, float final_temperature=default_final_temperature, float max_transformations=default_max_transformations, float max_new_states=default_max_new_states, float distance=default_distance, const CrownScheduler *coreScheduler=NULL, const CrownMapping *map=NULL, const CrownScaling *scale=NULL, bool showOutput=false, bool showError=false)
 CrownCompositeAnnealing (const Algebra &param, float init_temperature=default_init_temperature, float cooling_factor=default_cooling_factor, float final_temperature=default_final_temperature, float max_transformations=default_max_transformations, float max_new_states=default_max_new_states, float distance=default_distance, const CrownScheduler *coreScheduler=NULL, const CrownMapping *map=NULL, const CrownScaling *scale=NULL, bool showOutput=false, bool showError=false)
 CrownCompositeAnnealing (const Taskgraph &tg, const Platform &pt, const Algebra &param, float init_temperature=default_init_temperature, float cooling_factor=default_cooling_factor, float final_temperature=default_final_temperature, float max_transformations=default_max_transformations, float max_new_states=default_max_new_states, float distance=default_distance, const CrownScheduler *coreScheduler=NULL, const CrownMapping *map=NULL, const CrownScaling *scale=NULL, bool showOutput=false, bool showError=false)
 CrownCompositeAnnealing (const CrownCompositeAnnealing &)
Schedule schedule (const Taskgraph &tg, const Platform &pt, std::map< const string, double > &) const
Schedule schedule (const Taskgraph &tg, const Platform &pt, const Algebra &param, std::map< const string, double > &) const
Algebra solve (const Algebra &tg, const Algebra &pt, const pelib::Algebra &param, std::map< const std::basic_string< char >, double > &statistics) const
virtual float complexity (const Algebra &problem) const
virtual float complexity (const Taskgraph &, const Platform &, const Algebra &) const
std::string getShortDescription () const
virtual CrownCompositeAnnealingclone () const

Static Public Member Functions

static float energy (const Algebra &rec)

Static Public Attributes

static const float default_init_temperature = 8
static const float default_cooling_factor = 0.6
static const float default_final_temperature = 0.9
static const float default_max_transformations = 2
static const float default_max_new_states = 2
static const float default_distance = 0.5

Protected Member Functions

Algebra neighbor (const Algebra &solution, float tasks=1, float cores=1) const

Protected Attributes

float init_temperature
float cooling_factor
float final_temperature
float max_transformations
float max_new_states
float distance
const CrownMappingmapping
const CrownScalingscaling

Detailed Description

Definition at line 31 of file CrownCompositeAnnealing.hpp.


Constructor & Destructor Documentation

CrownCompositeAnnealing::CrownCompositeAnnealing ( float  init_temperature = default_init_temperature,
float  cooling_factor = default_cooling_factor,
float  final_temperature = default_final_temperature,
float  max_transformations = default_max_transformations,
float  max_new_states = default_max_new_states,
float  distance = default_distance,
const CrownScheduler coreScheduler = NULL,
const CrownMapping map = NULL,
const CrownScaling scale = NULL,
bool  showOutput = false,
bool  showError = false 
)

Definition at line 434 of file CrownCompositeAnnealing.cpp.

CrownCompositeAnnealing::CrownCompositeAnnealing ( const Algebra &  param,
float  init_temperature = default_init_temperature,
float  cooling_factor = default_cooling_factor,
float  final_temperature = default_final_temperature,
float  max_transformations = default_max_transformations,
float  max_new_states = default_max_new_states,
float  distance = default_distance,
const CrownScheduler coreScheduler = NULL,
const CrownMapping map = NULL,
const CrownScaling scale = NULL,
bool  showOutput = false,
bool  showError = false 
)

Definition at line 445 of file CrownCompositeAnnealing.cpp.

CrownCompositeAnnealing::CrownCompositeAnnealing ( const Taskgraph &  tg,
const Platform &  pt,
const Algebra &  param,
float  init_temperature = default_init_temperature,
float  cooling_factor = default_cooling_factor,
float  final_temperature = default_final_temperature,
float  max_transformations = default_max_transformations,
float  max_new_states = default_max_new_states,
float  distance = default_distance,
const CrownScheduler coreScheduler = NULL,
const CrownMapping map = NULL,
const CrownScaling scale = NULL,
bool  showOutput = false,
bool  showError = false 
)

Definition at line 456 of file CrownCompositeAnnealing.cpp.


Member Function Documentation

float CrownCompositeAnnealing::complexity ( const Algebra &  problem) const [virtual]

Reimplemented from pelib::crown::CrownScheduler.

Definition at line 479 of file CrownCompositeAnnealing.cpp.

float CrownCompositeAnnealing::complexity ( const Taskgraph &  ,
const Platform &  ,
const Algebra &   
) const [virtual]

Reimplemented from pelib::crown::CrownScheduler.

Definition at line 486 of file CrownCompositeAnnealing.cpp.

float CrownCompositeAnnealing::energy ( const Algebra &  rec) [static]

Definition at line 185 of file CrownCompositeAnnealing.cpp.

std::string CrownCompositeAnnealing::getShortDescription ( ) const [virtual]

Reimplemented from pelib::crown::CrownComposite.

Definition at line 555 of file CrownCompositeAnnealing.cpp.

Algebra CrownCompositeAnnealing::neighbor ( const Algebra &  solution,
float  tasks = 1,
float  cores = 1 
) const [protected]

Definition at line 55 of file CrownCompositeAnnealing.cpp.

Schedule CrownCompositeAnnealing::schedule ( const Taskgraph &  tg,
const Platform &  pt,
std::map< const string, double > &  stats 
) const [virtual]

Implements pelib::crown::CrownScheduler.

Definition at line 500 of file CrownCompositeAnnealing.cpp.

Schedule CrownCompositeAnnealing::schedule ( const Taskgraph &  tg,
const Platform &  pt,
const Algebra &  param,
std::map< const string, double > &  stats 
) const [virtual]

Implements pelib::crown::CrownScheduler.

Definition at line 549 of file CrownCompositeAnnealing.cpp.

Algebra CrownCompositeAnnealing::solve ( const Algebra &  tg,
const Algebra &  pt,
const pelib::Algebra &  param,
std::map< const std::basic_string< char >, double > &  statistics 
) const [virtual]

Implements pelib::crown::CrownScheduler.

Definition at line 281 of file CrownCompositeAnnealing.cpp.


Member Data Documentation

Definition at line 48 of file CrownCompositeAnnealing.hpp.

const float CrownCompositeAnnealing::default_distance = 0.5 [static]

Definition at line 52 of file CrownCompositeAnnealing.hpp.

Definition at line 49 of file CrownCompositeAnnealing.hpp.

Definition at line 47 of file CrownCompositeAnnealing.hpp.

Definition at line 51 of file CrownCompositeAnnealing.hpp.

Definition at line 50 of file CrownCompositeAnnealing.hpp.


The documentation for this class was generated from the following files: