@@ -283,7 +283,7 @@ inline W leidenLowmemDeltaModularityMajority(const G& x, K u, K d, K c, const ve
283
283
* @param fa is vertex allowed to be updated?
284
284
* @returns iterations performed (0 if converged already)
285
285
*/
286
- template <bool REFINE=false , bool MULTI=false , class G , class K , class V , class W , class B , size_t SLOTS, class FC , class FA >
286
+ template <bool REFINE=false , bool MULTI=true , class G , class K , class V , class W , class B , size_t SLOTS, class FC , class FA >
287
287
inline int leidenLowmemMoveOmpW (vector<K>& vcom, vector<W>& ctot, vector<B>& vaff, vector<array<K, SLOTS>*>& mcs, vector<array<V, SLOTS>*>& mws, const G& x, const vector<K>& vcob, const vector<W>& vtot, double M, double R, int L, FC fc, FA fa) {
288
288
size_t S = x.span ();
289
289
int l = 0 ;
@@ -342,7 +342,7 @@ inline int leidenLowmemMoveOmpW(vector<K>& vcom, vector<W>& ctot, vector<B>& vaf
342
342
* @param fc has local moving phase converged?
343
343
* @returns iterations performed (0 if converged already)
344
344
*/
345
- template <bool REFINE=false , bool MULTI=false , class G , class K , class V , class W , class B , size_t SLOTS, class FC >
345
+ template <bool REFINE=false , bool MULTI=true , class G , class K , class V , class W , class B , size_t SLOTS, class FC >
346
346
inline int leidenLowmemMoveOmpW (vector<K>& vcom, vector<W>& ctot, vector<B>& vaff, vector<array<K, SLOTS>*>& mcs, vector<array<V, SLOTS>*>& mws, const G& x, const vector<K>& vcob, const vector<W>& vtot, double M, double R, int L, FC fc) {
347
347
auto fa = [](auto u) { return true ; };
348
348
return leidenLowmemMoveOmpW<REFINE, MULTI>(vcom, ctot, vaff, mcs, mws, x, vcob, vtot, M, R, L, fc, fa);
@@ -425,7 +425,7 @@ inline void leidenLowmemAggregateOmpW(vector<size_t>& yoff, vector<K>& ydeg, vec
425
425
* @param fa is vertex allowed to be updated? (u)
426
426
* @returns leiden result
427
427
*/
428
- template <bool MULTI=false , size_t SLOTS=4 , class G , class FI , class FM , class FA >
428
+ template <bool MULTI=true , size_t SLOTS=64 , class G , class FI , class FM , class FA >
429
429
inline auto leidenLowmemInvokeOmp (const G& x, const LeidenOptions& o, FI fi, FM fm, FA fa) {
430
430
using K = typename G::key_type;
431
431
using V = typename G::edge_value_type;
@@ -554,7 +554,7 @@ inline auto leidenLowmemInvokeOmp(const G& x, const LeidenOptions& o, FI fi, FM
554
554
* @param o leiden options
555
555
* @returns leiden result
556
556
*/
557
- template <bool MULTI=false , size_t SLOTS=4 , class G >
557
+ template <bool MULTI=true , size_t SLOTS=64 , class G >
558
558
inline auto leidenLowmemStaticOmp (const G& x, const LeidenOptions& o={}) {
559
559
using B = char ;
560
560
using W = LEIDEN_WEIGHT_TYPE;
0 commit comments