diff --git a/Source/Headers/inmost_partitioner.h b/Source/Headers/inmost_partitioner.h index c51438269510bd5b4e84b14f3062963b5e8a34cb..85161f86aeee11aa45afb188caedafb9427d9053 100644 --- a/Source/Headers/inmost_partitioner.h +++ b/Source/Headers/inmost_partitioner.h @@ -29,7 +29,8 @@ namespace INMOST Zoltan_RIB, ///< Zoltan geometry-based method using Recursive Inertial Bisection. Zoltan_HSFC, ///< Zoltan geometry-based method using Hilbert Space-Filling Curve partitioning. Parmetis, ///< Parmetis partitioner with the original interface. - Inner_RCM ///< Internal serial only partitioner based on the Reverse Cuthillâ€“McKee algorithm ordering. + INNER_RCM, ///< Internal serial only partitioner based on the Reverse Cuthillâ€“McKee algorithm ordering. + INNER_KMEANS ///< Internal parallel paritioner based on K-means clustering. }; enum Action { diff --git a/Source/Partitioner/partitioner.cpp b/Source/Partitioner/partitioner.cpp index b36005c586e90fd25ef7117576ee06c8ccac8255..f94e8ab72beab76cf640a72488fe9687a421ffcc 100644 --- a/Source/Partitioner/partitioner.cpp +++ b/Source/Partitioner/partitioner.cpp @@ -256,7 +256,7 @@ namespace INMOST int package = 0; switch(pt) { - case Inner_RCM: + case INNER_RCM: package = 0; break; case Zoltan_Parmetis: @@ -270,6 +270,9 @@ namespace INMOST case Parmetis: package = 2; break; + case INNER_KMEANS: + package = 3; + break; } if( package == 0 ) { @@ -1259,6 +1262,10 @@ namespace INMOST } #endif + } + if( package == 3 ) //KMEANS + { + } EXIT_FUNC(); } @@ -1270,7 +1277,7 @@ namespace INMOST int package = 0; switch(pt) { - case Inner_RCM: + case INNER_RCM: package = 0; break; case Zoltan_Parmetis: @@ -1284,6 +1291,9 @@ namespace INMOST case Parmetis: package = 2; break; + case INNER_KMEANS: + package = 3; + break; } if( package == 1 ) { @@ -1378,7 +1388,7 @@ namespace INMOST int package = 0; switch(pt) { - case Inner_RCM: + case INNER_RCM: package = 0; break; case Zoltan_Parmetis: @@ -1392,6 +1402,9 @@ namespace INMOST case Parmetis: package = 2; break; + case INNER_KMEANS: + package = 3; + break; } if( package == 1 ) { @@ -1434,7 +1447,7 @@ namespace INMOST int package = 0; switch(pt) { - case Inner_RCM: + case INNER_RCM: package = 0; break; case Zoltan_Parmetis: @@ -1448,6 +1461,9 @@ namespace INMOST case Parmetis: package = 2; break; + case INNER_KMEANS: + package = 3; + break; } if( package == 1 ) {