PandA-2024.02
|
superclass include More...
#include <synthesis_evaluation.hpp>
Public Member Functions | |
SynthesisEvaluation (const ParameterConstRef Param, const HLS_managerRef hls_mgr, const DesignFlowManagerConstRef design_flow_manager) | |
Constructor of the class. More... | |
~SynthesisEvaluation () override | |
Destructor of the class. More... | |
DesignFlowStep_Status | Exec () override |
Execute the step. More... | |
Public Member Functions inherited from EvaluationBaseStep | |
EvaluationBaseStep (const ParameterConstRef parameters, const HLS_managerRef HLSMgr, const DesignFlowManagerConstRef design_flow_manager, const HLSFlowStep_Type hls_flow_step_type) | |
Constructor. More... | |
~EvaluationBaseStep () override | |
Destructor. More... | |
bool | HasToBeExecuted () const override |
Check if this step has actually to be executed. More... | |
const std::vector< double > & | GetEvaluations () const |
Returns the results of the evaluation. More... | |
Public Member Functions inherited from HLS_step | |
HLS_step (const ParameterConstRef _parameters, const HLS_managerRef HLSMgr, const DesignFlowManagerConstRef design_flow_manager, const HLSFlowStep_Type hls_flow_step_type, const HLSFlowStepSpecializationConstRef hls_flow_step_specialization=HLSFlowStepSpecializationConstRef()) | |
Constructor. More... | |
~HLS_step () override | |
Destructor. More... | |
std::string | GetSignature () const override |
Return a unified identifier of this design step. More... | |
std::string | GetName () const override |
Return the name of this design step. More... | |
virtual std::string | GetKindText () const |
Return the name of the type of this frontend flow step. More... | |
DesignFlowStepFactoryConstRef | CGetDesignFlowStepFactory () const final |
Return the factory to create this type of steps. More... | |
void | ComputeRelationships (DesignFlowStepSet &design_flow_step_set, const DesignFlowStep::RelationshipType relationship_type) override |
Compute the relationships of a step with other steps. More... | |
Public Member Functions inherited from DesignFlowStep | |
DesignFlowStep (const DesignFlowManagerConstRef design_flow_manager, const ParameterConstRef parameters) | |
Constructor. More... | |
virtual | ~DesignFlowStep () |
Destructor. More... | |
virtual void | Initialize () |
Initialize the step (i.e., like a constructor, but executed just before exec. More... | |
DesignFlowStep_Status | GetStatus () const |
Return the status of this design step. More... | |
virtual void | WriteDot (std::ostream &out) const |
Write the label for a dot graph. More... | |
bool | IsComposed () const |
Returns if this step is composed. More... | |
int | CGetDebugLevel () const |
Return the debug level of the step. More... | |
virtual void | PrintInitialIR () const |
Dump the initial intermediate representation. More... | |
virtual void | PrintFinalIR () const |
Dump the final intermediate representation. More... | |
Protected Member Functions | |
const CustomUnorderedSet< std::tuple< HLSFlowStep_Type, HLSFlowStepSpecializationConstRef, HLSFlowStep_Relationship > > | ComputeHLSRelationships (const DesignFlowStep::RelationshipType relationship_type) const override |
Return the set of analyses in relationship with this design step. More... | |
Additional Inherited Members | |
Public Types inherited from DesignFlowStep | |
enum | RelationshipType { DEPENDENCE_RELATIONSHIP, INVALIDATION_RELATIONSHIP, PRECEDENCE_RELATIONSHIP } |
The relationship type. More... | |
Static Public Member Functions inherited from HLS_step | |
static std::string | EnumToName (const HLSFlowStep_Type hls_flow_step_type) |
Given a HLS flow step type, return the name of the type. More... | |
static const std::string | ComputeSignature (const HLSFlowStep_Type hls_flow_step_type, const HLSFlowStepSpecializationConstRef hls_flow_step_specialization) |
Compute the signature of a hls flow step. More... | |
Protected Attributes inherited from EvaluationBaseStep | |
std::vector< DesignFlowStepRef > | cost_functions |
List of steps performing evaluations. More... | |
std::vector< HLSFlowStep_Type > | cost_function_list |
List of objectives that have to be evaluated. More... | |
std::vector< double > | evaluations |
store the result of the evaluation More... | |
Protected Attributes inherited from HLS_step | |
const HLS_managerRef | HLSMgr |
information about all the HLS synthesis More... | |
const HLSFlowStep_Type | hls_flow_step_type |
The type of this step. More... | |
const HLSFlowStepSpecializationConstRef | hls_flow_step_specialization |
The information about specialization. More... | |
Protected Attributes inherited from DesignFlowStep | |
bool | composed |
True if this step represents a composition of design flow steps (e.g., a flow); must be set by specialized constructors. More... | |
const Wrefcount< const DesignFlowManager > | design_flow_manager |
The design flow manager. More... | |
const ParameterConstRef | parameters |
Set of input parameters. More... | |
int | debug_level |
The debug level. More... | |
const int | output_level |
The output level. More... | |
Static Protected Attributes inherited from HLS_step | |
static CustomUnorderedMap< std::string, HLSFlowStep_Type > | command_line_name_to_enum |
Map hls step name to enum. More... | |
superclass include
utility include
Class performing the actual simulation
utility include
Class performing the actual logic synthesis
Definition at line 56 of file synthesis_evaluation.hpp.
SynthesisEvaluation::SynthesisEvaluation | ( | const ParameterConstRef | Param, |
const HLS_managerRef | hls_mgr, | ||
const DesignFlowManagerConstRef | design_flow_manager | ||
) |
Constructor of the class.
Definition at line 57 of file synthesis_evaluation.cpp.
References ~SynthesisEvaluation().
|
overridedefault |
Destructor of the class.
Referenced by SynthesisEvaluation().
|
overrideprotectedvirtual |
Return the set of analyses in relationship with this design step.
relationship_type | is the type of relationship to be considered |
Reimplemented from HLS_step.
Definition at line 66 of file synthesis_evaluation.cpp.
References DesignFlowStep::DEPENDENCE_RELATIONSHIP, GENERATE_HDL, GENERATE_SYNTHESIS_SCRIPT, DesignFlowStep::INVALIDATION_RELATIONSHIP, DesignFlowStep::parameters, DesignFlowStep::PRECEDENCE_RELATIONSHIP, THROW_UNREACHABLE, TOP_FUNCTION, and WHOLE_APPLICATION.
|
overridevirtual |
Execute the step.
get the used resources from the wrapper
get the timing information after the synthesis
get the timing information after the synthesis
get the used resources from the wrapper
get the timing information after the synthesis
get the used resources from the wrapper
Implements DesignFlowStep.
Definition at line 115 of file synthesis_evaluation.cpp.
References area_info::get_area_value(), time_info::get_execution_time(), area_info::get_resource_value(), HLS_step::HLSMgr, DesignFlowStep::parameters, STR, SUCCESS, and THROW_UNREACHABLE.