title: Pygmo 2: control of memory allocation
body: <p>I'm happily running Pygmo2 to solve a 18-parameters problem using self-adapting differential evolution.</p>
  
  <p>Everything runs fine but at an high cost: Pygmo hugely overallocates memory, requesting about 170G while actually using about 10G.<br>
  I'm running on a shered cluster with a total of 500G, so I can't run multiple instances at the same time without affecting the server performance for other users. As it takes 2-3 hours to complete one run this is somewhat limiting for exploratory analysis and objective function optimization.</p>
  
  <p>I looked at the documentation, other SO questions, git threads, but I've to say I didn't find much about memory usage.
  So, my questions are:</p>
  
  <ul>
  <li>Is this memory-greedy behaviour normal for problems with multiple parameters? Or is something due to how the objective function is coded? (I'd post the code, but is a 600-line piece of code describing a thermodynamic biochemical equilibrium, if not necessary I would not clog the post)</li>
  <li>If this overallocation is normal, what function does it have?</li>
  <li>Is there a way to limit the memory pygmo allocates?</li>
  <li>Tips/tricks/experiences/suggestions?</li>
  </ul>
  
  <p>Few details about the setting:<br>
  pygmo 2.8<br>
  18-parameter problem<br>
  archipelago with 4 islands<br>
  population of 40 parents (interesting statement about lack of performance increase exploding the number of parents regardless of the number of parameters here <a href="http://www1.icsi.berkeley.edu/~storn/code.html" rel="nofollow noreferrer">http://www1.icsi.berkeley.edu/~storn/code.html</a>)</p>
  
  <p>Thanks!</p>