File clique_cache.hpp¶
-
namespace busclique
Variables
-
const vector<vector<size_t>> empty_emb¶
-
template<typename topo_spec>
class clique_cache - #include <clique_cache.hpp>
Public Functions
-
clique_cache(const clique_cache&) = delete¶
-
clique_cache(clique_cache&&) = delete¶
-
inline clique_cache(const cell_cache<topo_spec> &c, const bundle_cache<topo_spec> &b, size_t w)¶
-
template<typename C>
inline clique_cache(const cell_cache<topo_spec> &c, const bundle_cache<topo_spec> &b, size_t w, C &check)¶
-
inline ~clique_cache()¶
-
inline void print()¶
-
inline bool extract_solution(vector<vector<size_t>> &emb) const¶
Private Functions
-
inline size_t memrows(size_t i) const¶
-
inline size_t memcols(size_t i) const¶
-
inline size_t memsize(size_t i) const¶
-
inline size_t memsize() const¶
-
template<typename T, typename C, typename ...Corners>
inline void extend_cache(const T &prev, size_y h, size_x w, C &check, Corners... corners)¶
-
template<typename T, typename C, typename ...Corners>
inline void extend_cache(const T &prev, maxcache &next, size_y y0, size_y y1, size_x x0, size_x x1, C &check, corner c, Corners... corners)¶
Private Members
-
const cell_cache<topo_spec> &cells¶
-
const bundle_cache<topo_spec> &bundles¶
-
const size_t width¶
-
size_t *mem¶
Private Static Functions
Friends
- friend class clique_iterator< topo_spec >
-
clique_cache(const clique_cache&) = delete¶
-
template<typename topo_spec>
class clique_iterator - #include <clique_cache.hpp>
Public Functions
-
inline clique_iterator(const cell_cache<topo_spec> &c, const clique_cache<topo_spec> &q)¶
-
inline bool next(vector<vector<size_t>> &e)¶
-
inline clique_iterator(const cell_cache<topo_spec> &c, const clique_cache<topo_spec> &q)¶
-
template<typename topo_spec>
class clique_yield_cache - #include <clique_cache.hpp>
Public Functions
-
inline clique_yield_cache(const cell_cache<topo_spec> &cells)¶
-
inline const vector<vector<vector<size_t>>> &embeddings()¶
Public Static Functions
-
static inline void get_length_range(const pegasus_spec &topo, size_t width, size_t &min_length, size_t &max_length)¶
Private Functions
-
inline size_t compute_length_bound(const zephyr_spec &topo)¶
-
inline size_t compute_length_bound(const pegasus_spec &topo)¶
-
inline size_t compute_length_bound(const chimera_spec &topo)¶
-
inline size_t emb_max_length(const vector<vector<size_t>> &emb) const¶
-
inline void process_cliques(const clique_cache<topo_spec> &cliques)¶
-
inline void compute_cache_width_1(const cell_cache<topo_spec> &cells, const bundle_cache<topo_spec> &bundles)¶
-
inline void compute_cache_width_gt_1(const cell_cache<pegasus_spec> &cells, const bundle_cache<pegasus_spec> &bundles)¶
-
inline void compute_cache_width_gt_1(const cell_cache<chimera_spec> &cells, const bundle_cache<chimera_spec> &bundles)¶
-
inline void compute_cache_width_gt_1(const cell_cache<zephyr_spec> &cells, const bundle_cache<zephyr_spec> &bundles)¶
-
inline void compute_cache(const cell_cache<zephyr_spec> &cells)¶
-
inline void compute_cache(const cell_cache<chimera_spec> &cells)¶
-
inline void compute_cache(const cell_cache<pegasus_spec> &cells)¶
-
inline clique_yield_cache(const cell_cache<topo_spec> &cells)¶
-
class maxcache
- #include <clique_cache.hpp>
Public Functions
-
inline maxcache(size_t r, size_t c, size_t *m)¶
Private Members
-
size_t *mem¶
-
inline maxcache(size_t r, size_t c, size_t *m)¶
-
class zerocache
- #include <clique_cache.hpp>
-
const vector<vector<size_t>> empty_emb¶