CkPttn 1.2.4
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | List of all members
MidLvlKWayPartMgr Class Reference

Mid-Level K-Way Partition Manager. More...

#include <MidLvlKWayPartMgr.hpp>

Public Member Functions

 MidLvlKWayPartMgr (double bal_tol, std::uint8_t num_parts)
 Constructs a new MidLvlKWayPartMgr object.
 
void optimize (std::span< std::uint8_t > part, const SimpleNetlist &hyprgraph)
 Optimizes the partition using exhaustive mid-level k-way search.
 

Public Attributes

int total_cost {}
 Total cost of the current partitioning solution.
 

Detailed Description

Mid-Level K-Way Partition Manager.

The MidLvlKWayPartMgr class performs mid-level exhaustive partitioning for small hypergraphs with arbitrary number of partitions (k-way). It iterates over partition pairs and uses the middle-levels Gray code algorithm to find optimal partitioning for small instances.

Constructor & Destructor Documentation

◆ MidLvlKWayPartMgr()

MidLvlKWayPartMgr::MidLvlKWayPartMgr ( double  bal_tol,
std::uint8_t  num_parts 
)

Constructs a new MidLvlKWayPartMgr object.

Parameters
[in]bal_tolThe balance tolerance for the partitioning
[in]num_partsThe number of partitions to create

Member Function Documentation

◆ optimize()

void MidLvlKWayPartMgr::optimize ( std::span< std::uint8_t >  part,
const SimpleNetlist hyprgraph 
)

Optimizes the partition using exhaustive mid-level k-way search.

Parameters
[in,out]partThe partition vector to optimize
[in]hyprgraphThe hypergraph to partition

Member Data Documentation

◆ total_cost

int MidLvlKWayPartMgr::total_cost {}

Total cost of the current partitioning solution.


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