title: Celery parallel distributed task with multiprocessing
body: <p>I have a CPU intensive Celery task. I would like to use all the processing power (cores) across lots of EC2 instances to get this job done faster <strong>(a celery parallel distributed task with multiprocessing - <em>I think</em>)</strong>.</p>
  
  <p>The terms, <strong>threading</strong>, <strong>multiprocessing</strong>, <strong>distributed computing</strong>, <strong>distributed parallel processing</strong> are all terms I'm trying to understand better.</p>
  
  <p><strong>Example task:</strong></p>
  
  <pre><code>  @app.task
    for item in list_of_millions_of_ids:
        id = item # do some long complicated equation here very CPU heavy!!!!!!! 
        database.objects(newid=id).save()
  </code></pre>
  
  <p>Using the code above <strong><em>(with an example if possible)</em></strong> how one would ago about distributed this task using Celery by allowing this one task to be split up utilising all the computing CPU power across all available machine in the cloud?</p>