diff --git a/Tests/testFmbAlgorithm.cpp b/Tests/testFmbAlgorithm.cpp
index db3f3c3fae10dba68d900509b57c59471c9be733..d1ebf756ef3768fc03c0dbc3c0d2fc9d1513a8d2 100644
--- a/Tests/testFmbAlgorithm.cpp
+++ b/Tests/testFmbAlgorithm.cpp
@@ -114,7 +114,7 @@ int main(int argc, char ** argv){
     FFmbKernels<FmbParticle, FmbCell, FVector> kernels(NbLevels,loader.getBoxWidth());
     //FBasicKernels<FmbParticle, FmbCell, FVector> kernels;
     //FFmmAlgorithm FFmmAlgorithmThread FFmmAlgorithmThreadUs
-    FFmmAlgorithm<FFmbKernels, FmbParticle, FmbCell, FVector, FSimpleLeaf> algo(&tree,&kernels);
+    FFmmAlgorithmThread<FFmbKernels, FmbParticle, FmbCell, FVector, FSimpleLeaf> algo(&tree,&kernels);
     algo.execute();
 
     counter.tac();
diff --git a/Tests/testFmbBlasAlgorithm.cpp b/Tests/testFmbBlasAlgorithm.cpp
index b93cd21078e7f399093c5b45423a8a5a3cedc632..1468fc43cd942a57cdd4a9576db460be4bd528f8 100644
--- a/Tests/testFmbBlasAlgorithm.cpp
+++ b/Tests/testFmbBlasAlgorithm.cpp
@@ -6,6 +6,7 @@
 #include <stdlib.h>
 
 #include "../Src/Utils/FTic.hpp"
+#include "../Src/Utils/FParameters.hpp"
 
 #include "../Src/Containers/FOctree.hpp"
 #include "../Src/Containers/FVector.hpp"
@@ -62,8 +63,8 @@ int main(int argc, char ** argv){
     std::cout << ">> This executable has to be used to test fmb algorithm.\n";
     //////////////////////////////////////////////////////////////
 
-    const int NbLevels = 9;//10;
-    const int SizeSubLevels = 3;//3
+    const int NbLevels = FParameters::getValue(argc,argv,"-h", 9);
+    const int SizeSubLevels = FParameters::getValue(argc,argv,"-sh", 3);
     FTic counter;
     const char* const defaultFilename = "testLoaderFMA.fma"; //../../Data/ "testLoaderFMA.fma" "testFMAlgorithm.fma" Sphere.fma
     const char* filename;
@@ -92,6 +93,7 @@ int main(int argc, char ** argv){
     // -----------------------------------------------------
 
     std::cout << "Creating & Inserting " << loader.getNumberOfParticles() << " particles ..." << std::endl;
+    std::cout << "\tHeight : " << NbLevels << " \t sub-height : " << SizeSubLevels << std::endl;
     counter.tic();
 
     {
diff --git a/Tests/testFmbTsmAlgorithm.cpp b/Tests/testFmbTsmAlgorithm.cpp
index 8a13b6aa0b6a7295dbe403342fe0d3c4590e4bc5..3cf9bff5ac5156b13a340de72a4261a56eb71da6 100644
--- a/Tests/testFmbTsmAlgorithm.cpp
+++ b/Tests/testFmbTsmAlgorithm.cpp
@@ -8,6 +8,7 @@
 #include "../Src/Utils/FTic.hpp"
 
 #include "../Src/Containers/FOctree.hpp"
+#include "../Src/Utils/FParameters.hpp"
 #include "../Src/Containers/FVector.hpp"
 
 #include "../Src/Components/FFmaParticle.hpp"
@@ -60,8 +61,8 @@ int main(int argc, char ** argv){
     std::cout << ">> This executable has to be used to test Fmb on a Tsm system.\n";
     //////////////////////////////////////////////////////////////
 
-    const int NbLevels = 9;//10;
-    const int SizeSubLevels = 3;//3
+    const int NbLevels = FParameters::getValue(argc,argv,"-h", 9);
+    const int SizeSubLevels = FParameters::getValue(argc,argv,"-sh", 3);
     FTic counter;
     const char* const defaultFilename = "testLoaderFMA.tor.fma"; //../../Data/ "testLoaderFMA.fma" "testFMAlgorithm.fma" Sphere.fma
     const char* filename;
@@ -90,6 +91,7 @@ int main(int argc, char ** argv){
     // -----------------------------------------------------
 
     std::cout << "Creating & Inserting " << loader.getNumberOfParticles() << " particles ..." << std::endl;
+    std::cout << "\tHeight : " << NbLevels << " \t sub-height : " << SizeSubLevels << std::endl;
     counter.tic();
 
     {
diff --git a/Tests/testFmbTsmNoTsm.cpp b/Tests/testFmbTsmNoTsm.cpp
index 8a012462e38e3daf6d8b698ed5b8c49c559ab5cb..78d51351b5fd5dec80a4dca4a7308278c2ae4b0a 100644
--- a/Tests/testFmbTsmNoTsm.cpp
+++ b/Tests/testFmbTsmNoTsm.cpp
@@ -9,6 +9,7 @@
 
 #include "../Src/Containers/FOctree.hpp"
 #include "../Src/Containers/FVector.hpp"
+#include "../Src/Utils/FParameters.hpp"
 
 #include "../Src/Components/FFmaParticle.hpp"
 #include "../Src/Extensions/FExtendForces.hpp"
@@ -71,8 +72,8 @@ int main(int argc, char ** argv){
     std::cout << ">> It compares the results between Tms and no Tms (except P2P & L2P).\n";
     //////////////////////////////////////////////////////////////
 
-    const int NbLevels = 9;//10;
-    const int SizeSubLevels = 3;//3
+    const int NbLevels = FParameters::getValue(argc,argv,"-h", 9);
+    const int SizeSubLevels = FParameters::getValue(argc,argv,"-sh", 3);
     FTic counter;
     const long NbPart = 200000;//2000000
     const double BoxWidth = 1.0;
diff --git a/Tests/testFmmAlgorithm.cpp b/Tests/testFmmAlgorithm.cpp
index f1d7ae149bdb29ccda6c9254605d9fdc27e1fb8c..bd0d97b54722cc069af8c73f37ee3f938a129eb6 100644
--- a/Tests/testFmmAlgorithm.cpp
+++ b/Tests/testFmmAlgorithm.cpp
@@ -5,6 +5,7 @@
 #include <stdio.h>
 #include <stdlib.h>
 
+#include "../Src/Utils/FParameters.hpp"
 #include "../Src/Utils/FTic.hpp"
 
 #include "../Src/Containers/FOctree.hpp"
@@ -38,8 +39,8 @@ int main(int argc, char ** argv){
     std::cout << ">> This executable has to be used to test the FMM algorithm.\n";
     //////////////////////////////////////////////////////////////
 
-    const int NbLevels = 6;//10;
-    const int SizeSubLevels = 3;//3
+    const int NbLevels = FParameters::getValue(argc,argv,"-h", 9);
+    const int SizeSubLevels = FParameters::getValue(argc,argv,"-sh", 3);
     const long NbPart = 2000000;//2000000
 
     FTic counter;
@@ -55,6 +56,7 @@ int main(int argc, char ** argv){
     //////////////////////////////////////////////////////////////////////////////////
 
     std::cout << "Creating & Inserting " << NbPart << " particles ..." << std::endl;
+    std::cout << "\tHeight : " << NbLevels << " \t sub-height : " << SizeSubLevels << std::endl;
     counter.tic();
 
     {
diff --git a/Tests/testFmmAlgorithmProc.cpp b/Tests/testFmmAlgorithmProc.cpp
index 4fe3637d217385bea259bb56ec794908a8347879..eeb44bb5845f4273ab5811aa3b38355d06c36d1c 100644
--- a/Tests/testFmmAlgorithmProc.cpp
+++ b/Tests/testFmmAlgorithmProc.cpp
@@ -6,6 +6,7 @@
 
 #include "../Src/Containers/FOctree.hpp"
 #include "../Src/Containers/FVector.hpp"
+#include "../Src/Utils/FParameters.hpp"
 
 #include "../Src/Components/FSimpleLeaf.hpp"
 
@@ -222,8 +223,8 @@ int main(int argc, char ** argv){
 
     FMpi app( argc, argv);
 
-    const int NbLevels = 10;//10;
-    const int SizeSubLevels = 3;//3
+    const int NbLevels = FParameters::getValue(argc,argv,"-h", 9);
+    const int SizeSubLevels = FParameters::getValue(argc,argv,"-sh", 3);
     const char* const defaultFilename = "testLoaderFMA.fma"; //../../Data/ "testLoaderFMA.fma" "testFMAlgorithm.fma" Sphere.fma
     const char* filename;
     FTic counter;
diff --git a/Tests/testFmmAlgorithmTsm.cpp b/Tests/testFmmAlgorithmTsm.cpp
index 1a32e6ef072ca88a259bb6f5edb0e0c8a0a4fb5f..9bed3728898e75dd77f485b2ec68430674c8338f 100644
--- a/Tests/testFmmAlgorithmTsm.cpp
+++ b/Tests/testFmmAlgorithmTsm.cpp
@@ -9,6 +9,7 @@
 
 #include "../Src/Containers/FOctree.hpp"
 #include "../Src/Containers/FVector.hpp"
+#include "../Src/Utils/FParameters.hpp"
 
 #include "../Src/Components/FTypedLeaf.hpp"
 
@@ -44,8 +45,8 @@ int main(int argc, char ** argv){
     std::cout << ">> This executable has to be used to test the FMM algorithm.\n";
     //////////////////////////////////////////////////////////////
 
-    const int NbLevels = 10;//10;
-    const int SizeSubLevels = 3;//3
+    const int NbLevels = FParameters::getValue(argc,argv,"-h", 9);
+    const int SizeSubLevels = FParameters::getValue(argc,argv,"-sh", 3);
     const long NbPart = 2000000;//2000000
     FTic counter;
 
diff --git a/Tests/testLoaderFMA.cpp b/Tests/testLoaderFMA.cpp
index c56c6c3532fd4a67483319a13fcee79b9d2fbe3a..f5ac4f1c0083c7e92c5bbdbdb4b7fa5fd2f7bf7b 100644
--- a/Tests/testLoaderFMA.cpp
+++ b/Tests/testLoaderFMA.cpp
@@ -6,6 +6,7 @@
 #include <stdlib.h>
 #include <time.h>
 
+#include "../Src/Utils/FParameters.hpp"
 #include "../Src/Utils/FTic.hpp"
 
 #include "../Src/Containers/FOctree.hpp"
diff --git a/Tests/testStatsTree.cpp b/Tests/testStatsTree.cpp
index f6fe3d700b1200a8268172d521e1c619c173d79b..f4f101e67dafcd553b4f9967e3de40dc2aa3d3a2 100644
--- a/Tests/testStatsTree.cpp
+++ b/Tests/testStatsTree.cpp
@@ -6,6 +6,7 @@
 #include <stdlib.h>
 
 #include "../Src/Utils/FTic.hpp"
+#include "../Src/Utils/FParameters.hpp"
 
 #include "../Src/Containers/FOctree.hpp"
 #include "../Src/Containers/FVector.hpp"
@@ -45,8 +46,8 @@ int main(int argc, char ** argv){
     std::cout << ">> This executable has to be used to show some stat about the tree.\n";
     //////////////////////////////////////////////////////////////
 
-    const int NbLevels = 7;//10;
-    const int SizeSubLevels = 3;//3
+    const int NbLevels = FParameters::getValue(argc,argv,"-h", 9);
+    const int SizeSubLevels = FParameters::getValue(argc,argv,"-sh", 3);
     FTic counter;
     const char* const defaultFilename = "testLoaderFMA.fma"; //../../Data/ "testLoaderFMA.fma" "testFMAlgorithm.fma" Sphere.fma
     const char* filename;
@@ -75,6 +76,7 @@ int main(int argc, char ** argv){
     // -----------------------------------------------------
 
     std::cout << "Creating and Inserting " << loader.getNumberOfParticles() << " particles ..." << std::endl;
+    std::cout << "\tHeight : " << NbLevels << " \t sub-height : " << SizeSubLevels << std::endl;
     counter.tic();