Class CandidateProjectionService

Class Documentation

class CandidateProjectionService

候选解投影与裁剪服务,处理 V-Cycle 回退过程中的解映射。

Public Static Functions

static void remapForTopology(RefinementConfig &config, const graph &level_graph, vector<vector<int>> &candidate_parts, vector<vector<VectorXi>> &candidate_resources, vector<vector<int>> &cut_weights)

根据 FPGA 拓扑对候选解进行重映射,优化跨板连线分配。

static void trimInitialCandidates(const RefinementConfig &config, bool has_timing, CandidateBuffers &buffers)

将候选解集裁剪到 num_best_initial_solutions 规模。

static LevelWorkset buildLevelWorkset(const RefinementConfig &config, const RefinementSession &session, const MultilevelCoarsener &mc, int level, int best_solution_id, const CandidateBuffers &buffers, HSFullTiming::HSPartitionFlow &pFlow)

核心投影操作:将粗图上的候选解投影到当前细图层,构造 LevelWorkset。

static void keepOnlyBestIfNeeded(int COCP_flag, int best_solution_id, vector<vector<int>> &candidate_parts, vector<vector<VectorXi>> &candidate_resources)

COCP 流程中,仅保留指定最优解,丢弃其余候选。