Lines Matching full:cluster
45 struct Cluster {
46 Cluster(int sec, size_t s) : next(sec), prev(sec), size(s) {}
67 /// * Cluster
69 /// beginning of the algorithm each input section has its own cluster and
70 /// the weight of the cluster is the sum of the weight of all incoming
77 /// * The weight of the cluster divided by the size of the cluster. This is a
78 /// proxy for the amount of execution time spent per byte of the cluster.
84 /// * Find its most likely predecessor cluster
85 /// * Check if the combined cluster would be too large, or would have too low
96 std::vector<Cluster> clusters;
100 // Maximum amount the combined cluster density can be worse than the original
101 // cluster to consider merging.
104 // Maximum cluster size in bytes.
136 // output. This messes with the cluster size and density calculations. We
151 Cluster &toC = clusters[to];
157 for (Cluster &c : clusters)
162 static bool isNewDensityBad(Cluster &a, Cluster &b) {
167 // Find the leader of V's belonged cluster (represented as an equivalence
178 static void mergeClusters(std::vector<Cluster> &cs, Cluster &into, int intoIdx,
179 Cluster &from, int fromIdx) {
204 // The cluster index is the same as the index of its leader here because
205 // clusters[L] has not been merged into another cluster yet.
206 Cluster &c = clusters[l];
216 Cluster *predC = &clusters[predL];