diff --git a/src/core/Atoms.cpp b/src/core/Atoms.cpp
index 4f633a233f36aec4d803162d03a656915370607d..ee0b18698da39cfb8a4abacdb450d0951f8385ee 100644
--- a/src/core/Atoms.cpp
+++ b/src/core/Atoms.cpp
@@ -336,6 +336,11 @@ void Atoms::setAtomsNlocal(int n){
   gatindex.resize(n);
   if(dd){
     dd.g2l.resize(natoms,-1);
+// Since these vectors are sent with MPI by using e.g.
+// &dd.positionsToBeSent[0]
+// we make sure they are non-zero-sized so as to
+// avoid errors when doing boundary check
+    if(n==0) n++;
     dd.positionsToBeSent.resize(n*5,0.0);
     dd.positionsToBeReceived.resize(natoms*5,0.0);
     dd.indexToBeSent.resize(n,0);
diff --git a/user-doc/Performances.txt b/user-doc/Performances.txt
index 5a7e40648fe1ca30356af3620d7e22b7e89ea7a4..856bfac625d88c0c78691c401b667311e29ee190 100644
--- a/user-doc/Performances.txt
+++ b/user-doc/Performances.txt
@@ -30,7 +30,7 @@ help in taking the most by using PLUMED for your simulations.
 - \subpage Neighbour 
 - \subpage Openmp
 - \subpage Secondary
-
+- \subpage Time
 
 \page GMXGPU GROMACS and PLUMED with GPU
 
@@ -210,6 +210,15 @@ The metric used to calculate the distance from ideal secondary structure element
 the performances, try to use TYPE=OPTIMAL or TYPE=OPTIMAL-FAST instead of TYPE=DRMSD.
 
 At last, try to reduce the number of residues in the calculation.
- 
+
+\page Time Time your Input
+
+Once you have prepared your plumed input file you can run a test simulation, or use driver, 
+to see which collective variable, function, bias or analysis is consuming more time and can 
+thus be the target for a different definition (use less atoms, change relevant parameters,
+or just use somenthing else)
+
+To have an accurate timing of your input you can use the \ref DEBUG DETAILED_TIMERS.
+  
 
 */